上文配置的方式,后来发现,会增加部署的负担。后来找个一个可以不再tomcat里改文件的方式。
在工程/WebRoot/META-INF/下面,新建一个context.xml文件。内容如下:
<?xml version='1.0' encoding='utf-8'?>
<Context>
<Resource auth="Container" description="DB Connection"
driverClassName="org.gjt.mm.mysql.Driver"
maxActive="50" maxIdle="10" maxWait="5000" name="jdbc/DBPool" factory="org.apache.commons.dbcp.BasicDataSourceFactory"
type="javax.sql.DataSource"
url="jdbc:mysql://xx.xx.xx.xx:3306/xxx?characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false" username="xxxxxx" password="xxxxxx"/>
<!-- Resource auth="Container" description="DB Connection"
driverClass="com.mysql.jdbc.Driver" maxPoolSize="10" minPoolSize="2"
acquireIncrement="2" name="jdbc/DBPool" user="xxxxxx"
password="xxxxxx" factory="org.apache.naming.factory.BeanFactory"
type="com.mchange.v2.c3p0.ComboPooledDataSource"
jdbcUrl="jdbc:mysql://xx.xx.xx.xx:3306/xxx?autoReconnect=true" />-->
</Context>
上面是俩个数据源的配置方法,我把第二个注释掉了。下面的是c3p0的,听说不错。当配置再工程里的时候需要加俩个jar包commons-dbcp.jar,commons-pool-1.4.jar。如果使用c3p0的方式,需要导入c3p0-0.9.0.4.jar包。
除了上面的修改,还需要再web.xml里添加如下内容:
<resource-ref>
<description>MySQL DB Connection Pool</description>
<res-ref-name>jdbc/DBPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
总结:不过这也有个问题是这个数据源是局部的,不能多工程共享。如果一个tomcat上有多个工程用到一个database,还是推荐使用tomcat里面的配置方式。
注:今天发现mysql连接串原来可以添加好多参数:
今天发现了三个新的,autoReconnect(当数据库连接异常中断时,是否自动重新连接?) autoReconnectForPools(是否使用针对数据库连接池的重连策略),failOverReadOnly(自动重连成功后,连接是否设置为只读?),主要是用来当连接断了后,提供自动重连功能。还有串各参数之间需要填加&来分隔。我现在一般用的串如下:
jdbc:mysql://xx.xx.xx.xx:3306/mimms?characterEncoding=utf8&autoReconnect=true&autoReconnectForPools=true&failOverReadOnly=false
后面几个我也不知道管不管用,反正mysql文档写了,我也用上去吧。
分享到:
相关推荐
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0由Miquel Llopis创建,因其高效、稳定和易用的特点,被广泛应用于各种Java Web应用中。下面我们将深入探讨c3p0连接池...
在 Tomcat 和数据库之间的连接中,我们需要配置连接池的参数。在这个例子中,我们使用了 STRUTS、HIBERNATE 和 SPRING 框架,难道是连接池的原因引起的错误?我们可以尝试使用不同的连接池,例如 C3P0,来解决这个...
【JBuilder2006配置Hibernate】教程 JBuilder是一款由Borland...在实际开发中,还要根据具体需求调整配置,例如缓存策略、连接池设置等。总之,熟练配置和使用Hibernate能让你在处理Java与数据库交互时更加得心应手。
总之,文档提供了从零开始配置MyEclipse+Struts+Hibernate开发环境的详细指南,涵盖了从软件安装、项目创建、框架集成到数据库配置的全过程。这对于初学者来说是一份宝贵的资源,有助于他们快速上手并避免常见的陷阱...
3. **Hibernate配置**:通过`hibernate.cfg.xml`来配置连接池、事务管理等。 #### 五、实现CRUD操作 - **创建(Create)**:用户提交表单,Action负责验证并调用Service层执行插入操作。 - **读取(Retrieve)**:通过...
5.3 Tomcat5.5中配置连接池和数据源:在Tomcat的conf/server.xml文件中配置数据源(DataSource),例如使用Apache Commons DBCP或C3P0,设定连接池大小、超时时间等参数,便于管理数据库连接。 5.4 对象关联关系的...
12.4.2 配置数据库连接池 12.4.3 使用JNDI 12.5 使用Hibernate的工具快速生成映射文件和POJO 12.5.1 使用MiddleGen根据数据库产生映射文件 12.5.2 使用hbm2java根据映射文件产生POJO 12.6 整合Struts、Spring和...
12.4.2 配置数据库连接池 12.4.3 使用JNDI 12.5 使用Hibernate的工具快速生成映射文件和POJO 12.5.1 使用MiddleGen根据数据库产生映射文件 12.5.2 使用hbm2java根据映射文件产生POJO 12.6 整合Struts、Spring和...
12.4.2 配置数据库连接池 12.4.3 使用JNDI 12.5 使用Hibernate的工具快速生成映射文件和POJO 12.5.1 使用MiddleGen根据数据库产生映射文件 12.5.2 使用hbm2java根据映射文件产生POJO 12.6 整合Struts、Spring和...
2. **数据源配置**:配置数据库连接池,例如C3P0或DBCP,以及相关的数据库连接信息。 3. **Hibernate配置**:在Spring配置文件中,配置Hibernate的SessionFactory,并且可以设置事务管理器。 4. **整合Struts2和...
- **配置Hibernate**:设置Hibernate的连接池,编写实体类,创建映射文件,配置Hibernate的`hibernate.cfg.xml`文件,包括数据库连接信息、方言、缓存策略等。 - **整合测试**:编写Action类,实现业务逻辑,与...
- **数据库连接**:配置HSQLDB数据库,创建数据库连接池,如使用Hibernate的C3P0连接池。 - **Spring配置**:创建Spring的配置文件,定义Bean,包括Service、DAO等,并设置自动扫描。 - **Struts2配置**:编写...
- c3p0-0.9.1.2.jar (连接池) - dom4j-1.6.1.jar - antlr-2.7.6.jar - slf4j-api-1.6.1.jar - slf4j-log4j12-1.6.1.jar **2.4.2 配置hibernate.cfg.xml** 在项目的src目录下创建hibernate.cfg.xml文件,用于配置...
Hibernate框架的集成涉及到数据库连接池的配置以及实体映射文件的创建。我们需要创建`hibernate.cfg.xml`文件,配置数据源信息,并定义相应的`.hbm.xml`文件来描述实体类与数据库表之间的映射关系。 #### 六、总结 ...
4.2.1 配置数据库连接池 4.2.2 数据库连接池的应用 4.2 -3实例:用doGet方法处理客户端请求 4.2.4 实例:用doPost方法处理客户端请求 4.2.5 实例:用service方法处理客户端请求 4.2.6 实例:初始化...
12.4.2 配置数据库连接池 12.4.3 使用JNDI 12.5 使用Hibernate的工具快速生成映射文件和POJO 12.5.1 使用MiddleGen根据数据库产生映射文件 12.5.2 使用hbm2java根据映射文件产生POJO 12.6 整合Struts、Spring和...
9. **性能优化**: 可能包括缓存机制、数据库索引优化、连接池管理等,以确保系统在处理大量并发请求时仍能保持高效运行。 10. **测试与调试**: 开发过程中,单元测试、集成测试和压力测试是必不可少的,以验证系统...