准备工作:
1首先安装软件并配置jdk和tomcat的环境变量,tomcat的安装路径为C:\Tomcat5
2在mysql中建立名称为mytest数据库
3在C:\Tomcat5\common\lib目录下添加mysql数据驱动
mysql-connector-java-3.1.8-bin.jar如果要连接别的数据库在这里添加其他的数据库驱动
开始配置:
1在C:\Tomcat5\conf\Catalina\localhost目录下建立名称为jspdev.xml的文件
代码内容如下
factory
org.apache.commons.dbcp.BasicDataSourceFactory
driverClassName
com.mysql.jdbc.Driver
url
jdbc:mysql://localhost/mytest?useUnicode=true&characterEncoding=GB2312
username
root
password
maxActive
20
maxIdle
10
maxWait
-1
此段代码为设置web应用程序的jndi数据源属性以及其虚拟目录。我的程序所放目录为D:\work_space\mytest\jspdev,虚拟目录的名称为jspdev
2在D:\work_space\mytest\basetag目录下建立测试数据源连接的文件名称为test.jsp,代码如下
DataSourse Connection Testtry{
java.sql.Connection con;
Statement stmt;
ResultSet rs;
Context ctx = new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/jspdev");
con=ds.getConnection();
stmt=con.createStatement();
rs=stmt.executeQuery("select * from table1");
while(rs.next()){
out.print(rs.getInt(1);
out.print(rs.getString(2));
}
rs.close();
stmt.close();
con.close();
}catch(Exception e){
out.print(e.getMessage());
}
%>
注意:以下为连接其他数据库的连接改动字符串。
一,连接到sqlserver数据库
首先添加数据库连接驱动msbase.jar,mssqlserver.jar,msutil.jar放入tomcat的C:\Tomcat5\common\lib目录下。
更改C:\Tomcat5\conf\Catalina\localhost目录下jspdev.xml文件中
driverClassName
com.microsoft.jdbc.sqlserver.SQLServerDriver
urljdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=mytest
这些部分的内容,并修改数据库连接的用户名和密码。
二,连接到orcale数据库
与连接sqlserver数据库相同,更改jspdev.xml文件中的数据库驱动和连接字符串为
oracle.jdbc.driver.OracleDriver
dbc:oracle:thin:@127.0.0.1:1521:databasename
并在C:\Tomcat5\common\lib目录下添加数据库驱动文件ojdbc14.jar
三,在jsp页面中我们也可以通过javabean来调用数据库连接,代码如下
DataBaseConnection.java
package com;
import java.sql.*;
import javax.naming.InitialContext;
import javax.naming.Context;
import javax.sql.DataSource;
//连接数据库的工具类。
public class DataBaseConnection
{
/**
*一个静态方法,返回一个数据库的连接。
*这样达到了对数据库连接统一控制的目的。
*/
public static Connection getConnection()
{
Connection con=null;
try
{
Context ctx = new InitialContext();
DataSourceds=(DataSource)ctx.lookup("java:comp/env/jdbc/jspdev");
con=ds.getConnection();
if (ds!=null)
{
con=ds.getConnection();
}
}
catch(Exception e)
{
e.printStackTrace();
}
return con;
}
}