1.倒入所需jar包
(因网站对附件大小的限制,现将所需jar包分两部分上传。位置分别为http://zhizizhishou0104.iteye.com/blog/1993956 和http://zhizizhishou0104.iteye.com/blog/1993988 )
2.编写entity,这里以一对多关系为例
ClassRoom.java(one端)
import java.util.List; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; import javax.persistence.Table; @Entity @Table(name="CLASS_ROOM") public class ClassRoom { @Id private int id; private String classroom_number; private String classroom_name; @OneToMany(cascade=CascadeType.ALL,mappedBy="classRoom") private List<Student> students; //这里省略setter和getter }
Student.java(many端)
import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; @Entity @Table(name="STUDENT") public class Student { @Id private int id; private String stu_number; private String stu_name; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(updatable=false,nullable=false) private ClassRoom classRoom; //这里省略setter和getter }
3.dao层
import javax.annotation.Resource; import org.hibernate.SessionFactory; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import org.springframework.stereotype.Repository; import com.aia.domain.ClassRoom; @Repository public class ClassRoomDao extends HibernateDaoSupport{ @Resource public void setHibenrateSessionFactory(SessionFactory sessionFactory) { super.setSessionFactory(sessionFactory); } public ClassRoom saveClassRoom(ClassRoom classRoom) { getHibernateTemplate().persist(classRoom); return classRoom; } }
4.service层(这里跳过接口,直接上传实现类)
import javax.annotation.Resource; import org.springframework.stereotype.Service; import com.aia.dao.ClassRoomDao; import com.aia.domain.ClassRoom; import com.aia.service.ClassRoomService; @Service public class ClassRoomServiceImpl implements ClassRoomService { @Resource private ClassRoomDao classRoomDao; @Override public ClassRoom saveClassRoom(ClassRoom classRoom) { return classRoomDao.saveClassRoom(classRoom); } }
5.测试类
import java.util.ArrayList; import java.util.List; import org.junit.Test; import org.springframework.test.AbstractTransactionalSpringContextTests; import com.aia.domain.ClassRoom; import com.aia.domain.Student; import com.aia.service.ClassRoomService; public class ClassRoomServiceImplTest extends AbstractTransactionalSpringContextTests{ @Override protected String[] getConfigLocations() { return new String[] {"applicationContext.xml"}; } private ClassRoomService classRoomService; public void setClassRoomService(ClassRoomService classRoomService) { this.classRoomService = classRoomService; } @Test public void testSaveClassRoom(){ ClassRoom classRoom = new ClassRoom(); classRoom.setClassroom_name("classroom_name"); classRoom.setClassroom_number("123"); Student student1 = new Student(); student1.setStu_name("student_name1"); student1.setStu_number("1001"); student1.setId(5); student1.setClassRoom(classRoom); Student student2 = new Student(); student2.setStu_name("student_name2"); student2.setStu_number("1002"); student2.setId(6); student2.setClassRoom(classRoom); List<Student> lists = new ArrayList<Student>(); lists.add(student1); lists.add(student2); classRoom.setStudents(lists); classRoomService.saveClassRoom(classRoom); //测试类注意要手动提交事务 setComplete(); } }
测试类中也可以使用如下方法获取bean
BeanFactory beanFactory = new ClassPathXmlApplicationContext("applicationContext.xml"); classRoomService = (ClassRoomService)beanFactory.getBean("classRoomService");
相关推荐
这篇博客"SSH+DB2搭建开发环境(上)"似乎主要探讨如何将这两者结合,为开发者创建一个安全且高效的开发环境。下面我们将深入探讨这两个技术以及如何在实际操作中结合它们。 首先,SSH(Secure Shell)是一种网络协议...
redhat5.4+SSH+Ftp+Apache+Mysql+PHP搭建 redhat5.4+SSH+Ftp+Apache+Mysql+PHP搭建 redhat5.4+SSH+Ftp+Apache+Mysql+PHP搭建 redhat5.4+SSH+Ftp+Apache+Mysql+PHP搭建
【SSH+Oracle+MyEclipse框架搭建详解】 SSH框架,由Struts、Spring和Hibernate三个开源框架组成,常用于构建企业级的Java Web应用程序。在MyEclipse6.5环境中,我们将结合Oracle数据库来搭建一个登录框架。以下是...
SSH+maven搭建的项目
基于MyEclipse+9[1].0+++Tomcat+7.0的SSH+平台搭建
项目的安装部署"中,我们将深入探讨如何在Java环境下使用SSH(Struts2、Spring、Hibernate)框架、Maven构建工具以及Bootstrap前端框架来搭建并部署一个完整的Web项目。这个教程面向的是有一定Java基础,希望进一步...
这是我学习SSH时候做的案例,非常适合学习,这是按照标准的java EE规范写的代码。价值很大。欢迎参考和下载。只需要设计一张数据库表直接导入myeclipse可以直接中。类库齐全。现在和大家分享,共同学习和进步。
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
SSH+JPA基础环境搭建教程 SSH框架,全称为Struts2、Spring和Hibernate的集成,是Java Web开发中常用的一套技术栈。本环境基于SSH,并引入了JPA(Java Persistence API)作为数据持久层的解决方案,同时配合MySQL...
基于ssh+mysql+easyui的酒店客房管理系统.zip基于ssh+mysql+easyui的酒店客房管理系统.zip基于ssh+mysql+easyui的酒店客房管理系统.zip基于ssh+mysql+easyui的酒店客房管理系统.zip基于ssh+mysql+easyui的酒店客房...
企业级新闻系统(SSH+MYSQL) ## 部署说明 1. 创建数据库。使用MySQL,字符集选择为`utf8`或者`utf8mb4`(支持更多特殊字符,推荐)。 2. 创建数据库导入数据。数据库在`News\`目录下,参考数据脚本创建数据库。 3. ...
ext+ssh+mysql库存管理系统源码给力分享jdk1.6 用户名密码:admin/admin 登录后先录入基础资料 进货管理:进货入库,退货出库,进货单据查询,退货单据查询 销售管理:销售出库,客户退货,销售单据查询,客户退货...
Java基于jsp的超市管理系统的实现ssh+mysql.zipJava基于jsp的超市管理系统的实现ssh+mysql.zipJava基于jsp的超市管理系统的实现ssh+mysql.zipJava基于jsp的超市管理系统的实现ssh+mysql.zipJava基于jsp的超市管理...
Java基于jsp的图书管理系统的实现ssh+mysql.zipJava基于jsp的图书管理系统的实现ssh+mysql.zipJava基于jsp的图书管理系统的实现ssh+mysql.zipJava基于jsp的图书管理系统的实现ssh+mysql.zipJava基于jsp的图书管理...
Java基于jsp的课程设计系统的实现ssh+mysql.zipJava基于jsp的课程设计系统的实现ssh+mysql.zipJava基于jsp的课程设计系统的实现ssh+mysql.zipJava基于jsp的课程设计系统的实现ssh+mysql.zipJava基于jsp的课程设计...
SSH+Extjs开发视频教程-基于SSH+Maven+Extjs4+MySQL技术实战开发CRM客.doc
Java基于jsp的失物招领管理系统的实现ssh+mysql.zipJava基于jsp的失物招领管理系统的实现ssh+mysql.zipJava基于jsp的失物招领管理系统的实现ssh+mysql.zipJava基于jsp的失物招领管理系统的实现ssh+mysql.zipJava基于...
Java基于jsp的酒店人员管理系统的实现ssh+mysql.zipJava基于jsp的酒店人员管理系统的实现ssh+mysql.zipJava基于jsp的酒店人员管理系统的实现ssh+mysql.zipJava基于jsp的酒店人员管理系统的实现ssh+mysql.zipJava基于...
Java基于jsp的小区物业管理系统的实现ssh+mysql.zipJava基于jsp的小区物业管理系统的实现ssh+mysql.zipJava基于jsp的小区物业管理系统的实现ssh+mysql.zipJava基于jsp的小区物业管理系统的实现ssh+mysql.zipJava基于...