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.service.AddressService;
import com.demo.struts2.common.PageAction;
import com.demo.struts2.util.Constants;
import com.demo.hibernate.util.Pager;
import com.demo.struts2.util.RegExpression;
public class AddressAction extends PageAction {
private static final long serialVersionUID = 1L;
private AddressService addressService;
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.getAddressService().list(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.getAddressService().list(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.getAddressService().select(Integer.valueOf(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();
// 插入数据表
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());
Integer nid = this.getAddressService().insert(address);
// 取得缓存的分页参数
Pager pagerSession = (Pager) getSession(Constants.PAGER_ADDRESS);
super.pageSize = pagerSession.getPageSize();
super.pageNo = pagerSession.getPageNo();
// 查询当前页的数据
super.pager = this.getAddressService().list(super
.getLoginUsername(), super.pageSize, super.pageNo);
if (nid != null) {
// 保存成功信息
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.getAddressService().update(address);
// 给表单字段赋值
bean2Form(address);
// 取得缓存的分页参数
Pager pagerSession = (Pager) getSession(Constants.PAGER_ADDRESS);
super.pageSize = pagerSession.getPageSize();
super.pageNo = pagerSession.getPageNo();
// 查询当前页的数据
super.pager = this.getAddressService().list(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.getAddressService().delete(Integer.valueOf(id));
saveActionMessage("address.message.delete.success");
}
// 取得当前页的数据
super.pager = this.getAddressService().list(super
.getLoginUsername(), super.pageSize, super.pageNo);
return Constants.LIST_KEY;
}
public AddressService getAddressService() {
return addressService;
}
public void setAddressService(AddressService addressService) {
this.addressService = addressService;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getCompany() {
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
spring + struts + hibernate sample spring + struts + hibernate sample spring + struts + hibernate sample spring + struts + hibernate sample
资源推荐
资源详情
资源评论
收起资源包目录
spring + struts + hibernate sample (257个子文件)
transfer.bat 104B
transfer.bat 104B
AddressAction.class 7KB
WorklogAction.class 7KB
ScheduleAction.class 6KB
MeetingAction.class 6KB
NoticeAction.class 5KB
SmsAction.class 5KB
ScheduleDAOImpl.class 5KB
WorklogDAOImpl.class 5KB
AddressDAOImpl.class 5KB
SmsDAOImpl.class 5KB
MeetingDAOImpl.class 4KB
NoticeDAOImpl.class 4KB
Pager.class 4KB
RegisterAction.class 3KB
AddressServiceTest.class 3KB
WorklogServiceTest.class 3KB
Address.class 3KB
MeetingServiceTest.class 3KB
ScheduleServiceTest.class 3KB
SmsServiceTest.class 3KB
NoticeServiceTest.class 3KB
Worklog.class 3KB
Meeting.class 3KB
Sms.class 2KB
Schedule.class 2KB
LoginAction.class 2KB
Notice.class 2KB
UserDAOImpl.class 2KB
BaseAction.class 2KB
HibernateSessionFactory.class 2KB
User.class 2KB
SmsServiceImpl.class 2KB
UserServiceTest.class 2KB
UserServiceImpl.class 2KB
ScheduleServiceImpl.class 2KB
WorklogServiceImpl.class 2KB
AddressServiceImpl.class 2KB
MeetingServiceImpl.class 2KB
NoticeServiceImpl.class 2KB
AuthorizationInterceptor.class 1KB
AllTest.class 1KB
UserServiceTest.class 1KB
PageAction.class 1KB
LogoutAction.class 1KB
Constants.class 1017B
RegExpression.class 1012B
ScheduleService.class 461B
AddressService.class 456B
WorklogService.class 456B
SmsService.class 451B
MeetingService.class 438B
NoticeService.class 433B
ScheduleDAO.class 424B
WorklogDAO.class 419B
AddressDAO.class 419B
MeetingDAO.class 401B
SmsDAO.class 399B
NoticeDAO.class 396B
UserService.class 304B
UserDAO.class 261B
.classpath 548B
org.eclipse.wst.common.component 436B
styles.css 1KB
fielderror.ftl 1KB
fielderror.ftl 1KB
actionmessage.ftl 168B
actionmessage.ftl 168B
actionerror.ftl 155B
actionerror.ftl 155B
welcome.gif 4KB
spring.jar 2.57MB
struts2-core-2.0.9.jar 2.1MB
hibernate3.jar 1.6MB
jgroups-2.2.7.jar 1.58MB
xerces-2.6.2.jar 987KB
ant-1.6.2.jar 977KB
hibernate2.jar 945KB
freemarker-2.3.8.jar 784KB
jboss-jmx.jar 578KB
jboss-common.jar 570KB
commons-collections-3.1.jar 546KB
mysql-connector-java-5.0.8-bin.jar 528KB
proxool-0.8.3.jar 465KB
xwork-2.0.4.jar 445KB
antlr-2.7.5H3.jar 423KB
c3p0-0.8.5.jar 389KB
jboss-cache.jar 366KB
antlr-2.7.2.jar 350KB
log4j-1.2.12.jar 350KB
cglib-nodep-2.1_2.jar 317KB
dom4j-1.6.jar 306KB
cglib-full-2.0.2.jar 301KB
cglib-2.1.jar 275KB
jaxen-1.1-beta-4.jar 233KB
jboss-system.jar 218KB
sitemesh-2.3.jar 178KB
concurrent-1.3.2.jar 167KB
commons-lang-2.0.jar 166KB
共 257 条
- 1
- 2
- 3
资源评论
- panthiechen2013-05-05不错,可以学习
- huangalf2012-11-20可以,能够运行
- gasi7192013-12-03挺实用的代码,非常适合初学者。
uniquepine
- 粉丝: 21
- 资源: 30
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功