以下是针对"eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池"的完整攻略,包括两条示例说明:
1. 配置Tomcat服务器
首先,需要在Eclipse中配置Tomcat服务器,以便将自己的web项目部署到Tomcat中进行测试。步骤如下:
- 在Eclipse中点击"Window -> Preferences"打开设置窗口。
- 选择"Server -> Runtime Environments",点击"Add"按钮添加Tomcat服务。
- 配置Tomcat的基本信息,如Tomcat的安装路径、JVM路径等。注意:Tomcat的版本应与当前使用的MyEclipse版本相符。
- 完成Tomcat服务的配置。
2. 导入数据库驱动jar包
在MyEclipse中添加数据库连接,在连接前需要导入数据库驱动jar包。下面以MySQL数据库为例,步骤如下:
- 打开MyEclipse,选择菜单栏中的"Window -> Preferences"
- 在弹出的"Preferences"对话框中,依次展开"MyEclipse -> Database->Drivers"节点,点击"New"按钮添加驱动。
- 填写MySQL驱动类的全路径:"com.mysql.jdbc.Driver"
- 将MySQL驱动jar包添加到MyEclipse指定的位置,一般放在MyEclipse安装目录下的"common\lib"目录下。
3. 配置JNDI数据源
接下来我们需要配置数据库连接池,这里以配置JNDI数据源为例,步骤如下:
- 打开Tomcat的配置文件server.xml,一般位于Tomcat下的conf目录中。
- 在\
标记之间添加如下配置:
<Resource name="jdbc/testDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
username="root" password="123456"
maxActive="20" maxIdle="10" maxWait="-1" />
- 上述配置中,name属性表示数据源的名称,需要使用JNDI名访问数据源时需要配置的名称;type属性表示数据源类型,此处为javax.sql.DataSource;driverClassName表示MySQL的驱动类名;url表示数据库连接的URL地址;username和password属性表示数据库的用户名和密码;maxActive、maxIdle、maxWait属性表示数据源最大可用连接数、最大空闲连接数和最大等待时间等参数。
4. 在项目中使用数据源
最后,我们需要在项目中使用配置的数据源,步骤如下:
- 在web项目的WEB-INF/lib目录中,添加jndi.jar和mysql-connector-java.jar两个jar包,用于JNDI和MySQL的数据库驱动。
- 在项目的context.xml文件中添加如下配置:
<ResourceLink name="jdbc/testDB" global="jdbc/testDB" type="javax.sql.DataSource"/>
-
上述配置中,name属性必须与server.xml中配置的name属性相同;global属性表示JNDI名,必须与server.xml中配置的name属性相同;type属性必须与server.xml中的type属性相同。
-
在项目中编写Java代码,使用JNDI获取数据源对象并打开数据库连接,示例代码如下:
Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/testDB");
Connection conn = ds.getConnection();
需要注意的是,在使用完数据库连接后需要显式地调用close()方法关闭连接,以便释放资源。
示例说明一:
在一个web项目中,需要同时访问MySQL和Oracle两个数据库,这时需要配置两个数据源。在Tomcat中进行如下配置:
<Resource name="jdbc/oracleDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:oracle"
username="oracleuser" password="oraclepass"
maxActive="20" maxIdle="10" maxWait="-1" />
<Resource name="jdbc/mysqlDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
username="root" password="mysqlpass"
maxActive="20" maxIdle="10" maxWait="-1" />
在项目中的context.xml文件中添加如下配置:
<ResourceLink name="jdbc/oracleDB" global="jdbc/oracleDB" type="javax.sql.DataSource"/>
<ResourceLink name="jdbc/mysqlDB" global="jdbc/mysqlDB" type="javax.sql.DataSource"/>
在Java代码中使用JNDI获取数据源对象的代码如下:
Context initContext = new InitialContext();
DataSource ds1 = (DataSource)initContext.lookup("java:/comp/env/jdbc/oracleDB");
DataSource ds2 = (DataSource)initContext.lookup("java:/comp/env/jdbc/mysqlDB");
Connection conn1 = ds1.getConnection();
Connection conn2 = ds2.getConnection();
示例说明二:
在一个web项目中,需要使用连接池来管理数据库的连接并发访问,以提高系统的性能。在Tomcat中进行如下配置:
<Resource name="jdbc/testDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
username="root" password="123456"
maxActive="50" maxIdle="10" maxWait="-1"
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" timeBetweenEvictionRunsMillis="60000"/>
在上述配置中,maxActive属性表示最大可用连接数,maxIdle属性表示最大空闲连接数,maxWait属性表示等待连接的最大时间(单位:毫秒),validationQuery属性表示验证查询语句,testOnBorrow属性表示获取连接时是否检查连接的有效性,timeBetweenEvictionRunsMillis属性表示验证周期(单位:毫秒)。
在Java代码中使用连接池的代码如下:
Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/comp/env/jdbc/testDB");
Connection conn = ds.getConnection();
需要注意的是,使用连接池来管理数据库连接时,每次操作数据库都应该及时地关闭连接,以便释放资源。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池 - Python技术站