我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Tomcat中数据库连接池如何设置与应用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Tomcat中数据库连接池如何设置与应用

这篇文章主要介绍了Tomcat中数据库连接池如何设置与应用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

配置:Tomcat5.5+JEE(jsdk1.5)+WINXP

还是简单的说一说文件配置:
1:修改%tomcat%/conf/server.xml在

后加如下内容.
     <Resource
name="jdbc/DBPool" //数据源名称
     type="javax.sql.DataSource"
     password="xxxxxxxx"
     driverClassName="com.mysql.jdbc.Driver"
     maxIdle="2"
     maxWait="5000"
     username="root"
     url="jdbc:mysql://127.0.0.1:3306/hptest"
     maxActive="4"/>
2.修改%tomcat%/conf/context.xm;在后加
  <ResourceLink
name="jdbc/DBPool"
  type="javax.sql.DataSource"
  global="jdbc/DBPool"/>
3.修改%tomcat%/conf/web.xml

   MySQL DB Connection Pool
   jdbc/DBPool
   javax.sql.DataSource
   Container
   Shareable

 这样配置就算差不多了.如果具体的还不懂可见上次发的文章.
4.写一个程序测试.(写一个WEB程序)
  我的是Myeclipse 写的程序,这里不能从电脑上贴图真有点不方便(我想哭).
    1:写一个连接类:    
 DBPool.java
package com.test;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DBPool {
   private static DataSource pool;
   static {
        Context env = null;
         try {
             env = (Context) new InitialContext().lookup("java:comp/env");
             pool = (DataSource)env.lookup("jdbc/DBPool");
             if(pool==null)
                 System.err.println("'DBPool' is an unknown DataSource");
              } catch(NamingException ne) {
                 ne.printStackTrace();
         }
     }
   public static DataSource getPool() {
       return pool;
   }
 
}
   2:写一个Servlet:  
 其中有是用来连接数据库和显示查询结果.
 Mytest.java
 package com.test;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Mytest extends HttpServlet {

   
   public Mytest() {
       super();
   }

   
   public void destroy() {
       super.destroy(); // Just puts "destroy" string in log
       // Put your code here
   }

   
   public void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {

       response.setContentType("text/html;charset=gb2312");
       PrintWriter out = response.getWriter();
       String id=(String)request.getParameter("id");
       Connection con=null;
       try{
           
           con=DBPool.getPool().getConnection();
            Statement stmt=con.createStatement();
               ResultSet rst=stmt.executeQuery("select * from userinf where userid='"+id+"'");
                 if(rst.next()){
                                         out.println("
ID号:"+rst.getInt("userid"));
                     out.println("
用户名:"+com.test.ASSICTOGBR2312.trans(rst.getString("name")));
                     out.println("
地址:"+rst.getString("address" ));
                     out.println("
生日"+rst.getDate("year" ));
                 }
                 else{
                 out.println("没有这个ID");
                 stmt.close();
                 }
       }
       catch(Exception e){
           e.printStackTrace();
       }
       finally{  //一定要注意这里对数据库的关闭不然
                            //自己想了
           try{
               if(con!=null){
                   con.close();
               }
               
           }
         catch(Exception e){
          e.printStackTrace();
         
      }
           
       }
   
   }

   
   public void doPost(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
       doGet(request,response);
       
   }

   
   public void init() throws ServletException {
       // Put your code here
   }

}
     3:写一个JSP页面:
        Myjsp.jsp
   
<%@ page="" language="java" import="java.util.*" pageencoding="gb2312">
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>



 
   
   
   My JSP 'MyJsp.jsp' starting page
   
   
   
   
   
   
   
   <!--
   
   --&gt
 
 
 
 
   This is my JSP page.

   

   print input search id:
   
   

 

  4:其中有转字,为了不显示乱码
   package com.test;

import java.io.*;
public class ASSICTOGBR2312 {
     public static String trans(String ass){
         String res=null;
         byte temp[];
         try{
             temp=ass.getBytes("iso-8859-1");
             res=new String(temp);
         }
         catch(UnsupportedEncodingException en) {
             System.out.println(en.toString());
         }
         
       
         
         return res;
   
     }
}


  5:web.xml

 
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 
   This is the description of my J2EE component
   This is the display name of my J2EE component
   Mytest
   com.test.Mytest
 


 
   Mytest
   /servlet/Mytest
 




  6: 其中数据库结构如下:
     数据库名:hptest
     表:userinf
     用下面的命令建一个数据库和表
     create database hptest;
     create table  userinf (
      userid int(4) not null,
      name char(10) not null,
      address varchar(50),
      year date,
      constraint fk_userinf primary key(userid));
      )
      insert into userinf values(19,'hp','cq','1982-10-22');

感谢你能够认真阅读完这篇文章,希望小编分享的“Tomcat中数据库连接池如何设置与应用”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Tomcat中数据库连接池如何设置与应用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何设置Golang数据库连接池的大小?

Golang数据库连接池设置多少?数据库连接池是一种管理和复用数据库连接的技术,可以提高应用程序对数据库的访问效率。在使用Golang编写数据库应用程序时,连接池的设置非常重要,它直接影响程序的性能和稳定性。在Golang中,可以使用第
如何设置Golang数据库连接池的大小?
2024-01-29

如何为 Golang 数据库连接配置连接池?

如何为 go 数据库连接配置连接池?使用 database/sql 包中的 db 类型创建数据库连接;设置 maxopenconns 以控制最大并发连接数;设置 maxidleconns 以设定最大空闲连接数;设置 connmaxlifet
如何为 Golang 数据库连接配置连接池?
2024-05-14

Druid数据库连接池如何使用

这篇文章主要介绍了Druid数据库连接池如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Druid数据库连接池如何使用文章都会有所收获,下面我们一起来看看吧。概述1.数据库连接池是个容器,负责分配、管理数
2023-07-05

sqlite数据库连接池如何使用

SQLite数据库是一种轻量级的数据库,不支持连接池。每个连接都是一个独立的数据库文件,因此在SQLite中并不需要使用连接池。如果你想在Python中使用SQLite数据库,可以使用sqlite3模块来连接数据库并执行操作。以下是一个简
sqlite数据库连接池如何使用
2024-04-09

c3p0数据库连接池如何进行配置

这篇文章将为大家详细讲解有关c3p0数据库连接池如何进行配置,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。c3p0的配置方式分为三种,分别是1.setters一个个地设置各个配置项2.类路径
2023-05-31

MariaDB中如何管理数据库连接池

在MariaDB中,可以使用以下方法来管理数据库连接池:使用连接池管理工具:可以使用像Apache Commons DBCP、C3P0、HikariCP等连接池管理工具来管理数据库连接池。这些工具可以帮助你配置连接池的参数,监控连接的状态,
MariaDB中如何管理数据库连接池
2024-04-09

使用druid如何实现配置数据库连接池

本篇文章为大家展示了使用druid如何实现配置数据库连接池 ,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。druid的配置项如下配置缺省值说明name 配置这个属性的意义在于,如果存在多个数据源,监
2023-05-31

oracle数据库连接数如何设置

在Oracle数据库中,连接数是通过参数SESSIONS来控制的。SESSIONS参数定义了数据库实例中同时可以有多少个用户连接。可以通过以下步骤来设置连接数:进入Oracle数据库管理工具(如SQL*Plus或者SQL Developer
oracle数据库连接数如何设置
2024-04-09

mysql数据库连接数如何设置

MySQL数据库连接数可以通过修改配置文件中的max_connections参数来设置。这参数控制着数据库实例所允许的最大同时连接数。要修改这个参数,可以按照以下步骤进行:找到MySQL配置文件my.cnf。这个文件通常位于/etc/mys
mysql数据库连接数如何设置
2024-05-09

在Python数据库连接池中如何创建请求连接

在Python数据库连接池中如何创建请求连接,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在Python数据库连接池中操作过程中如果你设置好了连接池,你就可以按
2023-06-17

Oracle数据库连接方式配置与应用

Oracle数据库连接方式配置与应用Oracle数据库作为一款业界知名的关系型数据库管理系统,具备强大的数据管理和数据处理能力,广泛应用于企业级系统中。在实际开发和应用中,如何正确配置数据库连接方式并合理应用是至关重要的。本文将介绍Ora
Oracle数据库连接方式配置与应用
2024-03-07

proxool数据库连接池如何在Java项目中使用

今天就跟大家聊聊有关proxool数据库连接池如何在Java项目中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Proxool是一种Java数据库连接池技术。sourceforg
2023-05-31

编程热搜

目录