新建一个web项目,然后在tomcat中的的server.xml的配置文件中加入以下配置。
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" />
<Resource auth="Container"
description="DB Connection"
driverClass="net.sourceforge.jtds.jdbc.Driver"
maxPoolSize="10"
minPoolSize="2"
acquireIncrement="2"
name="jdbc/platform203"
user="platformsqluser"
password="puei4cgbjx"
factory="org.apache.naming.factory.BeanFactory"
type="com.mchange.v2.c3p0.ComboPooledDataSource"
jdbcUrl="jdbc:jtds:sqlserver://59.151.111.203:1433/platform" />
</GlobalNamingResources>
然后在tomcat下的context.xml中加入如下配置
<Context>
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<ResourceLink name="jdbc/platform203" global="jdbc/platform203" type="javax.sql.DataSource"/>
<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->
<!-- Uncomment this to enable Comet connection tacking (provides events
on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
</Context>
加完后要在相应的web项目中加入对应的sql驱动。加完后,在项目的web.xml文件中加入如下代码。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/platform203</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
在相应的项目中的index.jsp文件中加入以下java代码用来测试是否已成功得到相应的连接
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.Connection"%><%
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/platform203");
Connection conn = ds.getConnection();
System.out.println(conn);
%>
相应的hibernate.hbm.xml文件的配置。
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<!-- 以/jndi/name绑定到JNDI的SessionFactory实例 -->
<session-factory name="java:hibernate/SessionFactory">
<!-- 属性 -->
<property name="connection.datasource">java:/comp/env/jdbc/platform203</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">false</property>
<mapping resource="cn/ehoo/hibernate/domain/Department.hbm.xml" />
<mapping resource="cn/ehoo/hibernate/domain/Employee.hbm.xml" />
<mapping resource="cn/ehoo/hibernate/domain/Person.hbm.xml" />
</session-factory>
</hibernate-configuration>
在测试页岩index.jsp上写上以下代码。代码并不规范,只是说明程序已经能正常使用了。
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.Connection"%>
<%@page import="org.hibernate.cfg.Configuration"%>
<%@page import="org.hibernate.SessionFactory"%><%
SessionFactory sessionFactory =null;
Configuration cfg = new Configuration();
System.out.println(cfg);
cfg.configure();
sessionFactory = cfg.buildSessionFactory();
System.out.println(sessionFactory);
%>
相应的java类就不一一写出来了,在附件里找吧。还有我用的是c3p0的连接池与mysql的数据库。在测试中发现要把mysql的驱动,与c3p0的包放在tomcat的lib目录下才能正常使用。没找到这样做的原因。
分享到:
相关推荐
### Tomcat6配置连接池详解 #### 一、引言 在Java Web开发中,数据库连接池技术的应用极为广泛。合理的数据库连接管理不仅能提高应用程序的性能,还能有效避免因频繁创建销毁连接所导致的资源浪费问题。Apache ...
【hibernate 配置连接池的三种方法】 在Java应用程序中,特别是在使用ORM框架如Hibernate进行数据库操作时,数据库连接池是必不可少的组件。它有效地管理数据库连接,提高应用程序性能,减少资源消耗。以下是对...
### Tomcat6连接池配置详解(自动重连) #### 一、引言 在现代Web应用开发中,数据库连接管理是非常重要的一环。为了提高应用性能并确保资源的有效利用,通常采用连接池技术来管理数据库连接。Apache Tomcat作为一...
在测试和调试过程中,如果遇到问题,如JDBC驱动异常,应先检查Tomcat的连接池配置是否正确,然后再检查Hibernate的配置。如果在没有Hibernate的情况下,直接通过JNDI获取连接能正常工作,那么问题可能出在Hibernate...
在上述配置中,我们看到了Hibernate连接池的配置差异: 1. **Hibernate 默认连接池**:当没有指定连接池时,Hibernate会使用内置的连接池,但这并不推荐用于生产环境,因为它的性能和稳定性都不够理想。 2. **C3P0...
本篇文章将深入探讨如何配置Hibernate以配合连接池进行高效的数据交互。 一、连接池简介 连接池是数据库连接的一种管理机制,它预先创建并维护一定数量的数据库连接,当应用程序需要时可以从池中获取,使用完毕后...
在IT行业中,配置连接池和在Windows环境下启动Tomcat服务器是常见的系统管理任务,而处理JSP中文乱码、实现文件上传与下载以及理解Hibernate参数和Struts2的表达式符号则是开发过程中不可或缺的知识点。下面,我们将...
根据给定的文件信息,我们可以总结出在Tomcat服务器下配置连接池的相关知识点。本文将详细探讨如何在Tomcat环境中设置连接池,并结合Spring框架进行整合应用。 ### 一、在Tomcat中配置连接池 #### 1.1 在`context....
这里我们将深入探讨连接池的概念,Spring框架中的数据源配置,以及Hibernate的集成,以及它们如何协同工作。 首先,连接池是一种资源管理技术,用于存储数据库连接。它预先创建一定数量的数据库连接,当应用需要时...
【hibernate配置数据库连接池的三种方法】 在软件开发中,数据库连接池是一种重要的资源管理工具,它能显著提高数据库操作的效率和性能。连接池通过预先创建并维护一定数量的数据库连接,使得应用程序在需要时可以...
- **C3P0**:官方推荐的连接池之一,因其稳定性和简单的配置而受到欢迎。要使用C3P0,需将`c3p0-0.8.4.5.jar`添加到类路径,并在Hibernate配置文件中设置以下属性: ```xml <property name="hibernate.connection...
本文将详细介绍如何在Tomcat中配置连接池,以实现高效的数据访问。 首先,连接池的基本概念是预创建一定数量的数据库连接,这些连接在应用启动时初始化,并在空闲时保持,以便后续的数据库操作可以快速获取到连接,...
综上所述,这个文档主要讲述了如何在Tomcat服务器上,通过Hibernate和JNDI数据源配置,使用DBCP连接池连接MySQL数据库。尽管Hibernate官方并不推荐使用DBCP,但文档仍然提供了详细的配置步骤,包括环境准备、数据库...
注意,这只是一个基础示例,实际应用中可能需要考虑更多因素,如连接池配置、事务管理、性能优化等。理解并熟练掌握这些配置,能够帮助你更有效地在Java Web环境中使用Hibernate进行数据库操作。
以下是关于Hibernate连接池配置的详细说明: 1. **使用Hibernate自带的连接池** Hibernate自身包含了一个简单的连接池实现,但它的性能并不理想,适合小型项目或测试环境。配置时,你需要在`hibernate.cfg.xml`...
c3p0是一个开源的JDBC连接池,与Hibernate一起发布,实现了JDBC3和JDBC2扩展规范。c3p0的特点包括自动测试连接的健康状况、连接池大小的动态调整以及支持预热连接等功能。配置c3p0时,用户可以设置初始化连接数量、...