喜悦国际村's Archiver

wyw5257 发表于 2003-11-6 09:26 PM

jdbc连接mysql数据库!!!

[code]
<%@ page contentType="text/html;charset=??????"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/root?user=root&password=&useUnicode=true&characterEncoding=8859_1";
//testDB为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from mybbslist";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
[/code]


这段代码测试连接数据库,为什么不行???
报错:
[code]
org.apache.jasper.JasperException: org.gjt.mm.mysql.Driver
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
        at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
        at java.lang.Thread.run(Thread.java:534)
[/code]

用的是mm.mysql.jdbc-2.0pre5,放在了d盘根目录,
然后在环境变量里设置了CLASSPATH=d:\mm.mysql.jdbc-2.0pre5
那里的原因,请教各位大侠。。。

ljcao 发表于 2003-11-7 12:02 AM

哪位知道啊,偶新手!

wyw5257 发表于 2003-11-7 05:40 PM

Re: jdbc连接mysql数据库!!!

[QUOTE][i]最初由 wyw5257 发布[/i]
[B][code]
<%@ page contentType="text/html;charset=??????"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://loc...以下省略 [/B][/QUOTE]

求助!!!

wyw5257 发表于 2003-11-7 06:12 PM

现在换了个旧的mm.mysql.jdbc-1.2c
将他放到了jsdk下的lib文件夹中,以前设定的jdk的classpath目录
结果测试页一直处于读取状态,各位大侠帮忙呀!!!

wyw5257 发表于 2003-11-7 08:09 PM

问题解决了

下了个mysql-connector-java-3.0.8-stable-bin.jar
直接放到Common\lib虚拟目录下的WEB-INF\lib下就可以了
不一定需要将其路径添加到环境变量里
有这方面的问题可以互相交流啊:)

开心果 发表于 2003-11-15 06:37 AM

String url ="jdbc:mysql://localhost/root?user=root&password=&useUnicode=true&characterEncoding=8859_1";

先把root?改为testDB?,不行我再往下看^_^

l乐天 发表于 2003-11-16 11:38 PM

[QUOTE][i]最初发布[/i]
[B]下了个mysql-connector-java-3.0.8-stable-bin.jar
直接放到Common\lib虚拟目录下的WEB-INF\lib下就可以了
不一定需要将其路径添加到环境变量里
有这方面的问题可以互相交流啊 [/B][/QUOTE]


我也用的mysql-connector-java-3.0.8-stable-bin.jar
和tomcat-4.1.27,我的结果是如果不加入环境变量里,JAVA文件在别的目录就不能执行(能编译),如果不放到Common\lib里,确实,JSP网页不执行。不过我只是放在Common\lib里了。你为什么还要弄个WEB-INF\lib,你用的是TOMCAT么?
还有,mysql-connector-java-3.0.8-stable-bin.jar的文档,让放在环境变量里就行,或者放在JDK里,你是怎么知道放在Common\lib里的,
文档原文:Once you have un-archived the distribution archive, you can install the driver in one of two ways: Either copy the "com" and "org" subdirectories and all of their contents to anywhere you like, and put the directory holding the "com" and "org" subdirectories in your classpath, or put mysql-connector-java-[version]-bin.jar in your classpath, either by adding the FULL path to it to your CLASSPATH enviornment variable, or by copying the .jar file to $JAVA_HOME/jre/lib/ext. If you are going to use the driver with the JDBC DriverManager, you would use "com.mysql.jdbc.Driver" as the class that implements java.sql.Driver.
其中:by copying the .jar file to $JAVA_HOME/jre/lib/ext,这里。
这个我没试,就是加入环境变量里。

qsy_627 发表于 2004-4-13 03:26 PM

这个问题我前几天也碰到了,JDBC放在CLASSPATH上没什么用啊,把tomcat换成最新版就可以了,或者把jdbc放在web-inf/lib下

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.