日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Tomcat7和mysql连接池dbcp方式的配置方法和测试

發布時間:2025/1/21 数据库 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Tomcat7和mysql连接池dbcp方式的配置方法和测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.設計測試用的數據庫

1.新建數據庫

create database testmysql;

2.新建一個用戶信息數據表

create table test(

username varchar(20) primary key,

password varchar(20));

3.給新表插入數據信息

insert into test values('keivn','123456');

?

二.?設計局部數據源和連接池

1.在webapps目錄中新建test目錄,然后在test中分別新建WEB-INF和META-INF目錄,在WEB-INF目錄中新建classes和lib目錄,將mysql數據庫驅動文.jar放進lib目錄中這里我使用的版本是mysql-connector-java-5.1.22-bin.jar

2.在META-INF目錄中新建context.xml文件,然后將下面內容復制,保存

<?xml version='1.0' encoding='utf-8'?>

<Context>

?<Resource name="jdbc/mysql"

?????????auth="Container"

?????????driverClassName="com.mysql.jdbc.Driver"

?????????type="javax.sql.DataSource"

?????????url="jdbc:mysql://localhost:3306/testmysql"

?????????username="root"

?????????password="123456"

?????????maxActive="100"?

?????????maxIdle="30"

?????????maxWait="10000" />

</Context>

context.xml中的參數的解析如下:

???name屬性是數據源名稱,通常采取jdbc/**.

?? type屬性是數據源方式。

?? driverClassName屬性是驅動程序名稱。

?? username,password,數據庫名稱和密碼

???url:訪問的數據庫路徑

?? maxActive屬性是并發連接的最大數。設置為0則無限制。

?? maxWait屬性是等待連接的最大連接的時間。

?? maxIdle屬性是連接池中空閑的連接的個數。

??上文中的設置的 maxActive="100"說明可以最大連接的個數為100個,再建立連接,則出現異常。

??而maxIdle="30"說明當關閉數據庫時(不是真正的斷開連接,而是歸還連接池中)連接池中最大可以有空閑的連接數為30個。

??若是再有建立連接,此時若連接池中沒有空閑的連接,但是又沒有達到maxActive并發的最大連接數,則在連接池中建立連接。

?

? 3.然后在WEB-INF中新建web.xml文件,然后將下面內容復制,保存

<?xml version="1.0" encoding="UTF-8"?>

<web-app 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_3_0.xsd"

??version="3.0"

??metadata-complete="true">

??<display-name>test</display-name>

??<welcome-file-list>

????<welcome-file>test.jsp</welcome-file>

??</welcome-file-list>

??<resource-ref>

??<description>DB Connection</description>

??<res-ref-name>jdbc/mysql</res-ref-name>

??<res-type>javax.sql.DataSource</res-type>

??<res-auth>Container</res-auth>

??</resource-ref>

?

</web-app>

?4.完成后,重啟tomcat服務器。

三.編寫一個jsp頁面測試設置連接池,連接數據庫是否成功。

?在test目錄中新建test.jsp文件,然后將下面內容復制,保存

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*, javax.sql.*, javax.naming.*" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body>
<%
Connection conn=null;
PreparedStatement stmt=null;
ResultSet rs=null;

String sql=null;
String username=null;
String alias=null;
String pwd=null;
String strMsg=null;
try{
??? Context cxt = new InitialContext();
??? DataSource ds = (DataSource)cxt.lookup("java:/comp/env/jdbc/mysql");
??? conn = ds.getConnection();
??? sql="select * from? test";
??? stmt=conn.prepareStatement(sql);
??? rs=stmt.executeQuery();
??? if(rs.next()){
??????? strMsg="
連接ok";
??????? out.println(rs.getString("username"));
??out.println(rs.getString("password"));
??????? out.println("
連接ok");
??? }else{
??????? out.println("rs.next() fail");
??? }
??? rs.close();
???
} catch(Exception e){
??? out.println("連接失敗
:"+e.getMessage());
??? //e.printStackTrace();
}

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

try{
??? if(conn!=null) conn.close();
}catch(Exception e){}


%>
</body>
</html>

使用瀏覽器輸入http://localhost:8080/test/test.jsp


轉載于:https://blog.51cto.com/tlinux/1744822

總結

以上是生活随笔為你收集整理的Tomcat7和mysql连接池dbcp方式的配置方法和测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。