详解MySQL5.0
2007-11-11 13:38:14 来源:WEB开发网核心提示: 近日学习jsp(SUN企业级应用的首选)时,为连接池的问题所困,详解MySQL5.0(3),经过一番努力,终于成功了,报错org.apache(Unix平台最流行的WEB服务器平台).commons.dbcp.SQLNestedException: Cannot create JDBC driver of class
近日学习jsp(SUN企业级应用的首选)时,为连接池的问题所困,经过一番努力,终于成功了,特此为大家献上。
1.tomcat(一个很好用的JSP运行平台)5.5.12中没有admin模块,需要读者自行下载
2.tomcat(一个很好用的JSP运行平台)中配置如下
JNDI Name: jdbc/MySQL(和PHP搭配之最佳组合)
Data Source URL: jdbc:MySQL(和PHP搭配之最佳组合)://202.118.133.88/xscj
JDBC Driver Class: org.gjt.mm.MySQL(和PHP搭配之最佳组合).Driver
User Name: root
Password: ********
Max. Active Connections: 4
Max. Idle Connections: 2
Max. Wait for Connection: 500
Validation Query:
注:
1.jdbc/MySQL(和PHP搭配之最佳组合) 前纲的jdbc也可以换成其它的, MySQL(和PHP搭配之最佳组合)为连池名,可任意起,在下文中注意使用
2.jdbc:MySQL(和PHP搭配之最佳组合)://192.168.0.16/xscj xscj为对应的数据库名
也可以换成jdbc:MySQL(和PHP搭配之最佳组合)://localhost/xscj
3.JDBC Driver Class : com.MySQL(和PHP搭配之最佳组合).jdbc.Driver jdk中自带
4.User Name:为MySQL(和PHP搭配之最佳组合)中数据库管理员名
3. 下面是最关键的一点
D:tomcat(一个很好用的JSP运行平台) 5.5confcontext.xml(标准化越来越近了)
<!-- The contents of this file will be loaded for each web application -->
<Context>
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml(标准化越来越近了)</WatchedResource>
<!-- Uncomment this to disable session persistence across tomcat(一个很好用的JSP运行平台) restarts -->
<!--
<Manager pathname="" />
-->
<Resource
name="MySQL(和PHP搭配之最佳组合)/xscj"
type="javax.sql.DataSource"
password="kingsoft88"
driverClassName="com.MySQL(和PHP搭配之最佳组合).jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:MySQL(和PHP搭配之最佳组合)://202.118.133.88:3306/xscj"
maxActive="4"/>
</Context>
应相应的字段真加对了就可以了。
4.在Eclipse中编译时加入tomcat(一个很好用的JSP运行平台) 的DBCP和Pool包就不会有问题了.
测试程序如下:
<html>
<head>
<title></title>
<%
out.print("开始测试:"+"<br/>");
DataSource ds = null;
Connection con=null;
try{
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env");
//这里的数据库前文提及的Data Source URL配置里包含的数据库。
ds = (DataSource)ctx.lookup("jdbc/xscj");
con=ds.getConnection();
Statement stmt = con.createStatement();
String strSql = "select * from xs"; //表中的字段读者自行添加
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){
out.print(rs.getString(1)+"<br/>");
}
rs.close();
stmt.close();
con.close();
out.print("我的测试结束");
}
catch(Exception ex){
out.print("出现例外,信息是:”+ ex.getMessage());
ex.printStackTrace();
}
%>
</head>
<body>
</body>
</html>
总结:以上步骤均十分关键,如果有误对应错误如下
1、第一步错误,报错
org.apache(Unix平台最流行的WEB服务器平台).commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
2、第三步错误,报错
javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
3、第四步错误,报错
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket
如果有上述错误,请检查对应步骤是否正确实施
更多精彩
赞助商链接