1.sqlserver2000 <?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/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <!-- Hibernate SessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource" /> </property> <property name="mappingResources"> <list> <value>com/oy/image/model/LoginUser.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.generate_statistics">true</prop> <prop key="hibernate.connection.release_mode">auto</prop> <prop key="hibernate.autoReconnect">true</prop> </props> </property> </bean> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass"> <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value> </property> <property name="jdbcUrl"> <value>jdbc:microsoft:sqlserver://localhost:1433;databaseName=users</value> </property> <property name="user"> <value>bruce</value> </property> <property name="password"> <value>bruce</value> </property> <!--连接池中保留的最小连接数。--> <property name="minPoolSize"> <value>5</value> </property> <!--连接池中保留的最大连接数。Default: 15 --> <property name="maxPoolSize"> <value>30</value> </property> <!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 --> <property name="initialPoolSize"> <value>10</value> </property> <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --> <property name="maxIdleTime"> <value>60</value> </property> <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 --> <property name="acquireIncrement"> <value>5</value> </property> <!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements 属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。 如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0--> <property name="maxStatements"> <value>0</value> </property> <!--每60秒检查所有连接池中的空闲连接。Default: 0 --> <property name="idleConnectionTestPeriod"> <value>60</value> </property> <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 --> <property name="acquireRetryAttempts"> <value>30</value> </property> <!--获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效 保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试 获取连接失败后该数据源将申明已断开并永久关闭。Default: false--> <property name="breakAfterAcquireFailure"> <value>true</value> </property> <!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的 时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable 等方法来提升连接测试的性能。Default: false --> <property name="testConnectionOnCheckout"> <value>false</value> </property> </bean> <bean id="imageDao" name="imageDao" class="com.oy.image.dao.hibernate.ImageDaoHibernate" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="imageManager" name="imageManager" class="com.oy.image.service.impl.ImageManagerImpl" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="imageDao"> <ref bean="imageDao" /> </property> </bean> </beans> 2.mysql <?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/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass"> <value>com.mysql.jdbc.Driver</value> </property> <property name="jdbcUrl"> <value> jdbc:mysql://192.168.0.1:3306/DBName?useUnicode=true&characterEncoding=UTF-8 </value> </property> <property name="user"> <value>root</value> </property> <property name="password"> <value>root</value> </property> <!-- 连接池中保留的最小连接数. --> <property name="minPoolSize"> <value>5</value> </property> <!-- 连接池中保留的最大连接数。Default: 15 --> <property name="maxPoolSize"> <value>30</value> </property> <!-- 初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 --> <property name="initialPoolSize"> <value>10</value> </property> <!-- 最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --> <property name="maxIdleTime"> <value>60</value> </property> <!-- 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 --> <property name="acquireIncrement"> <value>5</value> </property> <!-- JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements 属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。 如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0 --> <property name="maxStatements"> <value>0</value> </property> <!-- 每60秒检查所有连接池中的空闲连接。Default: 0 --> <property name="idleConnectionTestPeriod"> <value>60</value> </property> <!-- 定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 --> <property name="acquireRetryAttempts"> <value>30</value> </property> <!-- 获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效 保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试 获取连接失败后该数据源将申明已断开并永久关闭。Default: false--> <property name="breakAfterAcquireFailure"> <value>true</value> </property> <!-- 因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的 时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable 等方法来提升连接测试的性能。Default: false --> <property name="testConnectionOnCheckout"> <value>false</value> </property> </bean> <!-- Hibernate SessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource" /> </property> <property name="mappingResources"> <list> <value>com/oy/image/model/LoginUser.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.generate_statistics">true</prop> <prop key="hibernate.connection.release_mode"> auto </prop> <prop key="hibernate.autoReconnect">true</prop> </props> </property> </bean> <bean id="imageDao" name="imageDao" class="com.oy.image.dao.hibernate.ImageDaoHibernate" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="imageManager" name="imageManager" class="com.oy.image.service.impl.ImageManagerImpl" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="imageDao"> <ref bean="imageDao" /> </property> </bean> </beans> 3.oracle <?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/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="driverClass"> <value>oracle.jdbc.driver.OracleDriver</value> </property> <property name="jdbcUrl"> <value>jdbc:oracle:thin:@192.168.0.1:1521:orcl</value> </property> <property name="user"> <value>username</value> </property> <property name="password"> <value>password</value> </property> <property name="minPoolSize"> <value>10</value> </property> <property name="maxPoolSize"> <value>20</value> </property> <property name="initialPoolSize"> <value>10</value> </property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource"></ref> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.OracleDialect </prop> <prop key="hibernate.show_sql"> false </prop> <prop key="hibernate.generate_statistics">true</prop> <prop key="hibernate.cache.use_query_cache"> true </prop> <prop key="hibernate.cache.use_second_level_cache"> true </prop> <prop key="hibernate.cache.provider_class"> net.sf.ehcache.hibernate.EhCacheProvider </prop> <prop key="hibernate.connection.provider_class"> org.hibernate.connection.C3P0ConnectionProvider </prop> <prop key="hibernate.query.substitutions"> true 1, false 0, yes 'Y', no 'N' </prop> <prop key="hibernate.bytecode.use_reflection_optimizer"> true </prop> <prop key="hibernate.use_outer_join">true</prop> <prop key="hibernate.prepare_sql">true</prop> <prop key="hibernate.query.factory_class"> org.hibernate.hql.ast.ASTQueryTranslatorFactory </prop> </props> </property> <property name="mappingResources"> <list> <value>xxx/xx/xx.hbm.xml</value> <value>xxx/xx/xx.hbm.xml</value> </list> </property> </bean> <bean id="imageDao" name="imageDao" class="com.oy.image.dao.hibernate.ImageDaoHibernate" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="imageManager" name="imageManager" class="com.oy.image.service.impl.ImageManagerImpl" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="imageDao"> <ref bean="imageDao" /> </property> </bean> </beans>
相关推荐
Proxool是SSH框架中常用的数据库连接池之一,以其轻量级、灵活配置和优秀的性能表现而受到青睐。 数据库连接池的基本原理是预先在内存中创建一定数量的数据库连接,应用程序在需要时可以从池中获取连接,使用完毕后...
在实际开发中,可能还需要考虑其他因素,比如数据库连接池的配置、数据源的性能优化、异常处理等。同时,随着技术的发展,现在的项目可能会更倾向于使用Spring Boot,它简化了许多配置步骤,但基本原理和配置方式...
#### 二、SSH在数据库连接中的应用 在实际应用场景中,我们可能需要在一个服务器上通过SSH隧道安全地访问另一个服务器上的数据库资源。这种场景在分布式系统、云计算环境中尤为常见。 #### 三、案例分析:SSH连接两...
学习这部分内容,开发者需要掌握Java Web开发的基本知识,理解MVC架构,熟悉Spring的依赖注入,理解Struts的请求处理流程,以及Hibernate的ORM概念,同时还需要了解数据库连接池的工作原理和配置技巧。 总结起来,...
SSH整合连接池是一种在Java开发中优化数据库访问性能的技术,主要涉及到Spring、Struts和Hibernate这三个框架的集成,以及对数据库连接池的管理和使用。SSH是企业级Web应用开发的主流框架组合,其中Spring提供了强大...
在SSH组合中,Spring作为中央调度者,可以整合Struts2和Hibernate,实现数据访问层的事务管理,提供数据库连接池,以及处理业务逻辑和服务层的事务控制。 Hibernate是一个对象关系映射(ORM)框架,它简化了Java...
我们可以把数据库连接池、DAO(Data Access Object)接口及其实现类都声明为Spring Bean,由Spring来管理。 三、Hibernate框架 Hibernate是一个流行的ORM(Object-Relational Mapping,对象关系映射)框架,它允许...
2. **SSH框架集成**:在pom.xml文件中添加SSH框架及其相应版本的依赖,确保它们之间的兼容性。 3. **数据库连接配置**:配置Spring的DataSource,包括数据库URL、用户名、密码和连接池配置。 4. **Hibernate配置**...
- `c3p0-0.9.1.jar`是连接池库,提高数据库连接的效率和性能。 这些JAR包共同构成了SSH框架的基础,使得开发者能够快速构建、测试和部署Java Web应用。通过合理的配置和使用,SSH可以实现灵活的业务逻辑控制,强大...
在SSH框架中,为了实现高效的数据库连接池管理,通常会采用C3P0作为数据源组件。C3P0是一款开放源代码的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。下面是从给定的部分内容中提取到的...
为了优化性能和用户体验,可能还会涉及到缓存策略(如Spring的Cache Abstraction)、数据库连接池(如C3P0或Druid)、以及安全控制(如Spring Security)。此外,考虑到系统的扩展性,可能采用了模块化设计,将功能...
3. 确保数据库连接池配置中包含了正确的字符编码参数。 #### 五、总结 通过本文介绍的方法,可以在SSH框架中有效地解决中文乱码问题。关键在于确保整个应用链路中的字符编码一致性,包括客户端、服务器端和数据库...
SSH框架指的是Struts、Spring和Hibernate三个开源项目的组合,它们分别负责表现层、控制层和持久层,是Java Web开发中常用的三大框架。而Redis是一种高性能的键值存储系统,常用于缓存数据,提高应用性能。 整合SSH...
3. **Hibernate配置**:数据库连接池的设置、实体类的映射文件、SessionFactory的配置等,使得数据访问层能顺利工作。 4. **lib包配置**:包含了运行SSH框架所需的第三方库,如log4j、commons-lang、slf4j等,这些库...
SSH框架是Java开发中常用的三大框架——Spring、Struts2和Hibernate的组合,它们分别负责控制层、表现层和持久层的管理。本项目提供了一个简单的SSH框架实现,旨在帮助初学者快速理解并掌握这三个框架的集成与应用,...
以下是关于SSH框架与这三种数据库连接的关键知识点。 1. Spring框架: Spring是SSH中的核心,它提供了依赖注入(DI)和面向切面编程(AOP)等关键功能。在数据库连接方面,Spring通过JDBC模板和数据源管理来简化数据库...
6. **数据库交互**:理解数据库连接池的工作原理,以及如何在Spring中配置和使用它。 7. **JSP和EL/JSTL**:学习JSP基本语法,以及如何使用EL表达式和JSTL标签动态展示数据。 通过这个"学校ssh"项目,你可以动手...
综上所述,SSH框架的优化涉及到数据源的管理、数据库连接池的使用、注解的引入以简化配置、自动装配的合理运用以及配置文件的拆分,这些改进都能提高项目的可维护性和开发效率。对于初学者来说,理解并实践这些优化...
SSH框架搭建是一个常见的Java Web开发任务,SSH分别代表Struts、Spring和Hibernate,它们分别是用于MVC模式的前端控制器、应用上下文管理以及对象关系映射的三大组件。以下是搭建SSH框架的详细步骤: 1. **前期准备...
在整合这三个框架时,还需要一些其他的支持库,例如`commons-dbcp`或`tomcat-jdbc`提供数据库连接池,提高数据库连接的效率和管理。`log4j`或`slf4j`用于日志记录,方便调试和问题排查。`servlet-api`和`jsp-api`是...