欢迎光临
我们一直在努力

Tomcat配置SQLServer连接池-JSP教程,数据库相关

建站超值云服务器,限时71元/月

1. 进入tomcat目录下的conf文件夹目录里,找到server.xml

在tomcat的server.xml文件中在</context>标签与</host>标签里,定议连接语句,格式如下

<!—path定议你的应用程序的目录所 ,/dbtest表示在tomcat webapps目录下à

<!—docbase=”dbtest” 表示你执行止程序时路径名称,例如以下的执行路径就是http://localhost:8080/dbtest–>

<context path="/dbtest" docbase="dbtest"

debug="5" reloadable="true" crosscontext="true">

<!– maxactive: 连接池的最大数量,要确保有足够的连接数–>

<!– maxidle: 最大空闲连接数,设置为-1即表示不限制–>

<!– maxwait:最长等待连接时间(最大等待连接池反回可用的时间), 以纳秒为单位,即设为10000相等于10秒,如果设置成-1表示不确定–>

<!– username and password: 连接数据库使用的帐号与密码 –>

<!– driverclassname:连接数据库的驱动程序,如sqlserver就是

com.microsoft.jdbc.sqlserver.sqlserverdriver.–>

<!– url: 连接数据库路径,如

jdbc:microsoft:sqlserver://localhost:1433;databasename=kb_rate–>

<resource name=" default_jdbc " auth="container" type="javax.sql.datasource"

maxactive="100" maxidle="30" maxwait="10000"

username="javauser" password="javadude"

driverclassname=" com.microsoft.jdbc.sqlserver.sqlserverdriver "

url=" jdbc:microsoft:sqlserver://localhost:1433;databasename=kb_rate""/>

</context>

配置完成后,在dbtest目录下添加一个test文件,如下:

<%@ page contenttype="text/html;charset=gb2312"%>

<%@ page import="java.sql.*"%>

<%@ page import="javax.sql.*"%>

<%@ page import="javax.naming.*"%>

<%

connection conn = null;

context initctx = new initialcontext();

if (initctx == null)

throw new exception("不能获取context!");

context ctx = (context) initctx.lookup("java:comp/env");

object obj = (object) ctx.lookup("/default_jdbc ");//获取连接池对象

javax.sql.datasource ds = (javax.sql.datasource) obj; //类型转换

conn = ds.getconnection();

statement stmt = conn.createstatement();

preparedstatement ps=conn.preparestatement("select * from finalorderdata");

resultset rs=ps.executequery();

while(rs.next()){

out.println(rs.getstring(1)+"<br>");

i++;

}

rs.close();

stmt.close();

conn.close();

out.println("连接池测试成功"+i);

到于tomcat5.0版本的设置也是差不多,不过在server.xml中添加连接池设置语句上有所有不,可参考

http://jakarta.apache.org/tomcat/tomcat-5.0-doc/jndi-datasource-examples-howto.html

其它操作也是差不多,

<context path="/dbtest" docbase="dbtest"

debug="5" reloadable="true" crosscontext="true">

<context path="/dbtest" docbase="dbtest"

debug="5" reloadable="true" crosscontext="true">

<logger classname="org.apache.catalina.logger.filelogger"

prefix="localhost_dbtest_log." suffix=".txt"

timestamp="true"/>

<resource name="jdbc/testdb"

auth="container"

type="javax.sql.datasource"/>

<resourceparams name="jdbc/testdb">

<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.basicdatasourcefactory</value>

</parameter>

<!– maximum number of db connections in pool. make sure you

configure your mysqld max_connections large enough to handle

all of your db connections. set to 0 for no limit.

–>

<parameter>

<name>maxactive</name>

<value>100</value>

</parameter>

<!– maximum number of idle db connections to retain in pool.

set to -1 for no limit. see also the dbcp documentation on this

and the minevictableidletimemillis configuration parameter.

–>

<parameter>

<name>maxidle</name>

<value>30</value>

</parameter>

<!– maximum time to wait for a db connection to become available

in ms, in this example 10 seconds. an exception is thrown if

this timeout is exceeded. set to -1 to wait indefinitely.

–>

<parameter>

<name>maxwait</name>

<value>10000</value>

</parameter>

<!– mysql db username and password for db connections –>

<parameter>

<name>username</name>

<value>javauser</value>

</parameter>

<parameter>

<name>password</name>

<value>javadude</value>

</parameter>

<!– class name for the old mm.mysql jdbc driver – uncomment this entry and comment next

if you want to use this driver – we recommend using connector/j though

<parameter>

<name>driverclassname</name>

<value>org.gjt.mm.mysql.driver</value>

</parameter>

–>

<!– class name for the official mysql connector/j driver –>

<parameter>

<name>driverclassname</name>

<value>com.mysql.jdbc.driver</value>

</parameter>

<!– the jdbc connection url for connecting to your mysql db.

the autoreconnect=true argument to the url makes sure that the

mm.mysql jdbc driver will automatically reconnect if mysqld closed the

connection. mysqld by default closes idle connections after 8 hours.

–>

<parameter>

<name>url</name>

<value>jdbc:mysql://localhost:3306/javatest?autoreconnect=true</value>

</parameter>

</resourceparams>

</context>

有不足的地方,请各为指正!

还有,的就是请大虾门可以告诉一下小弟,如何设置法才能让连接池做到最高效,因为我试过用tomcat连接池连池,发现比较慢,反应较久,我不知道设错了那里,,!!我的设置如下:

<context path="/kb_rate" docbase="/kb_rate"

debug="5" reloadable="true" crosscontext="true">

<resource name="default_jdbc" auth="container" type="javax.sql.datasource"

maxactive="100" maxidle="30" maxwait="10000"

username="sa" password="1234"

driverclassname="com.microsoft.jdbc.sqlserver.sqlserverdriver"

url="jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=kb_rate"/>

</context>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Tomcat配置SQLServer连接池-JSP教程,数据库相关
分享到: 更多 (0)

相关推荐

  • 暂无文章