applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="userDao" class="dao.DaoIMPL">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<!-- prop key="hibernate.hbm2ddl.auto">create</prop -->
</props>
</property>
<property name="mappingResources">
<list>
<value>po/BookPO.hbm.xml</value>
</list>
</property>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>111111</value>
</property>
</bean>
</beans>
Spring C3p0配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/jdbc.properties" />
</bean>
<bean id="oracleDataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass">
<value>${mysqljdbc.driverClassName}</value>
</property>
<property name="jdbcUrl">
<value>${mysqljdbc.url}</value>
</property>
<property name="user">
<value>${mysqljdbc.username}</value>
</property>
<property name="password">
<value>${mysqljdbc.password}</value>
</property>
<property name="minPoolSize">
<value>5</value>
</property>
<!-- 达到最大连接数后可以增加的连接数 个 -->
<property name="acquireIncrement">
<value>2</value>
</property>
<property name="maxPoolSize">
<value>3</value>
</property>
<!-- 最大闲置时间 秒 -->
<property name="maxIdleTime">
<value>600</value>
</property>
<property name="maxStatements">
<value>100</value>
</property>
<!-- 闲置的连接测试周期 秒 -->
<property name="idleConnectionTestPeriod">
<value>1200</value>
</property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="mappingResources">
<list>
<value>po/BookPO.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.generate_statistics">
${hibernate.generate_statistics}
</prop>
<prop key="hibernate.dialect">
${mysqlhibernate.dialect}
</prop>
<prop key="hibernate.show_sql">
${hibernate.show_sql}
</prop>
</props>
</property>
<property name="dataSource">
<ref local="oracleDataSource" />
</property>
</bean>
<!--事务管理-->
<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!--配置事务传播性-->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="query*" read-only="true" />
<tx:method name="*Query" read-only="true" />
<tx:method name="find*" read-only="true" />
<tx:method name="save*" rollback-for="Exception" />
<tx:method name="*Save" rollback-for="Exception" />
<tx:method name="update*" rollback-for="Exception" />
<tx:method name="*Update" rollback-for="Exception" />
<tx:method name="*" read-only="true" />
</tx:attributes>
</tx:advice>
<!-- 那些类使用事务 -->
<aop:config proxy-target-class="true">
<aop:pointcut id="serviceMethod" expression="execution(* net..*Service.*(..))" />
<aop:advisor pointcut-ref="serviceMethod" advice-ref="txAdvice" />
</aop:config>
<bean id="userDao" class="dao.DaoIMPL">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
</beans>
属性文件配置jdbc.properties
mysqljdbc.driverClassName=com.mysql.jdbc.Driver
mysqljdbc.url=jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8
mysqljdbc.username=root
mysqljdbc.password=111111
hibernate.generate_statistics=true
mysqlhibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.show_sql=true
web.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>tesths</servlet-name>
<servlet-class>action.tesths</servlet-class>
</servlet>
<!-- 普通spring上下文环境 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
</param-value>
</context-param>
<!-- log4j配置-->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.xml</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<!-- 字符集过滤 -->
<filter>
<filter-name>SetCharacterEncodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<!-- 加载applicationContext.xml的listener -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet-mapping>
<servlet-name>tesths</servlet-name>
<url-pattern>/tesths</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
servlet 使用spring
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out
.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" This is ");
out.print(this.getClass());
out.println(", using the GET method");
out.println("hibernate,spring测试操作");
String bname=request.getParameter("bname");
String bno=request.getParameter("bno");
if(bname!=null&&bno!=null)
{
ServletContext application;
WebApplicationContext wac;
application = getServletContext();
wac = WebApplicationContextUtils.getWebApplicationContext(application);//获取spring的context
dao daoimpl = (dao)wac.getBean("userDao");
BookPO book= new BookPO();
book.setBookname(bname);
book.setBookno(bno);
daoimpl.addBook(book);
out.println("数据添加成功");
}
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
分享到:
相关推荐
**Spring与Hibernate集成详解** 在Java企业级应用开发中,Spring和Hibernate是两个非常重要的框架。Spring是一个全方位的轻量级应用框架,提供了强大的依赖注入、AOP(面向切面编程)以及各种服务管理功能。而...
整合SSH涉及到的主要配置文件有`struts2-spring-plugin.xml`、`spring-context.xml`以及Hibernate的相关配置文件(如`hibernate.cfg.xml`)。`struts2-spring-plugin.xml`配置Struts2与Spring的集成,确保Action类由...
标题“Spring Hibernate集成的例子”暗示我们将探讨如何将这两个框架整合到一个项目中,实现数据访问层与业务逻辑层的无缝对接。这个例子可能是通过创建一个简单的Java项目,然后引入Spring和Hibernate的相关库,...
集成Struts2、Spring和Hibernate时,需要注意配置文件的正确设置,包括Action配置、Spring Bean的定义、Hibernate的数据库连接和实体映射。同时,理解这三个框架的工作原理和相互作用,对于解决问题和优化代码至关...
你需要在Spring配置文件中定义一个SessionFactoryBean,设置相应的Hibernate配置属性,如hibernate.dialect(针对Firebird的方言)、hibernate.connection.driver_class(Firebird JDBC驱动类)以及数据库连接信息。...
接下来,我们会在`applicationContext.xml`中配置数据源,这是Spring与Hibernate集成的基础。数据源(`dataSource`)通常使用Apache Commons DBCP库,因为它提供了连接池功能,能有效管理数据库连接,提高性能。配置...
这篇关于"Spring和Hibernate集成Demo"的内容将深入探讨这两者如何协同工作,以及如何构建一个集成的小型项目。 **Spring框架** Spring的核心是依赖注入(Dependency Injection,DI),它允许开发者通过配置文件或...
- Spring与Hibernate集成,通常使用Spring的HibernateTemplate或HibernateDaoSupport,提供事务管理和数据访问抽象,使得代码更简洁,事务控制更方便。 - Spring与Struts2集成,Spring可以作为Struts2的Action的...
至此,完成了Spring MVC、Spring和Hibernate的集成配置。这个配置使得应用程序能够自动扫描并管理bean,处理数据库连接,执行ORM操作,并通过Spring MVC处理HTTP请求。在实际项目中,还需要根据具体的业务需求和...
2. **配置Spring**:编写Spring的配置文件(如`applicationContext.xml`),定义数据源、Hibernate SessionFactory及事务管理器。数据源通常是DataSource Bean,SessionFactory Bean用于创建和配置Hibernate ...
首先,我们需要在Spring配置文件中引入Hibernate的相关Bean,如SessionFactory和HibernateTransactionManager。SessionFactory是从Hibernate的配置文件中读取数据库连接信息并创建的,而HibernateTransactionManager...
2. **对象关系映射**:Hibernate通过配置文件或注解的方式定义实体类与数据库表之间的映射关系,而Spring则负责管理这些实体对象的生命周期。 3. **异常处理**:Spring为Hibernate提供了一层异常转换机制,将...
然后,通过Spring的HibernateTemplate或SessionFactoryBean,将Hibernate集成到Spring中,以便在Controller中方便地进行数据库操作。 4. 创建实体类:定义与数据库表对应的Java类,使用Hibernate的注解(如@Entity...
在压缩包子文件的文件名称列表中,我们看到了“sping与Ibatis以及hibernate集成配置.doc”,这可能是一个详细的文档,包含了文字说明和可能的配置截图,帮助读者理解每个步骤。"TestSpringJDBC"可能是Spring对JDBC的...
4. 在Spring配置文件中声明事务管理器和数据源。 5. 使用@Autowired注解将DAO注入到Service层。 6. 测试和调整配置,确保事务和缓存工作正常。 在压缩包文件“test_9”中,如果没有进一步的信息,我们无法确定它...
2. 集成Spring:创建Spring的ApplicationContext配置文件,定义Bean,包括业务逻辑组件和数据访问组件(如DAO)。然后,配置Struts ActionServlet以加载Spring上下文。 3. 配置Hibernate:设置hibernate.cfg.xml文件...
3. **配置Spring整合Hibernate**:在Spring的配置文件(如applicationContext.xml)中,我们需要配置Hibernate SessionFactory,并指定缓存相关的bean。例如: ```xml <bean id="sessionFactory" class="org....
3. **配置Hibernate**:配置hibernate.cfg.xml文件,包括数据库连接信息、实体类映射等,还需要在Spring配置文件中声明SessionFactory。 4. **整合Struts和Spring**:通过Spring的Struts2插件,让Struts能够利用...
2. **定义Spring配置文件**:声明Bean并配置它们的依赖关系,包括Struts2的Action类、Service层和DAO层。 3. **Struts2配置文件**:定义Action配置,包括Action类、结果类型和拦截器栈。 4. **整合Hibernate**:配置...
此外,还需要编写相应的配置文件,如struts.xml、spring.xml、hibernate.cfg.xml等,这些配置文件详细定义了各个组件的职责和相互之间的关系。 通过SSH的集成,开发者可以专注于业务逻辑的实现,而不是繁琐的底层...