struts中用jdbc连接MySQL但在action中调用UserMessage类出错

wei_june 2009-10-19 07:58:56
程序介绍::jsp实现简单的页面,struts作为控制层LoginActionForm接受数据,LoginAction继承Action,UserMessage实现MySQL的链接以及完成查询数据工作
具体情况如下:不连接数据库时页面跳转正常,web.xml以及struts-config.xml配置均没错;MySQL连接单独测试正常,但是在LoginAction中调用UserMessage时,页面跳转老是出错!是不是struts连接MySQL时还需要其他配置?请教哪位高手指教,谢谢!!
...全文
167 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wei_june 2009-10-19
  • 打赏
  • 举报
回复
一句话boolean mark = userManger.getinit().messageDetection("wei","666666");
就是运行一下,啥都没做,就不行了 去掉这句话不执行啥都对
jackHanQi 2009-10-19
  • 打赏
  • 举报
回复
哥们你在action中怎么调用的啊?贴出来看一下
wei_june 2009-10-19
  • 打赏
  • 举报
回复
其他没错,就是在页面跳转时有错异常就是3楼的
bayougeng 2009-10-19
  • 打赏
  • 举报
回复
还在用struts1.x?
把异常贴出来看看。
wei_june 2009-10-19
  • 打赏
  • 举报
回复
package com.ctu.struts;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.PreparedStatement;

public class userManger {
private static DatabaseConection dbc = new DatabaseConection();
private static userManger init = new userManger();
private userManger(){}
public static userManger getinit(){
return init;
}
/* public static void main(String[] args) {
userManger.getinit().messageDetection("june","66666");
}*/
public boolean messageDetection(String username,String password) {
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost/usermessage?user=root&password=root";
conn = DriverManager.getConnection(url);
return true;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("数据库连接失败!");
return false;
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("数据库连接失败!");
return false;
}
/* PreparedStatement ps = null ;
//ResultSet rs1 = null;
ResultSet rs2 = null;


try {
//String sql = "select *from user where username=? and password=?";
ps = (PreparedStatement) conn.prepareStatement("select *from user where username=? and password=?");
ps.setString(1,username.trim());
// rs1 = ps.executeQuery();
ps.setString(2,password);
rs2 = ps.executeQuery();
} catch (SQLException e) {
System.out.println("5555555");
}
try {
if(rs2.next()){
System.out.println("查找成功!");
}
else{
System.out.println("查找失败!");
//throw new usernameErrorException();
}


} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("查找过程出现问题!");

}
finally{
try {
conn.close();
ps.close();
//rs1.close();
rs2.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("关闭失败!");
}
}
*/



















/* try {
if(rs2.next()){
System.out.println("找到");
}
else{
/*if(rs1.next()){
System.out.println("找到姓名");

throw new passwordErrorException();
}else{

System.out.println("找不到该用户");
throw new usernameErrorException();

}
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("*********");
}
finally{
try {
conn.close();
ps.close();
//rs1.close();
rs2.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("*1111111");
}
}*/


}

}
wei_june 2009-10-19
  • 打赏
  • 举报
回复
在页面跳转时的Exception
wei_june 2009-10-19
  • 打赏
  • 举报
回复
tomcat5Server [Remote Java Application]
org.apache.catalina.startup.Bootstrap at localhost:2856
Thread [main] (Running)
Daemon Thread [ContainerBackgroundProcessor[StandardEngine[Catalina]]] (Running)
Daemon Thread [http-8080-Acceptor-0] (Running)
Daemon Thread [TP-Processor1] (Running)
Daemon Thread [TP-Processor3] (Running)
Daemon Thread [TP-Monitor] (Running)
Daemon Thread [TP-Processor2] (Running)
Daemon Thread [TP-Processor4] (Running)
Daemon Thread [http-8080-1] (Class load: userManger)
LoginAction.execute(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) line: 25
RequestProcessor.processActionPerform(HttpServletRequest, HttpServletResponse, Action, ActionForm, ActionMapping) line: 419
RequestProcessor.process(HttpServletRequest, HttpServletResponse) line: 224
ActionServlet.process(HttpServletRequest, HttpServletResponse) line: 1194
ActionServlet.doPost(HttpServletRequest, HttpServletResponse) line: 432
ActionServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: 710
ActionServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 803
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse) line: 290
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line: 206
StandardWrapperValve.invoke(Request, Response) line: 233
StandardContextValve.invoke(Request, Response) line: 175
StandardHostValve.invoke(Request, Response) line: 128
ErrorReportValve.invoke(Request, Response) line: 102
StandardEngineValve.invoke(Request, Response) line: 109
CoyoteAdapter.service(Request, Response) line: 263
Http11Processor.process(Socket) line: 844
Http11Protocol$Http11ConnectionHandler.process(Socket) line: 584
JIoEndpoint$Worker.run() line: 447
Thread.run() line: 619
C:\Program Files\Java\jdk1.6.0_02\bin\javaw.exe (2009-10-19 下午08:39:57)
zxd617 2009-10-19
  • 打赏
  • 举报
回复
贴出关键配置和关键代码。
一洽客服系统 2009-10-19
  • 打赏
  • 举报
回复
你说的其他的配置肯定不是,配置是整个项目架构的问题 和你连数据库没有必然的联系 贴出exception信息看下

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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