`
xyliufeng
  • 浏览: 87230 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Spring Hibernate集成配置文件

阅读更多
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集成

    **Spring与Hibernate集成详解** 在Java企业级应用开发中,Spring和Hibernate是两个非常重要的框架。Spring是一个全方位的轻量级应用框架,提供了强大的依赖注入、AOP(面向切面编程)以及各种服务管理功能。而...

    spring整合struts2与hibernate核心配置文件

    整合SSH涉及到的主要配置文件有`struts2-spring-plugin.xml`、`spring-context.xml`以及Hibernate的相关配置文件(如`hibernate.cfg.xml`)。`struts2-spring-plugin.xml`配置Struts2与Spring的集成,确保Action类由...

    Spring Hibernate 集成的例子

    标题“Spring Hibernate集成的例子”暗示我们将探讨如何将这两个框架整合到一个项目中,实现数据访问层与业务逻辑层的无缝对接。这个例子可能是通过创建一个简单的Java项目,然后引入Spring和Hibernate的相关库,...

    struts2 spring hibernate集成

    集成Struts2、Spring和Hibernate时,需要注意配置文件的正确设置,包括Action配置、Spring Bean的定义、Hibernate的数据库连接和实体映射。同时,理解这三个框架的工作原理和相互作用,对于解决问题和优化代码至关...

    firebird embedded 嵌入式——Spring hibernate 集成连接配置

    你需要在Spring配置文件中定义一个SessionFactoryBean,设置相应的Hibernate配置属性,如hibernate.dialect(针对Firebird的方言)、hibernate.connection.driver_class(Firebird JDBC驱动类)以及数据库连接信息。...

    spring 与hibernate的集成

    接下来,我们会在`applicationContext.xml`中配置数据源,这是Spring与Hibernate集成的基础。数据源(`dataSource`)通常使用Apache Commons DBCP库,因为它提供了连接池功能,能有效管理数据库连接,提高性能。配置...

    spring和hibernate集成Demo

    这篇关于"Spring和Hibernate集成Demo"的内容将深入探讨这两者如何协同工作,以及如何构建一个集成的小型项目。 **Spring框架** Spring的核心是依赖注入(Dependency Injection,DI),它允许开发者通过配置文件或...

    ssh集成jar包,支持spring集成Hibernate,spring集成struts2等

    - Spring与Hibernate集成,通常使用Spring的HibernateTemplate或HibernateDaoSupport,提供事务管理和数据访问抽象,使得代码更简洁,事务控制更方便。 - Spring与Struts2集成,Spring可以作为Struts2的Action的...

    集成springmvc spring hibernate的配置

    至此,完成了Spring MVC、Spring和Hibernate的集成配置。这个配置使得应用程序能够自动扫描并管理bean,处理数据库连接,执行ORM操作,并通过Spring MVC处理HTTP请求。在实际项目中,还需要根据具体的业务需求和...

    Spring集成Hibernate myeclipse 下

    2. **配置Spring**:编写Spring的配置文件(如`applicationContext.xml`),定义数据源、Hibernate SessionFactory及事务管理器。数据源通常是DataSource Bean,SessionFactory Bean用于创建和配置Hibernate ...

    Spring与Hibernate集成---声明式事务

    首先,我们需要在Spring配置文件中引入Hibernate的相关Bean,如SessionFactory和HibernateTransactionManager。SessionFactory是从Hibernate的配置文件中读取数据库连接信息并创建的,而HibernateTransactionManager...

    Spring2 Hibernate3集成

    2. **对象关系映射**:Hibernate通过配置文件或注解的方式定义实体类与数据库表之间的映射关系,而Spring则负责管理这些实体对象的生命周期。 3. **异常处理**:Spring为Hibernate提供了一层异常转换机制,将...

    springmvc spring hibernate整合Demo

    然后,通过Spring的HibernateTemplate或SessionFactoryBean,将Hibernate集成到Spring中,以便在Controller中方便地进行数据库操作。 4. 创建实体类:定义与数据库表对应的Java类,使用Hibernate的注解(如@Entity...

    spring与hibernate以及ibatis集成的实例和具体配置图解

    在压缩包子文件的文件名称列表中,我们看到了“sping与Ibatis以及hibernate集成配置.doc”,这可能是一个详细的文档,包含了文字说明和可能的配置截图,帮助读者理解每个步骤。"TestSpringJDBC"可能是Spring对JDBC的...

    Spring之Spring2.5集成Hibernate3.6

    4. 在Spring配置文件中声明事务管理器和数据源。 5. 使用@Autowired注解将DAO注入到Service层。 6. 测试和调整配置,确保事务和缓存工作正常。 在压缩包文件“test_9”中,如果没有进一步的信息,我们无法确定它...

    Struts、Spring、Hibernate集成附加(Ajax)集成

    2. 集成Spring:创建Spring的ApplicationContext配置文件,定义Bean,包括业务逻辑组件和数据访问组件(如DAO)。然后,配置Struts ActionServlet以加载Spring上下文。 3. 配置Hibernate:设置hibernate.cfg.xml文件...

    Spring集成的Hibernate配置二级缓存

    3. **配置Spring整合Hibernate**:在Spring的配置文件(如applicationContext.xml)中,我们需要配置Hibernate SessionFactory,并指定缓存相关的bean。例如: ```xml &lt;bean id="sessionFactory" class="org....

    struts spring hibernate 集成

    3. **配置Hibernate**:配置hibernate.cfg.xml文件,包括数据库连接信息、实体类映射等,还需要在Spring配置文件中声明SessionFactory。 4. **整合Struts和Spring**:通过Spring的Struts2插件,让Struts能够利用...

    struts2.1.8 集成 spring hibernate需要的 核心 jar

    2. **定义Spring配置文件**:声明Bean并配置它们的依赖关系,包括Struts2的Action类、Service层和DAO层。 3. **Struts2配置文件**:定义Action配置,包括Action类、结果类型和拦截器栈。 4. **整合Hibernate**:配置...

    Struts Spring Hibernate集成开发

    此外,还需要编写相应的配置文件,如struts.xml、spring.xml、hibernate.cfg.xml等,这些配置文件详细定义了各个组件的职责和相互之间的关系。 通过SSH的集成,开发者可以专注于业务逻辑的实现,而不是繁琐的底层...

Global site tag (gtag.js) - Google Analytics