• 微软原版系统

  • 一键重装系统

  • 纯净系统

  • 在线技术客服

魔法猪系统重装大师 一键在线制作启动 U 盘 PE 系统 用一键重装的魔法拯救失去灵魂的系统
当前位置:首页 > 教程 > 电脑教程

在NetBeans中设置数据库连接池教程

时间:2015年04月02日 15:34:34    来源:魔法猪系统重装大师官网    人气:5968

  以往要设置数据库连接池,需要借助于第三方软件。但现在NetBeans所带的Tomcat 5.5.7及Sun Application Server 8均可以直接设置。下面谈谈如何在Tomcat 5.5.7下设置。
  1. 下载数据库的专用连接驱动,并将其复制到C:Program Filesetbeans-4.1entERPrise1jakarta-tomcat-5.5.7commonlib文件夹下面。
  假设所用数据库是Sybase的Adaptive Server Anywhere,从Sybase官方站点下载JConnect-6_0,从中抽取出jconn3这个驱动,复制到上述文件夹下。
  2. 启动Tomcat,在IE输入http://localhost:8084/admin/,以管理员身份登录管理。用户登录的方法可参考第5楼。点击Resources下的Data Sources,在右边Data Source Actions的下拉框中选Create New Data Source,按下表示范填写:
JNDI Name: sybase/poolDB  /* 根据喜好填 */
Data Source URL: JDBC:sybase:Tds::<端口号>
/* 数据库的地址,此为jconn3的形式,端口号需查询确认,但一般都是固定的,除非自己更改 */
JDBC Driver Class: com.sybase.jdbc3.jdbc.SybDriver  /* jconn3的驱动 */
User Name: dba            /* 用户名,默认为dba */
Password: ***             /* 密码,默认为sql */
Max. Active Connections: 4      /* 最大活动连接数 */
Max. Ide Connections: 2        /* 最大空闲连接数 */
Max. Wait for Connecton: 5000     /* 等待连接的最大秒数 */
Validation Query:           /* 验证字符串,可不填 */

  按"Save",再按"Commit Changes",Tomcat在后台将此变化保存到server.XML文件中。"Commit Changes"是最容易忘记的,小心。
  3. 以下均转入NetBeans环境中设置。在context.xml修改的内容:

 

  "/Matrix"为此Web应用的根地址,表现为http://localhost:8084/Matrix。
  4. 在web.xml中加入:

Sybase Database Connection Pool
sybase/poolDB
javax.sql.DataSource
Container
Shareable

  5. 好了,可以使用连接池了。以下代码为在JSP文件中使用JSTL标签库的范例。

SELECT * FROM customer



以前习惯了用jbuilder和eclipse,也习惯了它们的那种方便的配置资源的方式。前不久看到网上的一片文章说的是NetBeans的新的功能和它的许多优于其它java集成开发环境的特性,强烈的好奇心驱使我下载并安装了NetBeans。新建了一个web项目测试了一下,真的有许多过人之处。特别是它和页面开发工具Dreamweaver配合,用DW开发页面,NB开发java程序,把两者指向一个共同的目录,修改过页面后只需要刷新就可以在浏览器中直接看到效果了,几乎不用配置什么东西。于是我现在的所有的项目都使用NB。至于其它的优点就不多说了,建议你下载并感受一下那种方便、快捷吧。

由于NB默认的是使用内置的tomcat作为web服务器,手头的一个项目对数据库的操作比较频繁,考虑用数据库连接池技术以减少程序的响应时间。以前都是直接在tomcat的管理员页面中配置数据库连接池,方便而且不容易出错。准备用同样的方法在NB中配置一下,但配置的过程中发现有一些不同之处,现在终于配置成功,写出来供大家参考。下面开始:

启动NetBeans5.5,新建一个web项目,名称任意,新建成功后会有一个自动的index.jsp页面。然后编译并运行项目,这时候会在IDE的下方有一些相关的信息,这些信息也是我们发现错误的有效途径。运行后会自动打开IE,并运行类似如下路径的jsp文件:http://localhost:8084/Try/,现在把路径端口后面的项目名删除,进入Tomcat的默认页面http://localhost:8084/,点击该页面左边的Tomcat Administration链接进入管理员的登录页面。由于Tomcat的安装是包含在NB中的,我们并没有对Tomcat的账户进行配置,所以登录请要先配置Tomcat的tomcat-users.xml文件,它所在文件夹的相对路径是:netbeans-5.5\enterprise3\apache-tomcat-5.5.17\conf。把该文件修改如下:

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




//新建







//新建






修改后就可以用admin的用户名,123123的密码登录了。登陆后展开Resources目录,选择Data Sources,单击右边Data Sourec Actions下拉菜单,选择Create New Date Sourec.分别填写其中的属性的值。JNDI Name是连接池的名字,在java程序中要用到;Data Source URL是数据库连接字串,格式为jdbc:mysql://localhost/(数据库名);JDBC Driver Class是你要使用的JDBC连接类。User Name、Password是数据库的用户名和密码;下面的三个分别是数据库最大连接数、数据库最大空闲连接数、数据库最大等待连接限制。最后一个是验证连接用的查询语句,可以不填。设定好后保存,并单击上面的Commit Changes提交。

修改C:\Documents and Settings\你的用户名
\.netbeans\5.5\apache-tomcat-5.5.17_base\conf\Catalina\localhost文件夹下的和你的项目同名的xml文件,修改后如下:

<?xml version="1.0" encoding="UTF-8"?>
docBase="D:/my_nb/Try/build/web">
"javax.sql.DataSource"/>//定义要使用的连接池


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

Connection con=null;

Statement stm=null;

ResultSet rs=null;

try{

InitialContext ctx=new InitialContext();

DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/myehow");

con=ds.getConnection();

stm=con.createStatement();

rs=stm.executeQuery("select * from ehow");

while(rs.next()){

String name=rs.getString(2);

out.println(name);

out.print("
");

}



现在就可以在项目中使用这个连接池了,下面给出一个仅供参考的数据库连接池的测试文件,如果要在项目中用的话应该写在一个bean中,数据库的内容在下面给出。测试文件如下:



}catch(Exception e){

out.print(e.getMessage());

e.printStackTrace();

}finally{

if(rs!=null){

try{

rs.close();

}catch(SQLException e){

}

}

if(stm!=null){

try{

stm.close();

}catch(SQLException e){

}

}


if(con!=null){

try{

con.close();

}catch(SQLException e){

}

}

}



%>


数据库中只有一个表,表中有两个字段,其中id是主键,int型。Name,字符型长度30。

好了,现在运行项目,就可以看到数据库中的信息了。

项目的部署:项目开发完成当然要部署到服务器上,由于NB已经为我们完成了大量的工作,只需要把数据库备份,把NB的dist文件夹下的项目名.war文件拷贝到服务器上,在服务器的Tomcat的server.xml文件任意指定一个虚拟目录就可以了(不要忘了先配置连接池!),数据库还原后,就一切OK了。


在NB运行时使用的tomcat-users.xml并不是程序目录下的那个文件,而是在C盘下的某个目录下,具体名字不记得了,自己搜索就是了


把mysql驱动包分别放到%TOMCAT_HOME%/lib 和你的应用的WEB-INF\lib文件夹下面

1、修改%TOMCAT_HOME%/conf/server.xml,添加如下内容(部分参数请本地化):



maxIdle="20" maxWait="5000" username="username" password="password" url="jdbc:mysql://localhost:3306/DataBaseName"

maxActive="100" removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"/>


2、修改对应应用的web.xml,在前添加如下内容:



重启tomcat,大功搞成!

应用实例如下:

<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>


123
<%
DataSource ds = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
//从Context中lookup数据源。
ds = (DataSource)envCtx.lookup("jdbc/query");
if(ds!=null)
{
out.println("已经获得DataSource!");
out.println("
");
Connection conn = ds.getConnection();
Statement stmt=conn.createStatement();
ResultSet rst=stmt.executeQuery("select * from cs_order");//从一个已存在的表中读取数据
out.println("以下是从数据库中读取出来的数据:
");
while(rst.next()){
out.println("
");
out.println(rst.getString(8));}

}
}
catch(Exception ne)
{
out.println("出现如下错误:
");
out.println(ne);
}

%>



-------------------------------------------------------------------------------------------

参考:

1.MySQL数据库版本:mysql-5.0.27

2.TomCat版本:6.0

3.数据库驱动程序:mysql-connector-java-XXX

4.Server.xml文件内容:


















type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />






maxThreads="150" connectionTimeout="20000"
redirectPort="8443" />




















resourceName="UserDatabase"/>



unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">








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













maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="123456" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/dbname?autoReconnect=true"/>







5:程序目录下web.xml文件内容:

<?xml version="1.0" encoding="UTF-8"?>
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



6:程序目录为:MingPian,这个文件夹的名字是和Server.xml中的debug="5" reloadable="true" crossContext="true">目录对应的,否则连接不上.

如果程序的目录为空,则这里的

我的电脑上Context.xml文件:
<?xml version="1.0" encoding="UTF-8"?>





Web.xml文件

jdbc:mysql://localhost:3306/sample [root on Default schema]
mysql/poolDB
javax.sql.DataSource
Container
Shareable


NetBeans IDE V6.9 官方简体中文版:http://www.cr173.com/soft/10288.html

在,NetBeans,中,设置,数据库,连接,池,教程,以往
栏目:电脑教程 阅读:1000 2023/12/27
Win7教程 更多>>
U盘教程 更多>>
Win10教程 更多>>
魔法猪学院 更多>>

Copyright © 2015-2023 魔法猪 魔法猪系统重装大师

本站发布的系统仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,否则后果自负,请支持购买微软正版软件。

在线客服 查看微信 返回顶部