包括各种struts的 DataSource的配置方式

源代码在线查看: struts_datasource.txt

软件大小: 4 K
上传用户: andyandnancy
关键词: DataSource struts 方式
下载地址: 免注册下载 普通下载 VIP

相关代码

				spring与hibernate3结合,DataSource的配置方式(一) 
				在我开发过程中主要用过以下几种配置方式,(连接池用c3p0)
				
				1.dataSource 作为spring的一个bean配置
				
				datasource.xml 文件:
				
				
								 "http://www.springframework.org/dtd/spring-beans.dtd">
				
								  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
				  
				 
				
				
				  
				   ${Oraclejdbc.driverClassName}
				  
				  
				   ${Oraclejdbc.url}
				  
				  
				   ${Oraclejdbc.username}
				  
				  
				   ${Oraclejdbc.password}
				  
				  
				   1
				  
				
				 
				  
				   2
				  
				  
				   3
				  
				  
				  
				   600
				  
				  
				  
				   100
				  
				
				 
				  
				   1200
				  
				   
				
								  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
				
				  
				   
				      
				     com/ce/myceaas/hibernate/mis/pojo/Area.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Dept.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Users.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Employeeinfo.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/AreaDept.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Roles.hbm.xml
				    
				
				
				      
				     com/ce/myceaas/hibernate/myce/pojo/Application.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Role.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/User.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Userrole.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Roleprim.hbm.xml
				    
				   
				  
				  
				   
				   
				    
				     ${hibernate.generate_statistics}
				    
				    
				     ${Oraclehibernate.dialect}
				    
				    
				     ${hibernate.show_sql}
				    
				    
				    
				  
				  
				   
				   
				   
				  
				 
				
				 				  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
				  
				 
				
				
				
				jdbc.properties 文件:
				
				Oraclejdbc.driverClassName=oracle.jdbc.driver.OracleDriver
				Oraclejdbc.url=jdbc:oracle:thin:@172.20.57.52:1521:orcl
				Oraclejdbc.username=user
				Oraclejdbc.password=password
				
				hibernate.generate_statistics=true
				
				# Property that determines the Hibernate dialect
				# (only applied with "applicationContext-hibernate.xml")
				#hibernate.dialect=net.sf.hibernate.dialect.HSQLDialect
				Oraclehibernate.dialect=org.hibernate.dialect.OracleDialect
				hibernate.show_sql=true
				
				
				1.dataSource 作为hibernate的数据源属性配置
				
				datasource.xml 文件:
				
				
								 "http://www.springframework.org/dtd/spring-beans.dtd">
				
				
				 
				 				  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
				  
				 
				
								  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
				
				  
				   
				         
				     com/ce/myceaas/hibernate/myce/pojo/Application.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Role.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/User.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Userrole.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Roleprim.hbm.xml
				    
				   
				  
				  
				   
				    
				    
				     org.hibernate.connection.C3P0ConnectionProvider
				    
				
				    
				     ${Oraclejdbc.driverClassName}
				    
				    
				     ${Oraclejdbc.url}
				    
				    
				     ${Oraclejdbc.username}
				    
				    
				     ${Oraclejdbc.password}
				    
				
				    
				     ${hibernate.c3p0.min_size}
				    
				    
				     ${hibernate.c3p0.max_size}
				    
				    
				     ${hibernate.c3p0.timeout}
				    
				    
				     ${hibernate.c3p0.max_statements}
				    
				    
				     ${hibernate.c3p0.acquire_increment}
				    
				    
				     ${hibernate.c3p0.idle_test_period}
				    
				     
				    
				     ${hibernate.generate_statistics}
				    
				    
				     ${Oraclehibernate.dialect}
				    
				    
				     ${hibernate.show_sql}
				    
				    
				      true
				
				   
				  
				  
				  
				 
				
				 				  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
				  
				 
				
				
				
				jdbc.properties 文件:
				
				Oraclejdbc.driverClassName=oracle.jdbc.driver.OracleDriver
				Oraclejdbc.url=jdbc:oracle:thin:@172.20.57.52:1521:orcl
				Oraclejdbc.username=user
				Oraclejdbc.password=password
				
				hibernate.generate_statistics=true
				
				# Property that determines the Hibernate dialect
				# (only applied with "applicationContext-hibernate.xml")
				#hibernate.dialect=net.sf.hibernate.dialect.HSQLDialect
				Oraclehibernate.dialect=org.hibernate.dialect.OracleDialect
				hibernate.show_sql=true
				
				
				hibernate.c3p0.min_size=1
				hibernate.c3p0.max_size=3
				hibernate.c3p0.timeout=1200
				hibernate.c3p0.max_statements=30
				hibernate.c3p0.acquire_increment=2
				hibernate.c3p0.idle_test_period=60
				
				
				这两种配置方式的区别是:如果所有的事务都在spring配置的匹配方法中没有问题,如果在spring配置的service外直接调用DAO进行insert或update那么第二种配置方式中如果没有将hibernate.connection.autocommit设置为true,那么虽然可以看到sql语句,但是没有提交,所作的插入或更新无效。
				
				
				
				
				
				在我开发过程中主要用过以下几种配置方式,(连接池用c3p0)
				
				1.dataSource 作为spring的一个bean配置(jndi方式)
				
				服务器利用tomcat5.5
				
				首先配置tomcat数据源连接池 数据库:mysql
				
				tomcat的数据源连接池有2种方式:1、只作为某个应用的数据源。2、作为全局数据源
				
				第一种数据源配置方式(为本应用配置)
				
				在Context.xml文件中配置如下
				
				 
				
								 name="jdbc/myceaas"
				 driverClass="com.mysql.jdbc.Driver" 
				 jdbcUrl="jdbc:mysql://127.0.0.1:3306/myceaas?useUnicode=true&characterEncoding=GBK"
				 user="root" password="admin" 
				 maxPoolSize="10" 
				 minPoolSize="1" 
				 acquireIncrement="1" 
				 idleConnectionTestPeriod="60"
				 preferredTestQuery="select 1"
				 factory="org.apache.naming.factory.BeanFactory" 
				 type="com.mchange.v2.c3p0.ComboPooledDataSource" 
				  /> 
				
				
				 应用中的web.xml 
				
				
				      DB Connection
				      jdbc/myceaas
				      javax.sql.DataSource
				      Container
				  
				
				第二种配置方式(作为全局数据源)
				
				tomcat的server.xml
				
				在 下配置如下:
				
								  name="jdbc/myceaas"
				  driverClass="com.mysql.jdbc.Driver" 
				  jdbcUrl="jdbc:mysql://127.0.0.1:3306/myceaas?useUnicode=true&characterEncoding=GBK"
				  user="root" password="admin" 
				  maxPoolSize="10" 
				  minPoolSize="1" 
				  acquireIncrement="1" 
				  idleConnectionTestPeriod="60"
				  preferredTestQuery="select 1"
				  factory="org.apache.naming.factory.BeanFactory" 
				  type="com.mchange.v2.c3p0.ComboPooledDataSource" 
				  /> 
				
				在Context.xml文件中配置如下
				
								   name="jdbc/myceaas" 
				   type="javax.sql.DataSource" 
				   global="jdbc/myceaas"/>
				
				 应用中的web.xml 
				
				
				      DB Connection
				      jdbc/myceaas
				      javax.sql.DataSource
				      Container
				  
				
				下面是spring的配置:
				
				datasource.xml 文件:
				
				
								 "http://www.springframework.org/dtd/spring-beans.dtd">
				
								  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
				  
				 
				
				
				        
				    
				
								  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
				
				  
				   
				      
				     com/ce/myceaas/hibernate/mis/pojo/Area.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Dept.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Users.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Employeeinfo.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/AreaDept.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/mis/pojo/Roles.hbm.xml
				    
				
				    
				  
				  
				   
				   
				    
				     true    
				    
				    org.hibernate.dialect.MySQLDialect
				
				    
				    
				     true
				
				    
				    
				    
				  
				  
				   
				   
				   
				  
				 
				
				 				  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
				  
				 
				
				
				
				1.dataSource 作为hibernate的数据源属性配置
				
				datasource.xml 文件:
				
				
								 "http://www.springframework.org/dtd/spring-beans.dtd">
				
				
				 
				 				  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
				  
				 
				
								  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
				
				  
				   
				         
				     com/ce/myceaas/hibernate/myce/pojo/Application.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Role.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/User.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Userrole.hbm.xml
				    
				    
				     com/ce/myceaas/hibernate/myce/pojo/Roleprim.hbm.xml
				    
				   
				  
				  
				   
				    
				    
				   org.hibernate.connection.DatasourceConnectionProvider
				    
				
				    
				
				   java:comp/env/jdbc/myceaas
				      
				       
				    
				    true    
				    
				    org.hibernate.dialect.MySQLDialect    
				    
				    true
				
				    
				    
				      true
				
				   
				  
				  
				  
				 
				
				 				  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
				  
				 
				
				
				
				 
				
				这两种配置方式的区别是:如果所有的事务都在spring配置的匹配方法中没有问题,如果在spring配置的service外直接调用DAO进行insert或update那么第二种配置方式中如果没有将hibernate.connection.autocommit设置为true,那么虽然可以看到sql语句,但是没有提交,所作的插入或更新无效。
				
				
							

相关资源