`
DXL_xiaoli
  • 浏览: 71503 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

S2SH整合修改

 
阅读更多

 

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");
	}

}

 

 

以上是整个修改的全过程 ( 添加操作与修改操作类似,在此不做详解 ) ,若有写的不清楚的地方请留言 ……..

1
0
分享到:
评论

相关推荐

    s2sh整合所有的jar包

    标题 "s2sh整合所有的jar包" 指的是将Struts、Spring和Hibernate这三种技术集成所需的Java档案(JAR)文件集合在一起,便于在项目开发中快速引用和使用。这种整合通常被称为SSH框架,它是Java Web开发中的一个流行...

    s2sh整合,s2sh

    【s2sh整合详解】 `s2sh` 是一个常见的Web应用程序开发框架的简称,它结合了Struts、Spring和Hibernate这三个流行的开源Java框架。Struts提供了MVC(Model-View-Controller)架构,Spring提供了依赖注入(DI)和...

    SSM/S2SH整合要用到的jar包下载

    而在"S2SH整合用到的jar包"中,你会看到: - Struts2的核心库,如struts2-core、struts2-convention-plugin等 - Hibernate的库,包括hibernate-core、hibernate-entitymanager等 - Spring的库,与SSM整合相同 - ...

    S2SH整合模版

    **S2SH整合模版详解** S2SH整合模版是指基于Struts2、Spring和Hibernate这三个开源框架的集成模板,常用于构建企业级Java Web应用程序。这三大框架分别是Struts2负责MVC(Model-View-Controller)架构的实现,...

    S2SH整合详解

    在深入探讨S2SH整合详解之前,我们有必要回顾一下SSH框架相关的基本概念。SSH整合指的是将Struts2、Hibernate和Spring这三种框架整合在一起,以期达到系统架构上分层清晰、职责单一、便于管理和扩展的目的。这三种...

    S2SH整合报错

    ### S2SH整合报错分析及解决方法 #### 背景介绍 在进行S2SH(Struts+Spring+Hibernate)项目的开发过程中,开发者可能会遇到整合层面的问题,特别是当项目涉及多种框架协同工作时。本文将针对一个具体的错误信息...

    最基础的S2SH整合

    "最基础的S2SH整合"是一个面向初学者的基础教程,旨在帮助开发者理解如何将这三个框架集成在一起,实现一个完整的MVC(Model-View-Controller)应用程序。下面将详细介绍S2SH整合中的关键技术和步骤。 **Struts2** ...

    s2sh整合所需要的所有包

    在IT行业中,s2sh整合是指Struts2、Spring和Hibernate三个开源框架的集成,用于构建高效、可扩展的企业级Web应用。这三个框架分别负责不同的职责:Struts2处理前端展示逻辑,Spring管理应用程序的依赖注入和事务控制...

    S2SH详细搭建(适合新手)

    总结,S2SH框架的搭建涉及多个步骤,包括环境配置、库文件管理、配置文件编写以及整合测试。这个过程对于初学者来说可能会有些复杂,但理解并掌握这些步骤对于深入学习Java Web开发至关重要。通过实践,你可以更好地...

    标准S2SH整合的学学生信息管理系统,含有数据库

    【标题】中的“标准S2SH整合的学学生信息管理系统”指的是一个基于Struts2、Spring和Hibernate(简称S2SH)三大Java EE框架集成开发的学生信息管理应用。这个系统旨在提供对学生信息的全面管理功能,包括添加、删除...

    基于S2SH整合的保险业务管理系统源码.zip

    基于S2SH整合的保险业务管理系统源码.zip 完整代码,可运行 项目描述 本系统旨在为当今的保险行业提供一套综合性的管理系统业务,系统的主要用户为保险的购买者以及系统的管理人员,基本功能包括:在线购买保险、...

    S2SH整合所需JAR包集合

    【S2SH整合所需JAR包集合】是一个关键的资源包,它包含了开发基于Java的Web应用程序时,使用Struts2、Spring和Hibernate这三大框架整合所必需的库文件。这些框架的集成允许开发者实现MVC(Model-View-Controller)...

    s2sh整合中jar包作用介绍

    【S2SH整合中Jar包作用介绍】 在Java Web开发中,S2SH(Struts2.3.4 + Spring3.2 + Hibernate4.1.1)是一种常见的框架组合,用于构建高效、可维护的Web应用程序。这些框架的集成需要一系列的Jar包来支持各自的功能...

    S2SH商城系统项目(源码)

    8. **学习与实践**:通过研究S2SH商城系统的源码,开发者可以深入理解如何将Struts2、Spring和Hibernate整合应用于实际项目中,同时也可以学习到如何处理常见的电商问题,如购物车管理、订单处理、支付接口集成等。...

    S2SH框架开发的简单demo实例.zip

    4. **整合过程**:在S2SH中,Struts2会调用由Spring管理的Service,Service再通过Hibernate与数据库交互。这种整合方式使得各层职责明确,易于维护。解压后的项目中,可能会有一个web.xml文件,它是Servlet容器的...

    S2SH购物车+HibernateTemplate分页

    总的来说,"S2SH购物车+HibernateTemplate分页"项目是一个综合性的学习资源,涵盖了Java Web开发中的关键技术和实践,对于理解SSH框架的整合和实际应用具有很高的参考价值。通过这个项目,开发者可以深入理解如何在...

    非常全的S2SH开发包

    S2SH是Java Web开发中常用的一种技术栈,它整合了三个强大的开源框架:Struts2用于表现层管理,Spring作为业务层容器,Hibernate则负责数据持久化。 Struts2,基于MVC设计模式,提供了一种用于构建Web应用的灵活...

    s2sh-CRUD.rar_crud_s2sh

    S2SH,全称为Struts2+Spring+Hibernate,是Java Web开发中的一个经典整合框架,用于构建高效、可维护的Web应用程序。这个框架结合了Struts2(MVC框架)、Spring(依赖注入和事务管理)和Hibernate(对象关系映射)的...

    s2sh与dwr整合实现的增删改查

    在这个项目中,DWR与s2sh整合,用于验证用户名是否已存在,这种实时反馈提高了用户体验,减少了不必要的服务器交互。 4. **分页组件**:为了处理大量数据,分页功能是必不可少的。本项目中的分页组件进行了优化,使...

    基于S2SH的网上商城的电商系统

    【描述】中的"部分的修改和扩展"意味着原项目可能在原有的S2SH基础上进行了一些定制化开发,可能添加了新的功能或优化了性能。作为初学者的学习资源,这个项目提供了实际操作的机会,让大家能够深入了解如何在实际...

Global site tag (gtag.js) - Google Analytics