S2SH修改整合修改操作
其实我并不认为这就是级联修改,它只涉及到一个表的改动并未涉及到其他的表,我认为级联操作是涉及到多个表的操作。在这里我勉强地称之为级联修改。
Domain中的方法:
public class Orders implements java.io.Serializable {
/**
* @author DXL_xiaoli
*/
private static final long serialVersionUID = 1L;
//递增序列
private Integer id;
//支付方式
private Payments payments;
//员工
private Employees employees;
//客户
private Customers customers;
//订单编号
private String number;
//订单日期
private Date rdate;
//订单金额
private Double sum;
//送货方式
private String sendmode;
//订单状态
private String status;
//生成set(),get(),public Orders(),public Orders(….)方法
}
当我们点击修改时将其所对应的实体的
id
传到
action
中并通过配置文件找到其所对应的
update()
方法。由于
Orders
表与客户表
Customers
、员工表
Employees
、支付方式表
Payments
都有所关联,在修改定单表需要将这三个有关联表中的字段查询出来,所以定义了查询这三个表的方法
-----emplist(),customerslist(),payModelist()
。
public class OrdersAction extends ActionSupport {
/**
* @author DXL_xiaoli
*/
private static final long serialVersionUID = 1L;
private OrdersServiceImpl ordersServiceImpl;
private Orders entity;
private List<Orders> entities;
private Pagination pagination;
private List<Employees> emplist;
private List<Payments> payModelist;
private List<Customers> customerslist;
//构造器注入
public void setOrdersServiceImpl(OrdersServiceImpl ordersServiceImpl) {
this.ordersServiceImpl = ordersServiceImpl;
}
public String findById() {
entity = ordersServiceImpl.findById(entity.getId());
return "findById";
}
@SuppressWarnings("unchecked")
public String update() {
emplist = ordersServiceImpl.emplist();
customerslist = ordersServiceImpl.customerslist();
payModelist = ordersServiceImpl.payModelist();
entity = ordersServiceImpl.findById(entity.getId());
return "update";
}
public String updateOk() {
ordersServiceImpl.update(entity);
return "updateOk";
}
}
在服务层仍执行update()方法
public class OrdersServiceImpl implements OrdersService{
private OrdersDaoImpl ordersDaoImpl;
public void setOrdersDaoImpl(OrdersDaoImpl ordersDaoImpl) {
this.ordersDaoImpl = ordersDaoImpl;
}
public Orders findById(Integer id) {
return ordersDaoImpl.findById(id);
}
public void update(Orders entity) {
ordersDaoImpl.update(entity);
}
public List customerslist() {
return ordersDaoImpl.customerslist();
}
public List emplist() {
return ordersDaoImpl.emplist();
}
public List payModelist() {
return ordersDaoImpl.payModelist();
}
}
在最底层我们将实现其修改。根据页面传来的
id
将客户表、员工表、支付方式表中的对象获取到,然后将其对象
set
到
Orders
对象中,最后在执行
Orders
表中的
update
方法。
public class OrdersDaoImpl extends HibernateDaoSupport implements OrdersDao {
public Orders findById(Integer id) {
return (Orders) this.getHibernateTemplate().get(Orders.class, id);
}
public void update(Orders entity) {
Customers customers = (Customers) this.getHibernateTemplate().get(
Customers.class, entity.getCustomers().getId());
Employees employees = (Employees) this.getHibernateTemplate().get(
Employees.class, entity.getEmployees().getId());
Payments payments = (Payments) this.getHibernateTemplate().get(
Payments.class, entity.getPayments().getId());
entity.setCustomers(customers);
entity.setEmployees(employees);
entity.setPayments(payments);
this.getHibernateTemplate().update(entity);
}
public List customerslist() {
return this.getHibernateTemplate().find(" from Customers");
}
public List emplist() {
return this.getHibernateTemplate().find(" from Employees");
}
public List payModelist() {
return this.getHibernateTemplate().find(" from Payments");
}
}
以上是整个修改的全过程
(
添加操作与修改操作类似,在此不做详解
)
,若有写的不清楚的地方请留言
……..
分享到:
相关推荐
基于S2SH整合的保险业务管理系统源码.zip 完整代码,可运行 项目描述 本系统旨在为当今的保险行业提供一套综合性的管理系统业务,系统的主要用户为保险的购买者以及系统的管理人员,基本功能包括:在线购买保险、...
jar包不同,有可能jar里的类、或类里的方法有改动,比如方法后来修改了,或者有比这个方法被取代了等等原因。综上所述,由低版本到高版本时,代码可以不改变,最多原先的代码使用的类或类里的方法不是最新的而已!
使用maven多模块搭建工程,先使用xml配置struts2、spring、hibernate。然后将工程修改为通过注解配置。并说明了在修改过程中需要通过添加配置来解决一些问题。
已经将Struts2和Hibernate与Spring整合,测试可用。含三个框架的核心依赖jar包,不含JDBC驱动,测试例子是用MySQL作为数据库的。请自行更换数据库,添加驱动,修改Hibernate设置和数据库配置。 含有大量注释,适合...
java s2sh三大框架整合的通讯录系统 界面美观 (1) 通信录实现浏览或查找通信录中记录,能够添加,删除,修改记录等。 (2) 用户处于只有登录之后才可以添加,删除,修改记录;如果没有登录只可以查看信息。 (3) 用户...
对于刚进入职场的朋友适合的一款整合,本人亲自搭建,jar包和配置文件都在里面,划分了dao永久层,service逻辑层,controller控制层,下载直接导入,然后修改部分配置文件就...喜欢的朋友后面还有ssm整合和s2sh整合。
本文首先介绍了电子商城系统的现状及开发的可行性,然后论述了系统的设计目的,系统需求和概要设计方案,较详细的论述了系统的需求分析、概要设计和数据库...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql;
基于ssh2的员工信息管理项目。运行完美可用,可以当作整合好的环境使用,也可以将项目少做修改当作课程设计所用,反正此项目已完美解决了很多整合中遇到的问题。 spring4 hibernate4.2 struts2.3.15
java毕业设计之SSM商城系统(源码+LW) 电子商城系统主要为用户提供了会员注册,购物车,个人信息修改等功能,为管理员提供了商品管理,用户管理,订单...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql;
目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的信息传播方式,极大地改变了人类从...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql;
目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的信息传播方式,极大地改变了人类从...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql;
摘要 目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql; 关键词: 电子商城、JavaWeb
摘要 目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的...在设计方面,本系统采用S2SH框架整合开发,数据采用Mysql; 关键词: 电子商城、JavaWeb
项目从网上下载,经本人调试成功后上传,运行一切正常,运用框架为struts2+hibernate+spring,该实例内只有一个登陆查询实例,当用户查询正确之后...然后修改数据库库和表名字即可运行(记得添加一条以上的数据进行测试)
此网上选课系统主要采用 RCP 和 S2SH 技术来完成,管理员模块采用 RCP 技术, 就是 Rich Client Platform 的缩写, 即富客户端平台, 做成应用软件的形式。 然后其他模块的功能就用 Struts2+Spring2.0+Hibernate3.2...
1.配置搜索功能,后台改用s2sh框架 2.完成hessian+spring+hibernate整合,提供建筑信息和公司信息hessian查找服务 2009-12-23 1.配置hessian服务端缓存 2.配置hessian日志记录,输出到文件/log/wzucxd/html 3.完成...