下面只是给出部分效果代码,希望有需要的朋友能一起来架设一个关于Java的敏捷开发框架。
这是采用Struts2.0的Action类
package action;
import bean.Company;
import bean.Department;
import com.util.lang.StringUtil;
@SuppressWarnings("serial")
public class CompanyAction extends BaseAction {
private Company company;
public CompanyAction() {
company = new Company();
}
// 显示公司列表
public String list() {
tag("list");
set("list", company.find_all());
return SUCCESS;
}
public String toadd() {
tag("toadd");
set("list", company.find_all());
return SUCCESS;
}
// 添加公司
public String add() {
tag("add");
if (checkCname() || checkAddress()) {
set("list", company.find_all());
return SUCCESS;
}
company.add();
msg("公司添加成功!");
return list();
}
// 转到修改
public String tomod() {
tag("tomod");
set("list", company.find_all());
if (get("id") != null)
company = (Company) company.find_reone("id=?", get("id"));
return SUCCESS;
}
// 修改公司
public String mod() {
tag("mod");
if (checkCname() || checkAddress()) {
set("list", company.find_all());
return SUCCESS;
}
if (company.getId() == company.getPid()) {
set("list", company.find_all());
msg("不能选择本公司作为上级公司!");
return SUCCESS;
}
company.mod();
msg("公司修改成功!");
return list();
}
// 删除公司
public String del() {
tag("del");
//如果此公司下有部门则不允许删除
if (get("id") != null
&&new Department().find_reone("cid=?",get("id"))!=null) {
msg("此公司下还有部门,不允许删除!");
return list();
}
//删除公司
company.del(get("id"));
msg("公司删除成功!");
return list();
}
public Company getCompany() {
return company;
}
public void setCompany(Company company) {
this.company = company;
}
private boolean checkCname() {
if (StringUtil.isEmpty(company.getCname())) {
msg("请填写公司名称!");
return true;
}
return false;
}
private boolean checkAddress() {
if (StringUtil.isEmpty(company.getAddress())) {
msg("请填写公司地址!");
return true;
}
return false;
}
}
下面给出相应的bean类代码
package bean;
import java.io.Serializable;
import com.abblie.jdbc.anno.Table;
import com.abblie.jdbc.mssql.ActiveRecord;
/**
* 企业模型
*/
@SuppressWarnings("serial")
@Table(name = "company", key = "id")
public class Company extends ActiveRecord implements Serializable {
private int id;// 公司id
private int pid;// 上级公司id
private String cname;// 公司名称
private String address;// 公司地址
private String logo;// 公司logo
private String website;// 公司网站
private String note;// 公司备注
public String getLogo() {
return logo;
}
public String getNote() {
return note;
}
public String getWebsite() {
return website;
}
public void setLogo(String logo) {
this.logo = logo;
}
public void setNote(String note) {
this.note = note;
}
public void setWebsite(String website) {
this.website = website;
}
public String getCname() {
return cname;
}
public int getId() {
return id;
}
public int getPid() {
return pid;
}
public void setCname(String cname) {
this.cname = cname;
}
public void setId(int id) {
this.id = id;
}
public void setPid(int pid) {
this.pid = pid;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
代码测试成功,里面加了一个我们自己设计的数据库连接池。其它代码都可以通过JDBC来写。详细内容要经过测试后才可以放出来给大家共享。