刚学J2EE有很多问题不明白,最近做了一个页面向数据库添加用户,总是不成功。希望高手指点。
JSP页面:
<%@ page language="java" import="java.util.*" errorPage="err.jsp" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>添加新用户</title>
<SCRIPT Language="JavaScript">
function test1()
{
if(document.add1.userid.value == '')
{
alert( 'ID不能为空!');
return false;
}
if(document.add1.username.value == '')
{
alert('姓名不能为空!');
return false;
}
if(document.add1.password.value == '')
{
alert('密码不能为空!');
return false;
}
return true;
}
</SCRIPT>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<center><h1>添加新用户</h1>
<form id="add1" name="add1" method="post" action="AddServlet"onsubmit="return test1()";>
<table width="703" border="0" cellpadding="0">
<tr>
<td width="75">ID</td>
<td width="182"><input type="text" name="userid" /></td>
</tr>
<tr>
<td>姓名</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>密码</td>
<td><input type="text" name="password" /></td>
</tr>
<tr>
<td>备注</td>
<td><input type="text" name="meno" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="提交" />
<input type="reset" name="Submit2" value="重置" /></td>
</tr>
</table>
</form>
</center>
</body>
</html>
JSP页面:
<%@ page language="java" import="java.util.*" errorPage="err.jsp" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>添加新用户</title>
<SCRIPT Language="JavaScript">
function test1()
{
if(document.add1.userid.value == '')
{
alert( 'ID不能为空!');
return false;
}
if(document.add1.username.value == '')
{
alert('姓名不能为空!');
return false;
}
if(document.add1.password.value == '')
{
alert('密码不能为空!');
return false;
}
return true;
}
</SCRIPT>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<center><h1>添加新用户</h1>
<form id="add1" name="add1" method="post" action="AddServlet"onsubmit="return test1()";>
<table width="703" border="0" cellpadding="0">
<tr>
<td width="75">ID</td>
<td width="182"><input type="text" name="userid" /></td>
</tr>
<tr>
<td>姓名</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>密码</td>
<td><input type="text" name="password" /></td>
</tr>
<tr>
<td>备注</td>
<td><input type="text" name="meno" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="提交" />
<input type="reset" name="Submit2" value="重置" /></td>
</tr>
</table>
</form>
</center>
</body>
</html>
解决方案 »
- 急!一直等待localhost响应
- jsp 可以实现自动解析图片地址并将其保存到本地服务器吗?
- 做一个平台性的网站用那种技术比较好?
- java程序调用mysql存储过程的问题
- JAVA开发——阿里杭州建立日本站
- Hibernate3做论坛的Session管理问题
- 哪里出现问题?高手助解
- jsp制作论坛中 顶贴 是怎么样实现的?
- 企业考勤管理的需求
- 现在微信测试号提供的appidd无法用于web端微信第三方登录测试了吗
- 如何解决这个错误::java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引
- 急~~SimpleDateFormat导致datetime 值越界问题
package uinfo;import java.io.IOException;import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import java.sql.*;public class QueryServlet extends HttpServlet { String errMsg;
public void service (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { RequestDispatcher rd;
String username = request.getParameter("username");
try
{
MySQLBean bean1 = new MySQLBean();
ResultSet rs = bean1.query("select * from userinfo where username = '" + username +"'");
boolean flag = false ;
UserInfoBean uib = new UserInfoBean();
while (rs.next()){
flag = true ;
uib.setUserid(rs.getString(1));
uib.setUsername(rs.getString(2));
uib.setPassword(rs.getString(3));
uib.setMeno(rs.getString(4));
}
if (flag){
HttpSession session = request.getSession(true);
session.setAttribute("uib",uib);
rd = request.getRequestDispatcher("/qresult.jsp");
rd.forward(request,response);
}
else{
rd = request.getRequestDispatcher("/qresult1.jsp");
rd.forward(request,response);
}
}
catch(Exception e)
{
rd = request.getRequestDispatcher("/err.jsp");
request.setAttribute("exception","业务错误");
rd.forward(request,response);
}
if (errMsg != null && !errMsg.equals(""))
{
rd = request.getRequestDispatcher("/query.jsp");
request.setAttribute("err",errMsg);
rd.forward(request,response);
}
}}
其中的CheckUser类:
package uinfo;import java.sql.ResultSet;public class CheckUser {
public static boolean Checkuser(String id)
throws Exception{
MySQLBean bean3 = new MySQLBean();
ResultSet rs = bean3.query("select * from userinfo where userid = '" + id +"'");
if (rs.next()) {
return false;
}
else {
return true;
}
}}
package uinfo;import java.sql.*;public class MySQLBean
{
private Connection conn;
private String driver;
private String url;
private String username;
private String pass;
public MySQLBean()
throws Exception
{
this.driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
this.url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mysql";
this.username = "sa";
this.pass = "123";
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url,username,pass);
}
public String getDriver() {
return driver;
}
public void setDriver(String driver) {
this.driver = driver;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public boolean insert(String sql)
throws Exception
{
Statement stmt = this.conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
if (stmt.executeUpdate(sql) != 1)
{
return false;
}
return true;
}
public ResultSet query(String sql)
throws Exception
{
Statement stmt = this.conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
return stmt.executeQuery(sql);
}
public void delete(String sql)
throws Exception
{
Statement stmt = this.conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
stmt.executeUpdate(sql);
}
public void update(String sql)
throws Exception
{
Statement stmt = this.conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
stmt.executeUpdate(sql);
}
}
type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjava.lang.IllegalStateException: Cannot forward after response has been committed
uinfo.AddServlet.service(AddServlet.java:54)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.
HttpSession session = request.getSession(true);
session.setAttribute("uib",uib);
rd = request.getRequestDispatcher("/qresult.jsp");
rd.forward(request,response);
}
else{
rd = request.getRequestDispatcher("/qresult1.jsp");
rd.forward(request,response);
} }
catch(Exception e)
{
rd = request.getRequestDispatcher("/err.jsp");
request.setAttribute("exception","业务错误");
rd.forward(request,response);
}
if (errMsg != null && !errMsg.equals(""))
{
rd = request.getRequestDispatcher("/query.jsp");
request.setAttribute("err",errMsg);
rd.forward(request,response);
}
应该是在这里跳转路径出现的问题! 仔细看看你的跳转路径