我的程序的功能是实现用户注册并进行验证,成功的话写入数据库,不成功的话返回注册页
在TOMCAT上运行时也不提示有错误,但注册成功就是写不到数据库里面去,我把写入数据库的代码复制到一个.JAVA文件中,在插入封装数据库的JAVABEAN,就能成功的写入数据库~
环境是tomcat+eclipse+sqlserver
请高手们回答一下这是怎么回事`我是小白~请尽量相细点~是我的配置有问题还是怎么回事下面贴一下代码
Register.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<% request.setCharacterEncoding("gb2312");
%>
<!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=UTF-8">
<title>验证注册</title>
</head>
<body bgcolor="#DDCCFF">
<center>
<form action="Register_check.jsp" method="post">
<table border="1" bgcolor="#DDF3FF">
<caption >请输入注册信息</caption>
<tr >
<td align="right">用户名:</td>
<td align="left"><input type="text" name="username"/></td>
</tr>
<tr>
<td align="right">密码:</td>
<td align="left"><input type="password" name="password"/></td>
</tr>
<tr>
<td align="right">确认密码:</td>
<td align="left"><input type="password" name="confirm_password"/></td>
</tr>
<tr>
<td align="right">性别:</td>
<td align="left"><input type="radio" name="sex" value="male" checked="checked">男
<input type="radio" name="sex" value="female">女
</td>
</tr>
<tr>
<td align="right">职业:</td>
<td align="left"><select name="profession">
<option selected="selected">--请选择--</option>
<option>学生</option>
<option>政府工作人员</option>
<option>老师</option>
<option>工程师</option>
<option>医护人员</option>
<option>服务业</option>
</select>
</td>
</tr>
<tr>
<td align="right">个人说明:</td>
<td align="left"><textarea name="description" rows="15" cols="40">这家伙很懒,什么都没有留下</textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="提交">
<input type="reset" value="重置"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
下面是Register_check.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<% request.setCharacterEncoding("gb2312");
%><jsp:useBean id="dbm" class="com.jsp.JavaBean.DBManager" scope="page"/><!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=UTF-8">
<title>注册成功</title>
</head>
<body>
<%
String password=request.getParameter("password");
String confirm_password=request.getParameter("confirm_password");
if(!password.equals(confirm_password)){
%>
<center>
<font size="4" color="red">由于两次输入的密码不同,注册失败,3秒后跳转到注册页面;</font>
</center>
<%response.addHeader("refresh","3;url=Register.jsp");%> <% }else{
%>
<font size="4" color="red">注册成功,3秒后跳转到登录页面</font>
<% String username=request.getParameter("username");
String sex=request.getParameter("sex");
String profession=request.getParameter("profession");
String description=request.getParameter("description");
try{
dbm.setStmt(dbm.getConn().prepareStatement("insert into users(username,password,profession,sex,description) values(?,?,?,?,?)"));
dbm.getStmt().setString(1,username);
dbm.getStmt().setString(2,password);
dbm.getStmt().setString(3,profession);
dbm.getStmt().setString(4,sex);
dbm.getStmt().setString(5,description);
dbm.getStmt().execute();
}catch(Exception e){
}
}
%></body>
</html>
下面是DBManager.java
package com.jsp.JavaBean;import java.sql.*;public class DBManager {
private Connection conn=null;
private PreparedStatement stmt=null;
private ResultSet rs=null;
public DBManager(){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
setConn(DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=Register_Bycc","cc","password"));
}catch(Exception e){
}
} public void setStmt(PreparedStatement stmt) {
this.stmt = stmt;
} public PreparedStatement getStmt() {
return stmt;
} public void setRs(ResultSet rs) {
this.rs = rs;
} public ResultSet getRs() {
return rs;
} public void setConn(Connection conn) {
this.conn = conn;
} public Connection getConn() {
return conn;
}}
在TOMCAT上运行时也不提示有错误,但注册成功就是写不到数据库里面去,我把写入数据库的代码复制到一个.JAVA文件中,在插入封装数据库的JAVABEAN,就能成功的写入数据库~
环境是tomcat+eclipse+sqlserver
请高手们回答一下这是怎么回事`我是小白~请尽量相细点~是我的配置有问题还是怎么回事下面贴一下代码
Register.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<% request.setCharacterEncoding("gb2312");
%>
<!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=UTF-8">
<title>验证注册</title>
</head>
<body bgcolor="#DDCCFF">
<center>
<form action="Register_check.jsp" method="post">
<table border="1" bgcolor="#DDF3FF">
<caption >请输入注册信息</caption>
<tr >
<td align="right">用户名:</td>
<td align="left"><input type="text" name="username"/></td>
</tr>
<tr>
<td align="right">密码:</td>
<td align="left"><input type="password" name="password"/></td>
</tr>
<tr>
<td align="right">确认密码:</td>
<td align="left"><input type="password" name="confirm_password"/></td>
</tr>
<tr>
<td align="right">性别:</td>
<td align="left"><input type="radio" name="sex" value="male" checked="checked">男
<input type="radio" name="sex" value="female">女
</td>
</tr>
<tr>
<td align="right">职业:</td>
<td align="left"><select name="profession">
<option selected="selected">--请选择--</option>
<option>学生</option>
<option>政府工作人员</option>
<option>老师</option>
<option>工程师</option>
<option>医护人员</option>
<option>服务业</option>
</select>
</td>
</tr>
<tr>
<td align="right">个人说明:</td>
<td align="left"><textarea name="description" rows="15" cols="40">这家伙很懒,什么都没有留下</textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="提交">
<input type="reset" value="重置"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
下面是Register_check.jsp
<%@ page contentType="text/html; charset=gb2312"%>
<% request.setCharacterEncoding("gb2312");
%><jsp:useBean id="dbm" class="com.jsp.JavaBean.DBManager" scope="page"/><!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=UTF-8">
<title>注册成功</title>
</head>
<body>
<%
String password=request.getParameter("password");
String confirm_password=request.getParameter("confirm_password");
if(!password.equals(confirm_password)){
%>
<center>
<font size="4" color="red">由于两次输入的密码不同,注册失败,3秒后跳转到注册页面;</font>
</center>
<%response.addHeader("refresh","3;url=Register.jsp");%> <% }else{
%>
<font size="4" color="red">注册成功,3秒后跳转到登录页面</font>
<% String username=request.getParameter("username");
String sex=request.getParameter("sex");
String profession=request.getParameter("profession");
String description=request.getParameter("description");
try{
dbm.setStmt(dbm.getConn().prepareStatement("insert into users(username,password,profession,sex,description) values(?,?,?,?,?)"));
dbm.getStmt().setString(1,username);
dbm.getStmt().setString(2,password);
dbm.getStmt().setString(3,profession);
dbm.getStmt().setString(4,sex);
dbm.getStmt().setString(5,description);
dbm.getStmt().execute();
}catch(Exception e){
}
}
%></body>
</html>
下面是DBManager.java
package com.jsp.JavaBean;import java.sql.*;public class DBManager {
private Connection conn=null;
private PreparedStatement stmt=null;
private ResultSet rs=null;
public DBManager(){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
setConn(DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databasename=Register_Bycc","cc","password"));
}catch(Exception e){
}
} public void setStmt(PreparedStatement stmt) {
this.stmt = stmt;
} public PreparedStatement getStmt() {
return stmt;
} public void setRs(ResultSet rs) {
this.rs = rs;
} public ResultSet getRs() {
return rs;
} public void setConn(Connection conn) {
this.conn = conn;
} public Connection getConn() {
return conn;
}}
解决方案 »
- 请帮忙解决一下,myEclipse启动tomcat时出错
- FckEditor 上传图片后图片变小了!
- 各位大虾,如何将execl导入到sql中哈?
- javamail收邮件用户名乱码。
- 请问谁用过web的宠物程序 请教一下
- 关于web应用在weblogic下的问题。
- 谢谢大家帮我解决很多问题,但这个问题很重要,帮帮我如何在关闭浏揽器的时候从HashMap中将一个元素删除呢?
- 【高分求】如何得到数据库内大文件的流
- 如何使用jsp+javabean结构
- 请问,怎么在<body onload=...里来限制窗口的大小和是否显示工具拦和菜单?A
- 如何在 Applet 中向 servlet 发送对象(急)
- 大虾帮忙啊 MySQL中怎样对同一id进行多次写入
<%
String password=request.getParameter("password");
String confirm_password=request.getParameter("confirm_password"); if(!password.equals(confirm_password)){
%>
<center>
<font size="4" color="red">由于两次输入的密码不同,注册失败,3秒后跳转到注册页面; </font>
</center>
<%response.addHeader("refresh","3;url=Register.jsp");%> <% }else{
%>
<% String username=request.getParameter("username");
String sex=request.getParameter("sex");
String profession=request.getParameter("profession");
String description=request.getParameter("description");
try{
dbm.setStmt(dbm.getConn().prepareStatement("insert into users(username,password,profession,sex,description) values(?,?,?,?,?)"));
dbm.getStmt().setString(1,username);
dbm.getStmt().setString(2,password);
dbm.getStmt().setString(3,profession);
dbm.getStmt().setString(4,sex);
dbm.getStmt().setString(5,description);
dbm.getStmt().execute();%>
<font size="4" color="red">注册成功,3秒后跳转到登录页面 </font>
<%
}catch(Exception e){ }
}
%>
不知道楼主 JAR包是否导入
TOMCAT配置是否正确
dbm.setStmt(dbm.getConn().prepareStatement("insert into users(username,password,profession,sex,description) values(?,?,?,?,?)"));
dbm.getStmt().setString(1,username);
dbm.getStmt().setString(2,password);
dbm.getStmt().setString(3,profession);
dbm.getStmt().setString(4,sex);
dbm.getStmt().setString(5,description);
dbm.getStmt().execute();
}catch(Exception e){}
}
打印一下看看有没有异常
catch(Exception e){
。。
}
ssssss一定不要省略,很重要的异常提示哦
try{
dbm.setStmt(dbm.getConn().prepareStatement("insert into users(username,password,profession,sex,description) values(?,?,?,?,?)"));
dbm.getStmt().setString(1,username);
dbm.getStmt().setString(2,password);
dbm.getStmt().setString(3,profession);
dbm.getStmt().setString(4,sex);
dbm.getStmt().setString(5,description);
dbm.getStmt().execute();
}catch(Exception e){ }
}
catch(Exception e){
System.out.println("ssssss");
}
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 这一段就有异常~鼠标指到括号里的代码有提示是这么写的:
Note: This element neither has attached source nor attached Javadoc and hence no Javadoc could be found.
我已经把三个sql server的.jar文件导入了
catch (Exception e) {
e.printStackTrace();
}
没有catch的话会有错误提示的啊!
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}catch (Exception e) {
e.printStackTrace();
}
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at com.jsp.JavaBean.DBManager.<init>(DBManager.java:15)
at org.apache.jsp.Register_005fcheck_jsp._jspService(Register_005fcheck_jsp.java:64)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
}catch (Exception e) {
e.printStackTrace();
}
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at com.jsp.JavaBean.DBManager.<init>(DBManager.java:15)
at org.apache.jsp.Register_005fcheck_jsp._jspService(Register_005fcheck_jsp.java:64)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)