基于 MySQL 和 SQL SERVER 下的 Tomcat 数据连接池的配置及应用示范

24 篇文章 0 订阅

实际上MySQL和SQL SERVER 两种数据库连接方式非常非常类似

编码格式使用 URIEncoding="UTF-8"各位可根据自己的需要设置成GBK或者GB2312,但我个人强烈建议全部统一为UTF-8

 

先例举MySQL数据连接池设置:

 

1.将 mysql 的驱动文件mysql.jar复制到tomcat/lib

2.编辑 web 应用中的目录 META-INF/context.xml 文件,内容如下

<Context path="/webapp" URIEncoding="UTF-8">
  <Resource name="jdbc/myjdbc"
  auth="Container"
  description="DB Connection"
  driverClassName="com.mysql.jdbc.Driver"
  maxActive="500"
  maxIdle="30"
  maxWait="10000" 
  type="javax.sql.DataSource" 
  username="sqluser1"
  password="123456"
  url="jdbc:mysql://192.168.1.2:3306/mydb?autoReconnect=true"
  />
</Context>

 

webapp:你的应用名称

mydb:MySQL 内 Database 的名称

com.mysql.jdbc.Driver:所使用的驱动,来自倒入的 mysql 的 jar 文件

 

3.编辑 web 应用中的目录 WEB-INF/web.xml 内容如下

 

  <resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/myjdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>

 

至此,针对 MySQL 的数据连结池配置完成

 

例举 SQL SERVER 数据连接池设置:

 

1.将 sqlserver 的驱动文件 sqljdbc.jar复制到tomcat/lib

2.编辑 web 应用中的目录 META-INF/context.xml 文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/webapp1" URIEncoding="UTF-8">
  <Resource
    description="DB Connection"
    driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    maxActive="500"
    maxIdle="30"
    maxWait="10000"
    name="jdbc/msjdbc"
    auth="Container"
    type="javax.sql.DataSource" 
    username="sqluser2"
    password="123456"
    url="jdbc:sqlserver://localhost:1433;databaseName=mydb"
  /> 
</Context>
3.编辑 web 应用中的目录 WEB-INF/web.xml 内容如下

<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/msjdbc</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>

至此,针对 SQL SERVER 的数据连结池配置完成,使用微软JDBC1.2版本,同时兼容2000和2005,本人实际测试通过。

 

 

连接池调用部分代码如下:

 

import java.sql.*;

import javax.sql.*;

import javax.naming.*;

 

...

...

 

    Connection con;
    Statement stmt;
    ResultSet rs;

    try
    {
      // 连接数据库
      Context ctx = new InitialContext ();

      // 以下两种连接方式根据连接MySQL还是SQLSERVER来决定采用,只选择其中一种

      DataSource ds = (DataSource) ctx.lookup ("java:comp/env/jdbc/myjdbc");  //  MySQL 使用

      DataSource ds = (DataSource) ctx.lookup ("jdbc/msjdbc");  //  SQLSERVER 使用


      con = ds.getConnection ();
      // 创建 JDBC 申明
      stmt = con.createStatement ();

      /* stmt = con.createStatement (ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);  // sql server 下如果存在 last 或者 first 方法则使用 */

      try
      {

        // SQL 命令构建

        String SqlCmdText = "select * from message_text";

        // 执行SQL命令

        rs = stmt.executeQuery (sqlCmdSelect);

        // 遍历所有记录

        while ( rs.next()

        {

                String OutText = rs.getString("fieldname");

                ......

                ......
        }

        // 资源释放        
        if ( rs != null )
        {
          rs.close ();
        }


      }
      catch (Exception e)
      {
      }

      // 资源释放

      if (stmt != null)
      {
        stmt.close ();
      }
      if (con != null)
      {
        con.close ();
      }
    }
    catch (Exception e)
    {
    }

// 完成

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
配置 JDBC 连接池,你需要遵循以下步骤: 1. 导入连接池相关的库:通常你需要引入连接池的库,比如 Apache Commons DBCP、HikariCP 或者 BoneCP。你可以根据自己的需求选择适合的连接池库。 2. 配置数据源:在你的应用程序的配置文件中,你需要指定连接池数据源。这包括数据库的 URL、用户名、密码等信息。 3. 配置连接池属性:根据使用连接池库,你可以设置一些连接池的属性,比如最大连接数、最小空闲连接数、连接超时时间等。这些属性可以根据你的应用程序的需求进行调整。 4. 获取连接:在你的代码中,你可以通过连接池来获取数据库连接。连接池会管理这些连接的创建和释放,确保连接的复用和高效。 下面是一个使用 Apache Commons DBCP 连接池的示例: 1. 导入连接池库: ``` <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-dbcp2</artifactId> <version>2.8.0</version> </dependency> ``` 2. 在配置文件中配置数据源: ``` db.url=jdbc:mysql://localhost:3306/mydatabase db.username=username db.password=password ``` 3. 配置连接池属性: ``` import org.apache.commons.dbcp2.BasicDataSource; BasicDataSource dataSource = new BasicDataSource(); dataSource.setUrl("jdbc:mysql://localhost:3306/mydatabase"); dataSource.setUsername("username"); dataSource.setPassword("password"); dataSource.setMaxTotal(10); dataSource.setMaxIdle(5); ``` 4. 获取连接: ``` import java.sql.Connection; import java.sql.SQLException; import org.apache.commons.dbcp2.BasicDataSource; BasicDataSource dataSource = new BasicDataSource(); // 配置数据源属性 try (Connection connection = dataSource.getConnection()) { // 使用连接进行数据库操作 } catch (SQLException e) { // 异常处理 } ``` 这是一个基本的配置连接池的过程,你可以根据实际需要进行调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值