?? addressaction.java
字號:
package com.demo.struts2.actions;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import com.demo.hibernate.beans.Address;
import com.demo.hibernate.dao.AddressDAO;
import com.demo.struts2.common.PageAction;
import com.demo.struts2.util.Constants;
import com.demo.struts2.util.Pager;
import com.demo.struts2.util.RegExpression;
public class AddressAction extends PageAction {
private static final long serialVersionUID = 1L;
private AddressDAO addressDAO;
protected String id = null;
protected String username = null;
protected String name = null;
protected String sex = null;
protected String mobile = null;
protected String email = null;
protected String qq = null;
protected String company = null;
protected String address = null;
protected String postcode = null;
// 新增或修改時執行表單驗證
public void validate() {
// 清除錯誤消息
clearErrorsAndMessages();
// 取得請求參數
String queryString = getRequestPath();
if (queryString.indexOf("addressadd!insert") != -1
|| queryString.indexOf("addressedit!update") != -1) {
// 檢查表單字段name
if (name == null || name.equals("")) {
addFieldError("name", getText("address.error.name"));
}
// 檢查表單字段mobile
if (mobile != null && !mobile.equals("")) {
Pattern p_mobile = Pattern.compile(RegExpression.REG_mobile);
Matcher m_mobile = p_mobile.matcher(mobile);
if (!m_mobile.find()) {
addFieldError("mobile", getText("address.error.mobile"));
}
}
// 檢查表單字段email
if (email != null && !email.equals("")) {
Pattern p_email = Pattern.compile(RegExpression.REG_email);
Matcher m_email = p_email.matcher(email);
if (!m_email.find()) {
addFieldError("email", getText("address.error.email"));
}
}
// 檢查表單字段postcode
if (postcode != null && !postcode.equals("")) {
Pattern p_postcode = Pattern
.compile(RegExpression.REG_postcode);
Matcher m_postcode = p_postcode.matcher(postcode);
if (!m_postcode.find()) {
addFieldError("postcode", getText("address.error.postcode"));
}
}
}
}
// 請求addressInit.do的處理函數
public String init() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// 重設分頁參數
super.pageSize = Constants.pageSize;
super.pageNo = Constants.pageNo;
// 取得當前分頁數據
super.pager = this.getAddressDAO().findPagerByUsername(super
.getLoginUsername(), super.pageSize, super.pageNo);
// 保存分頁數據
setSession(Constants.PAGER_ADDRESS, super.pager);
return Constants.LIST_KEY;
}
// 請求addressList.do的處理函數
public String list() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// 取得當前分頁數據
super.pager = this.getAddressDAO().findPagerByUsername(super
.getLoginUsername(), super.pageSize, super.pageNo);
// 保存分頁數據
setSession(Constants.PAGER_ADDRESS, super.pager);
return Constants.LIST_KEY;
}
// 請求addressAdd.do的處理函數
public String add() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// 重設各表單字段
reset();
return Constants.ADD_KEY;
}
// 重設各表單字段
private void reset() {
setId(null);
setUsername(null);
setName(null);
setSex(null);
setMobile(null);
setEmail(null);
setQq(null);
setCompany(null);
setAddress(null);
setPostcode(null);
}
// 給表單字段賦值
private void bean2Form(Address address) {
setId(address.getId().toString());
setUsername(address.getUsername());
setName(address.getName());
setSex(address.getSex());
setMobile(address.getMobile());
setEmail(address.getEmail());
setQq(address.getQq());
setCompany(address.getCompany());
setAddress(address.getAddress());
setPostcode(address.getPostcode());
}
// 請求addressEdit.do的處理函數
public String edit() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// id為空時返回錯誤
if (this.getId() == null) {
saveActionError("address.message.edit.notexist");
return Constants.LIST_KEY;
} else {
// 查詢數據表
Address address = this.getAddressDAO().findById(id);
// 不存在時返回錯誤
if (address == null) {
saveActionError("address.message.edit.notexist");
return Constants.LIST_KEY;
} else {
// 給表單字段賦值
bean2Form(address);
return Constants.EDIT_KEY;
}
}
}
// 請求addressInsert.do的處理函數
public String insert() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// 判斷姓名是否已經存在
boolean b = this.getAddressDAO().isExist(super.getLoginUsername(), this.getName());
if (!b) {
// 插入數據表
Address address = new Address();
address.setUsername(super.getLoginUsername());
address.setName(this.getName());
address.setSex(this.getSex());
address.setMobile(this.getMobile());
address.setEmail(this.getEmail());
address.setQq(this.getQq());
address.setCompany(this.getCompany());
address.setAddress(this.getAddress());
address.setPostcode(this.getPostcode());
this.getAddressDAO().insert(address);
}
// 取得緩存的分頁參數
Pager pagerSession = (Pager) getSession(Constants.PAGER_ADDRESS);
super.pageSize = pagerSession.getPageSize();
super.pageNo = pagerSession.getPageNo();
// 查詢當前頁的數據
super.pager = this.getAddressDAO().findPagerByUsername(super
.getLoginUsername(), super.pageSize, super.pageNo);
if (!b) {
// 保存成功信息
saveActionMessage("address.message.add.success");
return Constants.LIST_KEY;
} else {
// 保存失敗信息
saveActionError("address.message.add.failed");
return Constants.ADD_KEY;
}
}
// 請求addressUpdate.do的處理函數
public String update() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// 更新數據表
Address address = new Address();
address.setId(new Integer(id));
address.setUsername(super.getLoginUsername());
address.setName(this.getName());
address.setSex(this.getSex());
address.setMobile(this.getMobile());
address.setEmail(this.getEmail());
address.setQq(this.getQq());
address.setCompany(this.getCompany());
address.setAddress(this.getAddress());
address.setPostcode(this.getPostcode());
this.getAddressDAO().update(address);
// 給表單字段賦值
bean2Form(address);
// 取得緩存的分頁參數
Pager pagerSession = (Pager) getSession(Constants.PAGER_ADDRESS);
super.pageSize = pagerSession.getPageSize();
super.pageNo = pagerSession.getPageNo();
// 查詢當前頁的數據
super.pager = this.getAddressDAO().findPagerByUsername(super
.getLoginUsername(), super.pageSize, super.pageNo);
saveActionMessage("address.message.edit.success");
return Constants.LIST_KEY;
}
// 請求addressDelete.do的處理函數
public String delete() throws Exception {
// 清除錯誤消息
clearErrorsAndMessages();
// id為空時返回錯誤
if (this.getId() == null) {
saveActionError("address.message.edit.notexist");
} else {
// 刪除數據
this.getAddressDAO().delete(id);
saveActionMessage("address.message.delete.success");
}
// 取得當前頁的數據
super.pager = this.getAddressDAO().findPagerByUsername(super
.getLoginUsername(), super.pageSize, super.pageNo);
return Constants.LIST_KEY;
}
public AddressDAO getAddressDAO() {
return addressDAO;
}
public void setAddressDAO(AddressDAO addressDAO) {
this.addressDAO = addressDAO;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getCompany() {
return company;
}
public void setCompany(String company) {
this.company = company;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPostcode() {
return postcode;
}
public void setPostcode(String postcode) {
this.postcode = postcode;
}
public String getQq() {
return qq;
}
public void setQq(String qq) {
this.qq = qq;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -