测试类
package com; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import domain.User; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { /** * @param args */ public static void main(String[] args) { ApplicationContext ctx = new ClassPathXmlApplicationContext( "ApplicationContext.xml"); Userdao dao = (Userdao) ctx.getBean("userdao"); // System.out.println("姓名:"+dao.getUser().getName()); // System.out.println("年龄:"+dao.getUser().getAge()); /* * dao.deleteUserById(1); dao.deleteUserById(2); dao.deleteUserById(3); */ // System.out.println(dao.deleteAllUsers()); // User user1 = new User(4,"lb","1235","lb@163.com"); // User user2 = new User(5,"hjp","1236","hjp@163.com"); // User user3 = new User(6,"zrq","1237","zrq@163.com"); // dao.createUser(user1); // dao.createUser(user2); // dao.createUser(user3); User user11 = dao.findUserById(8); if (user11 != null) {System.out.println("姓名: " + user11.getName() + "(id=" + user11.getId() + ");"); dao.deleteUser(user11);} System.out.println("<----------------------------------->"); User user = dao.findUserById(1); user.setName("yyq"); user.setEmail("yyq2007aa@163.com"); dao.updateAndsaveUser(user); List<User> userlist = new ArrayList<User>(); userlist = dao.findAllUsers(); Iterator item = userlist.iterator(); int i = 0; while (item.hasNext()) { i++; System.out.println(i + ". 姓名:" + ((User) item.next()).getName()); } } }
要注意的就是在Userdao.java中对User的cud等操作的事务性处理,事务通过@Transactional来声明,那么在ApplicationContext.xml中配置的事务管理器会自动把这个操作当作事务来处理。
JPA是持久化的标准,需要provider。现在支持JPA的ORM包有多种。Netbeans自带Toplink,如果想使用ORM框架的一些高级的功能,可以使用Hibernate作为JPA的实现。
使用Hibernate作为JPA的实现,需要在官网下载core、annotation、entityManager包。一般支持Hibernate的IDE都会带有core包,那么只需一下这些jar就可以:
ejb3-persistence.jar //创建实体时可以使用jdk1.6带的注释功能
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-entitymanager.jar //创建持久性单元需要这个jar
javassist.jar
jboss-archive-browsing.jar
将这些jar放到类路径就可以创建持久性单元persisitence.xml。
<?xml version="1.0" encoding="UTF-8"?> <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"> <persistence-unit name="JavaApplication14PU" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <class>model.JH</class> <properties> <property name="hibernate.connection.username" value="root"/> <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/> <property name="hibernate.connection.password" value=" 123"/> <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/news"/> <property name="hibernate.hbm2ddl.auto" value="update"/> <property name="show_sql" value="true"/> </properties> </persistence-unit> </persistence>
分享到:
相关推荐
在IT领域,构建高效、可扩展的Web应用是至关重要的,而"spring+springMVC+jpa+hibernate框架整合"就是一个常见的解决方案。这个整合涉及到四个关键的技术栈:Spring框架、SpringMVC、JPA(Java Persistence API)...
在现代Java Web开发中,"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA"是一个常见的架构组合,被广泛应用于构建企业级应用程序。这个组合通常被称为"SSM",其中"M"代表Maven,"S"代表Spring,包括Spring核心...
搭建 Struts2+Spring+Hibernate 框架中的 Action 单元测试环境需要解决三个主要问题:如何测试 Action?如何解决 JPA 中的 Lazy 机制?如何做用户 Session 管理?通过使用 StrutsSpringTestCase 和 junit4.jar,可以...
此项目是spring+hibernate+JPA+BoneCP的大整合。所用的技术比较多,如Spring的IOC,AOP,Transactiion,Annotation,Spring_JUnit_Test及Log4j;Hibernate的JPA Annotation;BoneCP的数据库连接测等。是很好的学习资料...
在本教程中,我们将深入探讨如何使用Spring MVC、Spring和Hibernate三大框架进行全注解的整合开发。这个视频教程系列的第11部分,重点可能是建立在前几部分的基础之上,进一步深化对这三个核心技术的理解和实践。 ...
在本项目中,我们主要探讨如何手动构建一个基于SpringMVC、Spring Data JPA、Hibernate以及FreeMarker模板引擎的Maven工程,同时实现环境切换功能。这个基础框架为日常开发工作提供了必要的支持。 首先,SpringMVC...
SSH三大框架,即Struts、Spring和Hibernate,是Java Web开发中的常用技术组合,它们各自负责不同的职责:Struts作为MVC模式中的Controller层,处理用户请求并转发到相应的业务逻辑;Spring则作为核心容器,负责依赖...
这是整合SpringMVC+Spring+SpringDataJPA+Hibernate简单的实现登录的功能,用的是mysql数据库,这是一个web Project 如果你用的是JavaEE6那么你要注意bean-validator.jar和weld-osgi-bundle.jar与slf4j的jar包冲突。...
在Spring+Jersey+JPA+Hibernate的组合中,Hibernate作为JPA的具体实现,负责与MySQL数据库之间的交互。 MySQL是一种广泛使用的开源关系型数据库管理系统,因其高性能、可靠性和易于管理而在Web应用中受到青睐。在这...
车辆管理系统(struts+hibernate+spring+oracle).rar 对公务用车进行档案、费用、调度、维修、安全、运行等全方位的管理和统计,以方便...
"spring3+springmvc+jpa+hibernate多数据源"是一个示例项目,它演示了如何在一个应用中集成Spring 3、Spring MVC、JPA 2.0以及Hibernate,以实现对多个数据源的支持。下面将详细介绍这些技术及其集成的关键点。 **...
在IT行业中,构建一个基于Spring、SpringMVC、Hibernate和JPA的开发环境是常见的任务,这四个组件都是Java企业级应用开发中的重要工具。让我们深入探讨这些技术以及如何将它们整合在一起搭建一个完整的开发环境。 *...
标题“Spring + JPA + Hibernate配置”涉及到的是Java开发中常用的三个框架——Spring、Java Persistence API (JPA) 和Hibernate的集成与配置。这是一份关于如何将这些框架结合使用的教程或参考资料,可能包含了实现...
在Maven或Gradle的构建文件中,添加对应的依赖库,如Spring的核心库、Spring ORM模块以及Hibernate的JPA和核心库。确保版本与项目的其他依赖兼容。 接下来,配置Spring的ApplicationContext.xml文件。在这个文件中...
spring+hibernate+jpa+struts1+struts2+springmvc+jquery+freemaker 学习笔记 Compass将lucene、Spring、Hibernate三者结合
在本文中,我们将深入探讨"Spring+SpringMVC+SpringDataJPA+Hibernate"这个集成框架,这是一个在Java开发中广泛使用的强大组合,用于构建高效、可扩展的企业级应用程序。 首先,Spring是一个全面的Java应用框架,它...
标题 "Spring+Hibernate+Jpa+Struts2整合实例" 描述的是一个综合性的Web开发教程,它将四个关键的Java技术框架集成在一起,用于构建高效的企业级应用程序。这个实例涵盖了Spring作为整体应用的管理框架,Hibernate...
10. **最佳实践**:在实际项目中,为了提高性能和可维护性,通常会采用 MyBatis 或 JPA 作为更轻量级的数据访问层,而将 Hibernate 作为备用选项,以应对复杂的查询需求。 这个“Spring+hibernate整合源代码”应该...
在"maven+springjpa+hibernate"的例子中,Maven用于管理项目依赖,包括Spring Data JPA和Hibernate库。 **Spring Data JPA** Spring Data JPA是Spring框架的一部分,它简化了JPA(Java Persistence API)的使用,...
在IT行业中,构建高效、可维护的Web应用是至关重要的,而"Maven+SpringMVC+SpringJPA+Hibernate"的组合就是一个常见的解决方案。这个组合提供了全面的开发工具和技术,帮助开发者快速构建基于Java的Web应用程序。...