关于java连接数据库的三个jar包。

超江 2012-06-07 10:10:57
捣腾了很久。我用的是mysql5,连接数据的jar包是mysql-connector-java-5.0.7.jar
最近自学servlet时,看视频说要导入三个包到tomcat的lib目录下,需要的另外两个包是什么呢?
aspectjtools-1.5.3.jar+mysql-connector-java-5.0.7-bin-g.jar
我试了一下。不行,控制台出现一大堆trace。。求大神指教。。不想倒在起跑路上。。谢谢解答。。
...全文
1222 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
北辰辰 2013-06-14
  • 打赏
  • 举报
回复
我用得是Sql2000,数据库连接不成功!求指导!这是我连接代码 import java.lang.Class; import java.sql.*; import javax.sql.DataSource; public class Database { public static Connection cn=null; public static Statement st=null; public static ResultSet rs=null; public static boolean joinDB() { boolean joinFlag; try { joinFlag = true; Class.forName("com.microsoft.jdbc.sqlsever.SQLSeverDriver"); String url="jdbc:microsoft:sqlsever://localhost:1433;Database=EmployeeInformationMS"; String user="sa"; String password=""; Connection cn= DriverManager.getConnection(url,user,password); cn.setCatalog("EmployeeInformationMS"); System.out.println("数据库连接成功"); st = cn.createStatement(); return joinFlag; } catch (SQLException sqlEx) { System.out.println(sqlEx.getMessage()); joinFlag = false; return joinFlag; } catch (ClassNotFoundException notfoundEX) { System.out.println(notfoundEX.getMessage()); joinFlag = false; return joinFlag; } } public static boolean executeSQL(String sqlString) { boolean executeFlag; try { st.execute(sqlString); executeFlag = true; } catch (Exception e) { executeFlag = false; System.out.println("sql exception:" + e.getMessage()); } return executeFlag; } public static boolean query(String sqlString) { try { rs = null; rs = st.executeQuery(sqlString); } catch (Exception Ex) { System.out.println("sql exception:" + Ex); return false; } return true; } }
落花流水6 2012-11-13
  • 打赏
  • 举报
回复
我的的数据库是2005的,但导入到java的.jar包是2008的,我也还是连接不上不知什么原因,难道非要是2008的数据库才能连接上吗?
追梦人少年 2012-06-07
  • 打赏
  • 举报
回复
链接mysql数据就需要mysql-connector-java-5.0.7.jar这个包就ok了,不需要你说的其它2个包。。
_jerrytiger 2012-06-07
  • 打赏
  • 举报
回复
ct=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/dblogin","root","123456");

包导错了。
ct 这个对象 , 你把它改成java.sql.Connection
超江 2012-06-07
  • 打赏
  • 举报
回复
现在的错误信息是
[code=/Java]
java.lang.ClassCastException: com.mysql.jdbc.Connection cannot be cast to com.sun.corba.se.pept.transport.Connection
at com.gcj.logincheck.doGet(logincheck.java:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:722)

[/code]
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]

直接导入就行了呗!。。将jar文件导入至lib下面,,直接拉进去还需要进行配置。。。比较麻烦
[/Quote]
直接拷贝进去》?引用?我试了,都还是报错。。
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

链接数据库的包是需要导入项目的lib目录下的 而不是导入在tomcat中,链接mysql只需要导入第一个就行
[/Quote]
嗯。。是这样的,关键是另外那两个包的版本不知道是什么搭配。。?谢谢你的解答。
yaosiming2011 2012-06-07
  • 打赏
  • 举报
回复
直接导入就行了呗!。。将jar文件导入至lib下面,,直接拉进去还需要进行配置。。。比较麻烦
zhang352954605 2012-06-07
  • 打赏
  • 举报
回复
链接数据库的包是需要导入项目的lib目录下的 而不是导入在tomcat中,链接mysql只需要导入第一个就行
超江 2012-06-07
  • 打赏
  • 举报
回复
http://blog.csdn.net/software_developer/article/details/3329542

类似于上面这种情况
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

跳转的时候,啥错额
[/Quote]


HTTP Status 500 -

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

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Servlet execution threw an exception


root cause

java.lang.NoClassDefFoundError: org/aspectj/lang/Signature
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:186)
com.gcj.logincheck.doGet(logincheck.java:91)
javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)


root cause

java.lang.ClassNotFoundException: org.aspectj.lang.Signature
java.net.URLClassLoader$1.run(URLClassLoader.java:366)
java.net.URLClassLoader$1.run(URLClassLoader.java:355)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:354)
java.lang.ClassLoader.loadClass(ClassLoader.java:423)
java.lang.ClassLoader.loadClass(ClassLoader.java:356)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:186)
com.gcj.logincheck.doGet(logincheck.java:91)
javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)


note The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.


r280881872 2012-06-07
  • 打赏
  • 举报
回复
跳转的时候,啥错额
超江 2012-06-07
  • 打赏
  • 举报
回复

try {
System.out.println("ddddd");
String u=request.getParameter("username");
String p=request.getParameter("passwd");
//连接数据库
Class.forName("com.mysql.jdbc.Driver");
//得到连接
ct=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/dblogin","root","123456");
//创建statement
sm=((java.sql.Connection) ct).createStatement();
rs=sm.executeQuery("select *from user where uname='"+u+"' and upass='"+p+"'");
//验证
// System.out.println("bbbb");
//session的生命周期只有三十分钟(用户发呆时间)
if (rs.next()) {
System.out.println("bbbb");
//合法
//将验证成功的信息写入session
//得到session
HttpSession hs=request.getSession(true);
//修改session的存在时间,默认半小时发呆时间
hs.setMaxInactiveInterval(20);//秒计算
hs.setAttribute("pass", u);
//跳转到wel
response.sendRedirect("wel?uname="+u+"&psd="+p);
} else {
//不合法
//跳转
response.sendRedirect("login");//写servlet的url,切记;
}

} catch (Exception e) {
e.printStackTrace();
}finally{
try {
if (rs!=null){
sm.close();}
if(ct!=null){
ct.close();}
if(rs!=null){
rs.close();}
}
catch (Exception e2) {
e2.printStackTrace();
}
}
}


上面是我的程序代码
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

晕,不晓得你说的啥子。
错误信息,粘上来
[/Quote]
我也是刚照着视频学servlet,数据库我连接成功了,就是用servlet做一个跳转的时候报错了。。谢谢你的解答
超江 2012-06-07
  • 打赏
  • 举报
回复
错误信息

六月 07, 2012 10:37:47 上午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet logincheck threw exception
java.lang.ClassNotFoundException: org.aspectj.lang.Signature
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at com.gcj.logincheck.doGet(logincheck.java:91)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:722)


r280881872 2012-06-07
  • 打赏
  • 举报
回复
晕,不晓得你说的啥子。
错误信息,粘上来
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

拷到项目里啊
[/Quote]
拷到项目里面是私用的jar,拷贝到lib目录下也一样的功能,关键我的问题是所需要的jar包是需要匹配的,aspectjtools-1.5.3.jar没有用。。控制台会出现一大堆trace。
r280881872 2012-06-07
  • 打赏
  • 举报
回复
拷到项目里啊
超江 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

不是用eclipse 可以直接跑吗?
拷什么jar 包额。
[/Quote]
连接数据库不是需要jar包么?
r280881872 2012-06-07
  • 打赏
  • 举报
回复
不是用eclipse 可以直接跑吗?
拷什么jar 包额。
加载更多回复(6)

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧