win2k环境下基于JBOSS的J2EE开发实践-----之二、数据库连接池的配置与测试

原创 2004年04月23日 13:25:00


基于 win2k环境下的JBOSS开发实践
        之二、数据库连接池的配置与测试
说明:此节是在上一节基础之上写的,上一节中我们把JBOSS服务器配置好,并测试通过了。这一节我们来看看怎么样在JBOSS中 用Jsp和Servlet连结数据库,并使用它的连接池,你一定要在看完上节后再看这一节。

一、配置MySQL数据库

1、安装好mysql数据库,这个很简单吧,直接上www.mysql.org上下一个,然后直接安装即可,如我就是把mysql安装在C:/mysql目 录下的。设置用户为root,密码为空。

2、在mysql中创建一个数据库,名字为:test;再在此库中创建一个表,表名为tree。使用脚本如下:

create database test;
create table tree(
nodeid int(11) NOT NULL,
nodetext varchar(60),
primary key (`nodeid`) )

3、然后再此表中插入两条数据
use test;
insert into tree values('1','测试数据1');
insert into tree values('2','测试数据2');

4、下载并安装mySQL的JDBC驱动程序,去www.mysql.org下载吧。
下载后的文件名为:mysql-connector-jdbc-3.0.10-stable.zip, 用winzip解开,找到其中mysql-connector-jdbc-3.0.10-stable目录中的mysql-connector-java-3.0.10-stable-bin.jar文件, 把它拷贝到JBOSS安装目录下的Server下的lib目录中,
即copy到C:/JBOSS/server/all/lib目录中

(注意,我们这里采用的是JBOSS的 具有全部功能的启动方式,JBOSS默认有三个启动方式,用run -c <方式>来启动,这三种方式是:

all,具有全部JBOSS服务器 功能;
default,这是默认的方式;
minimal,这是最小配置方式。

这三种方式分别对就于安装目录下的Server目录听all ,default 和minimal目录)。

同时我们要注意:在JBOSS的安装目录下C:/JBOSS/下还有一个lib目录即C:/JBOSS/lib目录,这个目录中存放的是 JBOSS服务器启动时所需的所有jar包,你不能将你的任何外部jar包放入此目录。如果你想启动default,则需将jdbc驱动程序放入 C:/JBOSS/server/default/lib目录中。

5、配置JBOSS的数据库配置文件:在C:/JBOSS/server/all/deploy目录中新建一个mysql-ds.xml文件,注意,文件名一定要以 -(中划线)ds结尾,此xml文件的内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource> <jndi-name>MySql</jndi-name>
<connection-url>jdbc:mysql://10.0.0.18:3306/test</connection-url>
<driver-class>org.gjt.mm.mysql.Driver</driver-class>
<user-name>root</user-name>
<password></password>
</local-tx-datasource>
</datasources>

解说一下上面的内容:

<jndi-name>表示的是jndi名称,就是呆会在程序中查找jndi名称要用的(还记得上节中我们用的查找ejb的jndi吧,就是那个, 只不过这个是查找数据库连接池的);

<connection-url>是连接字符串,前面是固定的后面紧跟的是你的数据库所在的IP地址及 mysql默认端口,然后跟的是数据库名如test;

<driver-class>是固定的数据库驱动类库;

<user-name>是用于连接数据库的用户名,我这里用的是root,你可以用其它的

<password>是上面用户的密码,我的root用户是空密码。

一定要注意这个文件的名称和存放的位置是:C:/JBOSS/server/all/deploy/mysql-ds.xml

6、编写测试用的jsp文件。 在上一节的C:/JBOSS/myproject/jsp/hello.war目录中,新建一个testmysql.jsp文件,内容如下:

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

<html> <head> <title>测试MySql数据库</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

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

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

<%@page import="java.sql.*"%> <body> <h3>测试MySql数据库</h3>

<% InitialContext ctx = new InitialContext();

DataSource ds = (DataSource)ctx.lookup("java:/MySql");//这里要和mysql-ds.xml中对应

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM tree");

while ( rs.next() ){

out.println(rs.getString("nodetext") + "<br>");

}

conn.close();

%>

</body>

</html>

然后,把此文件所在的目录hello.war拷贝到C:/JBOSS/Server/all/deploy/目录中,如果你在上一节中己经考贝了此目录到此,则只 需把testmysql.jsp文件拷贝过来即可以了。

7、测试JSP连接数据库 重新启动JBOSS服务器,run -c all,如果你的服务器在你拷贝JDBC驱动程序到server/all/lib目录中之前己经运行,你一定要重启服 务器才行。然后在IE或其它浏览器中输入:http://localhost:8080/hello/testmysql.jsp,看看出来什么了,是不是有两行数据? 对了,这就对了。至于Servlet和EJB中使用数据库连接池的方法也是一样,这个我就不写了。自己去测试一下吧。

二、配置SQL Server2000数据库

配置SQL server数据库,并使用它的连接池过程基本一样的,我就写的简略了一些:
过程如下:

1、安装一个SQL Server 2000数据库,或你己经有了在其它电脑上也可以。设置一个用户用于连接它,我这里用sa,密码为空。

2、运行SQL Server客户端,运行以下脚本,生成数据库及表和插入数据: create database test go create table tree( nodeid int primary key, nodetext varchar(60) ) go insert into tree values('1','SQL Server测试数据1') go insert into tree values('2','SQL Server测试数据2') go

3、下载并安装SQL Server的JDBC驱动程序,下载地址为: http://www.microsoft.com/downloads/details.aspx?FamilyID=86212d54-8488-481d-b46b-af29bb18e1e5&Dis playLang=en

下载后是一个可执行的安装包,直接运行它,默认安装到
C:/Program Files/Microsoft SQL Server 2000 Driver for JDBC下面。

4、安装好后,把C:/Program Files/Microsoft SQL Server 2000 Driver for JDBC/lib目录中的三个jar文件 (msbase.jar;mssqlserver.jar;msutil.jar)拷贝到C:/JBOSS/server/all/lib目录中。

5、配置JBOSS使用MSSQL2k的配置文件,在C:/JBOSS/server/all/deploy目录中新建一个文件命名为:mssql-ds.xml, 其内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<jndi-name>MSSQL</jndi-name>
<connection-url>jdbc:microsoft:sqlserver://10.0.0.18:1433;DatabaseName=test
</connection-url>
<driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
<user-name>sa</user-name>
<password></password>
</local-tx-datasource>
</datasources>

解说就不必了,各项内容和上面mysql的基本差不多。此文件一定要放入C:/JBOSS/server/all/deploy目录中。

6、编写JSP测试文件,在在上一节的C:/JBOSS/myproject/jsp/hello.war目录中,新建一个testmssql.jsp文件,内容如下:

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

<html> <head> <title>测试SqlServer2K数据库</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

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

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

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

<body>

<h3>测试SqlServer2K数据库</h3>

<% InitialContext ctx = new InitialContext();

//这里要和mysql-ds.xml中对应

DataSource ds = (DataSource)ctx.lookup("java:/ MSSQL ");

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM tree");

while ( rs.next() ){

out.println(rs.getString("nodetext") + "<br>");

}

conn.close();

%>

</body>

</html>

然后,把此文件所在的目录hello.war拷贝到C:/JBOSS/Server/all/deploy/目录中,如果你在上一节中己经考贝了此目录到此, 则只需把testmssql.jsp文件拷贝过来即可以了。

7、测试JSP连接数据库 重新启动JBOSS服务器,run -c all,如果你的服务器在你拷贝JDBC驱动程序到server/all/lib目录中之前己经运行,你一定要 重启服务器才行。然后在IE或其它浏览器中输入:http://localhost:8080/hello/testmssql.jsp,就可以看致到有两行数据输出。 总结,在上面我们给出了如何在JBOSS中配置和使用不同数据库连接池的方法并给出了测试程序。在下面一节中,我将给出如何在 EJB中连接数据库并给出一个示例。

JBoss配置解决高并发连接异常问题

这两天一个项目在做压力测试的时候,发现只要并发数超过250个,连续测试两轮就会有连接异常出现,测试轮数越多出现越频繁,异常日志如下: Caused by: com.caucho.hessian.cl...
  • Nicholas_Lin
  • Nicholas_Lin
  • 2014年03月06日 17:36
  • 7456

Java EE开发环境的配置(eclipse Jboss MySQL)

Java EE开发环境的配置 本文中Java EE开发环境的配置以32位Windows XP操作系统为例。 1.1 JDK 7安装与配置 在Oracle官方网站下载JDK 7u45(网址为http...
  • lyh_66_
  • lyh_66_
  • 2016年12月27日 14:36
  • 1797

vs2012利用MFC开发基于对话框的小软件指南(连接Mysql数据库)

最近用MFC写了一个基于对话框的小软件,并且实现了和mysql数据库的交互。从一点不懂到写出来,费了不少周折,百度谷歌了很多资料,特写本篇博文,希望对同样在设计含界面的小软件并在学习MFC的朋友提供一...
  • u013573047
  • u013573047
  • 2016年01月27日 10:27
  • 2108

J2EE开发技术点6:Proxool数据库连接池

前言 Proxool也是目前主流的数据库连接池,Proxool是一种Java数据库连接池技术。也是sourceforge下的一个开源项目,这个项目提供一个健壮、易用的连接池,最为关键的是这个连接池提...
  • u011116672
  • u011116672
  • 2015年11月27日 17:00
  • 474

J2EE开发常用数据库连接池

J2EE开发常用数据库连接池                                                                            ********...
  • Iamagril
  • Iamagril
  • 2012年02月13日 10:43
  • 1546

j2ee数据库连接池原理分析

最近我作了JSP数据库的频繁连接,在此给出数据库连接池的必要性,对于JSP来说一个很好的J2EE服务器是很必要的,JBOOS,WebLogic都是很好的解决方案。 一般情况下,在使用开发基于数据...
  • xuaman
  • xuaman
  • 2016年12月21日 10:45
  • 164

Win 8 系统下 MyEclipse 2014版下载安装与配置——Windows J2EE开发安装序列之二

首先打开官网http://www.myeclipseide.com (可能访问不了,不解释) 点击download进入下载页面 同意协议前面点勾,选...
  • chenbean
  • chenbean
  • 2014年04月01日 15:28
  • 3214

Win 8 系统下 JBoss AS 7 Final 的下载配置与使用——Windows J2EE开发安装序列之五

一、JBOSS的下载与安装 首先进入官网下载JBoss :http://www.jboss.org/jbossas/downloads 选择最新版本,进行下载。 解压到指定目录 配置环...
  • chenbean
  • chenbean
  • 2014年03月31日 21:49
  • 1348

[J2EE]DBCP、C3P0、Proxool三大连接池的配置参数说明和使用详解

1. Apache-DBCP BasicDataSource 相关的参数说明 dataSource: 要连接的 datasource (通常我们不会定义在 server.xml)defau...
  • guchuanlong
  • guchuanlong
  • 2012年04月23日 10:08
  • 2054

Eclipse Juno(j2ee)开发环境下JBoss热部署的实现方式(暴露式部署,WTP)

如果对部署方式有疑问,请先看这个帖子: JBoss和Tomcat部署方式的区别(解释暴露式部署) 我们说一下Eclipse J2ee版本(下个WTP插件也行)自带的run on server功能,支...
  • wwwcomy
  • wwwcomy
  • 2015年10月13日 15:05
  • 573
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win2k环境下基于JBOSS的J2EE开发实践-----之二、数据库连接池的配置与测试
举报原因:
原因补充:

(最多只允许输入30个字)