在struts2 in action中所见,这样封装后省去了大部分crud重复代码,虽然还不能理悟,先记下来。abstract class BaseAction extends ActionSupport {
protected DB db;
protected static Log log = LogFactory.getLog(BaseAction.class);
private long requestId;
private boolean readOnly = false;
private String mappedRequest;
@SkipValidation
public String show(){
setReadOnly(true);
setMappedRequest(Constants.LIST);
return SUCCESS;
}
@SkipValidation
public String add(){
setMappedRequest(Constants.SAVE);
return SUCCESS;
}
public String save(){
db.save(getModel());
return list();
}
@SkipValidation
public String edit(){
setMappingRequest(Constants.UPDATE);
return SUCCESS;
}
public String update(){
db.save(getModel());
return list();
}
@SkipValidation
public String destroy(){
setReadOnly(true);
setMappingRequest(Constants.REMOVE);
return Constants.SUCCESS;
}
public String remove(){
db.remove(getModel());
return list();
}
@SkipValidation
public String list(){
setMappingedRequest(Constants.LIST);
return Constants.LIST;
}
public String getActionClass(){
return getClass().getSimpleName();
}
public String getDestination(){
return getClass().getSimpleName();
}
public String getActionMethod(){
return mappedRequest;
}
public void setActionMethod(String method){
this.mappedRequest = method;
}
public void setMappedRequest(String actionMethed){
this.mappedRequest = getActionClass() + "_" + actionMethed;
log.debug("setting mappedRequest to "+ getActionClass() + "_" + actionMethed);
}
public void setReadOnly(boolean readOnly){
this.readOnly = readOnly;
log.debug("setting readOnly to "+readOnly);
}
public long getRequestId(){
return requestId;
}
public void setRequestId(long requestId){
this.requestId = requestId;
}
public void setDb(DB db){
this.db = db;
}
public boolean isReadOnly(){
return readOnly;
}
public abstract Object getModel();
}
public class MemberAction extends BaseAction implements ModelDriven,Preparable {
private Member model;
public Member getModel(){
return model;
}
public void prepare() throws Exception{
if(getRequestId() == 0){
model = new Member();
}else{
model = (Member) db.get(getRequestId);
}
}
}
分享到:
相关推荐
Struts2-Crud+JdbcDemo最简单的Struts2+jdbc学习曾删改查程序,适合初学Struts2的朋友们
在Struts 2中实现CRUD.pdf
Java Struts2 实现CRUD,供大家一起共同分享学习。
CRUD是Create(创建)、Read(读取)、Update(更新)和Delete... 本文旨在讲述Struts 2上的CRUD开发,所以为了例子的简单易懂,我不会花时间在数据库的操作上。取而代之的是一个模拟数据库的哈希表(Hash Map)。
结合hibernate和struts2写的crud小demo
struts的crud sample demo(struts-crud.war) 可以直接解压查看代码,或者放到工程中运行
Spring4-Struts2-Hibernate4 CRUD Demo
struts2CRUD
Struts2整合Spring Hibernate的CRUD实例Struts2整合Spring Hibernate的CRUD实例
Struts2实现CRUD(增 删 改 查) Maven版; eclipse直接导入使用; 教程地址:http://blog.csdn.net/sky_zhangfan/article/details/1896842
struts标签库,中英文版,数据添删改查,验证等功能,自己写的.
利用Struts2相关技术实现了数据表的创建、读取、数据表内容的更新和删除。
基于mvc模型 利用struts2 实现对单表的CRUD操作
用ExtJS 实现动态载入树(Load tree) Hibernate+Spring+Struts2+ExtJS开发CRUD功能
Spring4 Struts2 Hibernate4 CRUD Demo
this is a crud struts demo
Spring4-Struts2-Hibernate4 CRUD Demo_2
Struts2的增改删查操作示例,初学者可以看一下哦。
struts2中实现CRUD struts2中的OGNL struts2的新表单标志的使用 struts2与AJAX一 struts2与AJAX二 struts2与AJAX三 struts2中用Spring实现IOC struts2中的零配置与IOC struts2介绍之使用连接标签 struts2入门 struts...