Tomcat 6.0配置SQL Server2005数据源总结

配置流程:
(1) 将sqljdbc.jar包放到项目下(最好在Tomcat的lib目录下也放一份,很多时候报错很可能是Tomcat的lib目录下买有sqljdbc.jar包)
(2) 配置Tomcat 6.0\conf\context.xml,具体代码如下:
<?xml version='1.0' encoding='utf-8'?>
<Context>
<Resource name="jdbc/SQLServer2005"

       auth="Container" type="javax.sql.DataSource"  maxActive="100" 

       maxIdle="30" maxWait="10000"   username="sa"   password="123456"

      driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" 

     url="jdbc:sqlserver://localhost:1433;DatabaseName=MasDB"/>

</Context>

注意:
这里的name、username、password、以及url中的端口号(默认为1433)都是需要你自己进行修改配置的
(3) 配置项目WEB-INF\web.xml,添加代码如下:
<resource-ref>
<description>SQL Server 2005 Connection</description>
<res-ref-name>jdbc/SQLServer2005</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
注意:
<res-ref-name>jdbc/SQLServer2005</res-ref-name>
即为Resource配置中的name属性

(4) 编写工具类
public class DBTool {
public static Connection getConn() {
Connection conn=null;
try {
Context initContext = new InitialContext();
Context envCtx=(Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/SQLServer2005");
conn = ds.getConnection();
} catch (NamingException e) {
e.printStackTrace();
return null;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
return conn;
}
}

(5) Tomcat的数据源是无法在JVM中进行访问的,所以要进行测试是否连接成功,需要编写一个JSP页面,测试代码:
<%
    try{
Connection con=DBTool.getConn();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from tbl_Operator");
while(rs.next()){
out.println(rs.getString(2));
}
rs.close();
st.close();
con.close();
     }catch(Exception e){
     e.printStackTrace();
     }
     %>
注意:
在每次进行完数据库操作后,请关闭和数据库的连接,否则有时候因为没有关闭连接,会产生一些错误。当访问第一该页面的时候没有报错,但是访问第二次的时候页面报错了,请检查与数据库的连接是否关闭了。

在配置数据源中遇到的一些错误:
错误1:
2011-4-4 20:01:35 com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>
警告: Failed to load the sqljdbc_auth.dll
解决方法:
到http://d.download.csdn.net/down/1870028/liangjidian下载一个x86的sqljdbc_auth.dll文件,然后放到C:\Windows\system32目录下

错误2:
'用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联
解决方法:
(1) 检查SQL Server 2005中是否允许SQL Server和Window身份验证模式登陆
操作步骤:
1。在企业管理器中,展开"SQL Server组",鼠标右键点击SQL Server服务器的名称
2。选择"属性"
3。再选择"安全性"选项卡
4。在"身份验证"下,选择"SQL Server和 Windows"
5。确定,并重新启动SQL Server服务

(2) 检查TCP-IP连接是否打开,检查1433端口号是否打开
操作步骤:
1. 打开Microsoft SQL Server 2005-->配置工具-->SQL Server Configuration Manager,看到左侧的'SQL Server 2005 网络配置',点击'SQLEXPRESS的协议',检查右侧的'TCP/IP'协议的状态是否为已启用。
2. 双击'TCP/IP'协议,弹出属性对话框,切换到'IP地址'选项卡。展开'IPAll',检查'TCP端口'是否是Web应用中请求连接数据库的端口号,一般端口号默认为1433,若没有请填入。 


3. 对话框确定后会提示停止并重启相应服务

 

你可能感兴趣的:(SQL Server)