jsp页面调用hibernate框架问题

条条飘落的秀发 2017-11-16 12:05:16
<%@ page language="java" import="Users.*,Hibernate.*" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>SignUp_Page</title>
</head>
<body>
<jsp:useBean id="sup" class="Users.signUp"/>
<form action="userlogin.jsp" method="post">
<table align="center">
<tr>
<th>用户账号</th><td><input type="text" name=uid></td>
</tr>
<tr>
<th>昵称</th><td><input type="text" name="uname"></td>
</tr>
<tr>
<th>密码</th><td><input type="text" name="upwd"></td>
</tr>
<tr>
<td><input type="submit" value="创建用户"></td>
</tr>
</table>

</form>

<%
String uid=request.getParameter("uid");
String uname=request.getParameter("uname");
String upwd=request.getParameter("upwd");

sup.addUser(uid,uname,upwd);
%>
</body>
</html>
//以上是我的普通的一个jsp页面,导入Users包里面的java 类
package Users;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cfg.*;

import Hibernate.HibernateSessionFactory;

public class signUp {

public void addUser(String uid,String uname,String upwd ){

Session session=HibernateSessionFactory.getSession();
User user=new User(uid,upwd,uname);
Transaction tran=session.beginTransaction();
session.save(user);
tran.commit();


}
}
//以上是Users包里面的signUp类,用于向DB添加注册用户的信息,在src文件夹中我编写了该程序的一个测试类,能够正常执行,然而在jsp页面里面调用这个类确报如下错误:
Stacktrace:] with root cause
java.sql.SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3306/mydatabase
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:421)
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326)
at Users.signUp.addUser(signUp.java:15)
at org.apache.jsp.html.signUp_jsp._jspService(signUp_jsp.java:124)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
//我已经把hibernate以及jdbc核心包导入到了WEBINF/lib下了
...全文
377 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
第一次csdn这么多老铁帮我解决问题,作为一个萌新感觉十分感动,问题已经解决,只要把jdbc驱动粘贴到tomecat/lib目录下系统就能读取到,并找到这个驱动。谢谢大家
  • 打赏
  • 举报
回复
引用 8 楼 kampoo 的回复:
嗯 看到你的修改了。那应该是mysql-jdbc在hibernate.cfg.xml中没有正确配置了,请检查确认com.mysql.jdbc.Driver是不是已经配置了。另外你说的错误是在tomcat服务器上出现的,还是你在IDE中运行测试出现的?
刚刚无意之中上网发现,原来只要把mysql驱动粘贴到TOMCAT_HOME/lib目录下,绝不能放在web-inf/lib/下面:否则tomcat就会报错说找不到驱动,然后成功运行,感谢你不厌其烦帮我跟进这个问题。
  • 打赏
  • 举报
回复
引用 17 楼 qq_38396900 的回复:
引用 15 楼 qq_35274666 的回复:
引用 13 楼 qq_38396900 的回复:
[quote=引用 11 楼 qq_35274666 的回复:] [quote=引用 9 楼 qq_38396900 的回复:] [quote=引用 6 楼 qq_35274666 的回复:] [quote=引用 4 楼 qq_38396900 的回复:] 在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
有报错: HTTP Status 500 - Cannot open connection -------------------------------------------------------------------------------- type Exception report message Cannot open connection description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.exception.JDBCConnectionException: Cannot open connection org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) Users.signUp.addUser(signUp.java:26) Servlet.RegistryServlet.doPost(RegistryServlet.java:30) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause [/quote]你提交的action 是去哪? 另一个页面? (我觉得你拦截器可能有问题。)[/quote]我直接提交给了上面提到的Servlet,是不是我的Servlet写的有问题,具体问题在哪里[/quote]<form action="userlogin.jsp" method="post">这是你action 提交的语句 你确定你是去servlet了?[/quote]
<body>
<jsp:useBean id="sup" class="Users.signUp"/>
<form action="../Servlet/RegistryServlet" method="post">
	<table align="center">
		<tr>
			<th>用户账号</th><td><input type="text" name="uid"></td>
		</tr>
		<tr>
			<th>昵称</th><td><input type="text" name="uname"></td>
		</tr>
		<tr>
			<th>密码</th><td><input type="text" name="upwd"></td>
		</tr>
		<tr>
			<td><input type="submit" value="创建用户"></td>
		</tr>
	</table>

</form>

	
</body>
</html>
qq_38396900 2017-11-19
  • 打赏
  • 举报
回复
引用 15 楼 qq_35274666 的回复:
引用 13 楼 qq_38396900 的回复:
引用 11 楼 qq_35274666 的回复:
[quote=引用 9 楼 qq_38396900 的回复:] [quote=引用 6 楼 qq_35274666 的回复:] [quote=引用 4 楼 qq_38396900 的回复:] 在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
有报错: HTTP Status 500 - Cannot open connection -------------------------------------------------------------------------------- type Exception report message Cannot open connection description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.exception.JDBCConnectionException: Cannot open connection org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) Users.signUp.addUser(signUp.java:26) Servlet.RegistryServlet.doPost(RegistryServlet.java:30) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause [/quote]你提交的action 是去哪? 另一个页面? (我觉得你拦截器可能有问题。)[/quote]我直接提交给了上面提到的Servlet,是不是我的Servlet写的有问题,具体问题在哪里[/quote]<form action="userlogin.jsp" method="post">这是你action 提交的语句 你确定你是去servlet了?
kampoo 2017-11-19
  • 打赏
  • 举报
回复
IDE中测试signUp#addUser没问题的话,确认一下: IDE的jdk版本跟tomcat的jdk版本是否一致; IDE的jdbc版本跟tomcat的jdbc版本是否一致; IDE的测试环境跟Tomcat的部署环境是否一致(包括文件夹及文件,貌似你没有用打包工具maven,很难保证两者环境精确一致)。
  • 打赏
  • 举报
回复
引用 13 楼 qq_38396900 的回复:
引用 11 楼 qq_35274666 的回复:
引用 9 楼 qq_38396900 的回复:
[quote=引用 6 楼 qq_35274666 的回复:] [quote=引用 4 楼 qq_38396900 的回复:] 在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
有报错: HTTP Status 500 - Cannot open connection -------------------------------------------------------------------------------- type Exception report message Cannot open connection description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.exception.JDBCConnectionException: Cannot open connection org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) Users.signUp.addUser(signUp.java:26) Servlet.RegistryServlet.doPost(RegistryServlet.java:30) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause [/quote]你提交的action 是去哪? 另一个页面? (我觉得你拦截器可能有问题。)[/quote]我直接提交给了上面提到的Servlet,是不是我的Servlet写的有问题,具体问题在哪里
  • 打赏
  • 举报
回复
不知道是不是和tomcat服务器本身内部与这个hibernate有关联,这个我不是很清楚
qq_38396900 2017-11-19
  • 打赏
  • 举报
回复
引用 11 楼 qq_35274666 的回复:
引用 9 楼 qq_38396900 的回复:
引用 6 楼 qq_35274666 的回复:
[quote=引用 4 楼 qq_38396900 的回复:] 在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
有报错: HTTP Status 500 - Cannot open connection -------------------------------------------------------------------------------- type Exception report message Cannot open connection description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.exception.JDBCConnectionException: Cannot open connection org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) Users.signUp.addUser(signUp.java:26) Servlet.RegistryServlet.doPost(RegistryServlet.java:30) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause [/quote]你提交的action 是去哪? 另一个页面? (我觉得你拦截器可能有问题。)
  • 打赏
  • 举报
回复
引用 8 楼 kampoo 的回复:
嗯 看到你的修改了。那应该是mysql-jdbc在hibernate.cfg.xml中没有正确配置了,请检查确认com.mysql.jdbc.Driver是不是已经配置了。另外你说的错误是在tomcat服务器上出现的,还是你在IDE中运行测试出现的?
错误是在tomcat中出现的,测试函数运行没有报错
  • 打赏
  • 举报
回复
引用 9 楼 qq_38396900 的回复:
引用 6 楼 qq_35274666 的回复:
引用 4 楼 qq_38396900 的回复:
在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
有报错: HTTP Status 500 - Cannot open connection -------------------------------------------------------------------------------- type Exception report message Cannot open connection description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.exception.JDBCConnectionException: Cannot open connection org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) Users.signUp.addUser(signUp.java:26) Servlet.RegistryServlet.doPost(RegistryServlet.java:30) javax.servlet.http.HttpServlet.service(HttpServlet.java:650) javax.servlet.http.HttpServlet.service(HttpServlet.java:731) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) root cause
  • 打赏
  • 举报
回复
引用 8 楼 kampoo 的回复:
嗯 看到你的修改了。那应该是mysql-jdbc在hibernate.cfg.xml中没有正确配置了,请检查确认com.mysql.jdbc.Driver是不是已经配置了。另外你说的错误是在tomcat服务器上出现的,还是你在IDE中运行测试出现的?
public class testSignup {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		signUp sup=new signUp();
		sup.addUser("sad2", "guokai", "123");

	}

}
如果我配置文件出现错误,那这个测试函数应该也是运行不了找不到驱动才对呀,现在在控制台输出的是以下问题: 严重: Servlet.service() for servlet [RegistryServlet] in context with path [/OnlineQuesSys] threw exception org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29) at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:424) at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) at Users.signUp.addUser(signUp.java:26) at Servlet.RegistryServlet.doPost(RegistryServlet.java:30) at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Unknown Source) Caused by: java.sql.SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3306/mydatabase at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:110) at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:421) ... 27 more
qq_38396900 2017-11-19
  • 打赏
  • 举报
回复
引用 6 楼 qq_35274666 的回复:
引用 4 楼 qq_38396900 的回复:
在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
页面有没有报错?
kampoo 2017-11-19
  • 打赏
  • 举报
回复
嗯 看到你的修改了。那应该是mysql-jdbc在hibernate.cfg.xml中没有正确配置了,请检查确认com.mysql.jdbc.Driver是不是已经配置了。另外你说的错误是在tomcat服务器上出现的,还是你在IDE中运行测试出现的?
  • 打赏
  • 举报
回复
引用 3 楼 kampoo 的回复:
修改一下第一行试试,加上 import="com.mysq.jdbc.*,...:
<%@ page language="java" import="com.mysql.jdc.*,Users.*,Hibernate.*" contentType="text/html; charset=GB18030"  pageEncoding="GB18030"%>
如果不行,再加上Class.forName("com.mysql.jdbc.Driver"); :
<%	
Class.forName("com.mysql.jdbc.Driver"); //新加代码

String uid=request.getParameter("uid");
String uname=request.getParameter("uname");
String upwd=request.getParameter("upwd");

sup.addUser(uid,uname,upwd);
%>
另外:对mvc用的还不到位,jsp页面最好只访问Javabean的属性,其他操作都放到controller里面,调试就简单很多。 你的这个例子中,在这个页面前面再加一个controller,调用signUp#addUser,然后分发到你的jsp页面。
引用 2 楼 qq_35274666 的回复:
我在src下面编写过对signUp的测试类,能够正常运行对数据库插入数据,说明HIbernate.cfg.xml配置没有问题,但是不知道为什么通过jsp页面进行signUp的调用时候确出现说数据库没连上的怪事,困扰一周了,希望能尽快解决
已经加了controller 并在controller上又加载了一次驱动,问题仍没解决
  • 打赏
  • 举报
回复
引用 4 楼 qq_38396900 的回复:
在控制台输出一下页面传上去的数据看有没有传上去。
试过了,可以传相应的参数,但是就是连不上数据库
  • 打赏
  • 举报
回复
我已经修改了相关代码,添加了一个controller ,然后在controller里面又加载了一次驱动,然而还是不行,报同样的错误
public class RegistryServlet extends HttpServlet{

	public void doPost(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException {
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		try {
			Class.forName("com.mysql.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String uid=request.getParameter("uid");
		String uname=request.getParameter("uname");
		String upwd=request.getParameter("upwd");
		signUp sup=new signUp();
		boolean flag=false;
		if(uid!=null&&uname!=null&&upwd!=null)
			flag=sup.addUser(uid,uname,upwd);
		if(flag==true){
				out.println("<html>");
			 out.println("<head>");		
			 out.println("<title>Registration Successful</title>");		
			 out.println("</head>");
			 out.println("<body>");
			 out.println("<center>");
			 out.println("<h1>Thanks for Registering with us :</h1>");
			 out.println("</center>");
			 out.println("</body>");
			 out.println("</html>");
				 //out.println("To login with new UserId and Password<a href=login.jsp>Click here</a>");
		}
		else{
			out.println("<html>");
			 out.println("<head>");		
			 out.println("<title>Registration Successful</title>");		
			 out.println("</head>");
			 out.println("<body>");
			
			 out.println("<h1>Sorry!</h1>");
			 out.println("</body>");
			 out.println("</html>");
		}
		out.close();

	}
	public void doGet(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException{doPost(request,response);}
}
qq_38396900 2017-11-19
  • 打赏
  • 举报
回复
在控制台输出一下页面传上去的数据看有没有传上去。
kampoo 2017-11-19
  • 打赏
  • 举报
回复
修改一下第一行试试,加上 import="com.mysq.jdbc.*,...:
<%@ page language="java" import="com.mysql.jdc.*,Users.*,Hibernate.*" contentType="text/html; charset=GB18030"  pageEncoding="GB18030"%>
如果不行,再加上Class.forName("com.mysql.jdbc.Driver"); :
<%	
Class.forName("com.mysql.jdbc.Driver"); //新加代码

String uid=request.getParameter("uid");
String uname=request.getParameter("uname");
String upwd=request.getParameter("upwd");

sup.addUser(uid,uname,upwd);
%>
另外:对mvc用的还不到位,jsp页面最好只访问Javabean的属性,其他操作都放到controller里面,调试就简单很多。 你的这个例子中,在这个页面前面再加一个controller,调用signUp#addUser,然后分发到你的jsp页面。
引用 2 楼 qq_35274666 的回复:
我在src下面编写过对signUp的测试类,能够正常运行对数据库插入数据,说明HIbernate.cfg.xml配置没有问题,但是不知道为什么通过jsp页面进行signUp的调用时候确出现说数据库没连上的怪事,困扰一周了,希望能尽快解决
  • 打赏
  • 举报
回复
我在src下面编写过对signUp的测试类,能够正常运行对数据库插入数据,说明HIbernate.cfg.xml配置没有问题,但是不知道为什么通过jsp页面进行signUp的调用时候确出现说数据库没连上的怪事,困扰一周了,希望能尽快解决
kampoo 2017-11-19
  • 打赏
  • 举报
回复
恭喜解决问题! 对于你的解决方式稍有疑问:是不是你在tomcat中配置了datasource,然后hibernate引用了这个datasource? 如果所有配置都在一个webapp下,放在webapps/<your-webapp>/WEB-INF/lib是没问题的,而且有利于避免将来其他webapp引用不同mysql-jdbc版本时的冲突问题。
加载更多回复(1)

67,515

社区成员

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

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