http连接mysql+服务器配置_官方网站tomcat连接Mysql连接池配置

用红字标出各配置名称的不同,以便理解。

官网地址:http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html

0. Introduction

Versions of MySQL and JDBC drivers that have been reported to work:

MySQL 3.23.47, MySQL 3.23.47 using InnoDB,, MySQL 3.23.58, MySQL 4.0.1alpha

Connector/J 3.0.11-stable (the official JDBC Driver)

mm.mysql 2.0.14 (an old 3rd party JDBC Driver)

Before you proceed, don't forget to copy the JDBC Driver's jar into $CATALINA_HOME/lib .

1. MySQL configuration

Ensure that you follow these instructions as variations can cause problems.

Create a new test user, a new database and a single test table. Your MySQL user must have a password assigned. The driver will fail if you try to connect with an empty password.

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

mysql> GRANT ALL PRIVILEGES ON *.* TO javauser@localhost

-> IDENTIFIED BY 'javadude' WITH GRANT OPTION;

mysql> create database javatest

;

mysql> use javatest

;

mysql> create table testdata

(

-> id int not null auto_increment primary key,

-> foo varchar(25),

-> bar int);

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

Note: the above user should be removed once testing is complete!

Next insert some test data into the testdata table.

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

mysql> insert into testdata values(null, 'hello', 12345);

Query OK, 1 row affected (0.00 sec)

mysql> select * from testdata;

+----+-------+-------+

| ID | FOO | BAR |

+----+-------+-------+

| 1 | hello | 12345 |

+----+-------+-------+

1 row in set (0.00 sec)

mysql>

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

2. Context configuration

Configure the JNDI DataSource in Tomcat by adding a declaration for your resource to your Context .

For example:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

debug="5" reloadable="true" crossContext="true">

maxActive="100" maxIdle="30" maxWait="10000"

username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost:3306/javatest

?autoReconnect=true"/>

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

自已加入说明: 例:Context path="/x" docBase="F:/我的文档/jsp" debug="0" / 怎么理解?

path的值是用于浏览器防问的URL,比如上例中就可以通过/x访问,完全URL:

3. web.xml configuration

Now create a WEB-INF/web.xml for this test application.

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

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"

version="2.4">

MySQL Test App

DB Connection

jdbc/TestDB

javax.sql.DataSource

Container

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

4. Test code

Now create a simple test.jsp page for use later.

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

select id, foo, bar from testdata

DB Test

Results

Foo ${row.foo}

Bar ${row.bar}

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

That JSP page makes use of JSTL 's SQL and Core taglibs. You can get it from Sun's Java Web Services Developer Pack or Jakarta Taglib Standard 1.1 project - just make sure you get a 1.1.x release. Once you have JSTL, copy jstl.jar and standard.jar to your web app's WEB-INF/lib directory.

Finally deploy your web app into $CATALINA_BASE/webapps either as a warfile called DBTest.war or into a sub-directory called DBTest

Once deployed, point a browser at http://localhost:8080/DBTest /test.jsp to view the fruits of your hard work.

===========================

从上例中可以看到:

1.真实的连接数据库,在context.xml中的 要和web.xml中的jdbc/TestDB 相对即可。在使用时,也用 dataSource="jdbc/T estDB " 就行了,而不是使用真实的连接 jdbc/javatest

3. 在 中,path的值是用于浏览器防问的URL,比如上例中就可以通过/x访问,完全URL:

有一点不是很明白,如果docBase不写目录,直接写名字代表什么呢?从网上搜索了一下:

如:

ROOT 是相对于前面 中的 appBase 的,即它应该是

/home/www/html 中的一个目录。当然你可以用完全的目录名,这样就不是相对 appBase 而言的了,比如说: 这个配置与你的配置效果一样。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值