新手:注册页面的问题,大家帮看看啊,两天了受不了了,帮我看看啊

robinmatrix 2004-11-22 01:13:57
//============================================================================
//==================================一个javabean==============================
//============================================================================
package intqfd;

import java.sql.*;

import java.util.*;
import sun.io.*;

public class RegisterBean{

Connection conn =null;

Statement sqlStatement =null;

ResultSet results =null;

ResultSet retemp =null;

ResultSetMetaData resultsMeta =null;

boolean status;

String sql;

int columns;

long rowcount =0;

String CLASSFORNAME="com.microsoft.jdbc.sqlserver.SQLServerDriver";

//连接数据库

public void connection(String con,String username,String password){

try{

Class.forName(CLASSFORNAME);

conn =DriverManager.getConnection (con,username,password);

this.status =true;

}
catch(SQLException e)

{

this.status =false;
e.printStackTrace();

}
catch(ClassNotFoundException classnotfoundexception){

classnotfoundexception.printStackTrace();

}

}



// 返回连接

public Connection getConn(){

return this.conn ;

}





// 关闭对数据库的连接等。

public void Close(){

try{

if(this.results !=null)

this.results.close();

if(this.sqlStatement !=null)

this.sqlStatement.close();

if(this.conn !=null)

this.conn.close();

this.status =true;

}catch(SQLException e){

this.status =false;

}



}



//从数据库中选择数据



public synchronized ResultSet select(Connection c,String sql){

int index =0;

//Assign passed arguments

this.conn =c;

this.sql =sql;

try{



//Create Statement Object and Execute SQL

sqlStatement =this.conn.createStatement();

retemp =sqlStatement.executeQuery(this.sql);

this.rowcount =0;

//Get the column count for the result set

this.rowcount =0;

while(this.retemp.next())

this.rowcount++;

if(retemp!=null)

retemp.close();

results =sqlStatement.executeQuery(this.sql);

resultsMeta =results.getMetaData();

this.columns =resultsMeta.getColumnCount();

this.status =true;

return results;



}catch(SQLException e){

this.status =false;

return null;

}

}

//返回结果集的列数目

public int getColumns(){

return this.columns;

}



//返回结果集的行数目

public long getRowcount(){

return this.rowcount;

}



// 修改数据库中的记录。

public synchronized void update(Connection c,String sql){

try{

Statement sqlStatement =c.createStatement();

sqlStatement.executeUpdate(sql);

status =true;

}catch(SQLException e){

//set status to flase

status =false;

}

}



//向数据库中插入记录。

public synchronized void insert(Connection c,String sql){

try{

Statement sqlStatement =c.createStatement();

sqlStatement.executeUpdate(sql);



//set status variable to true

this.status =true;

}catch(SQLException e){

//set status variable to true

this.status =false;

}

}



// 删除记录 。

public synchronized void delete(Connection c,String sql){

try{

sqlStatement =this.conn.createStatement();

sqlStatement.executeUpdate(sql);

status =true;

}catch(SQLException e){

//set status to flase

status =false;

}

}



//删除所有记录。

public void deleteAll(String table){

String sql ="delete from "+table;

try{

sqlStatement =this.conn.createStatement();

sqlStatement.executeUpdate(sql);

status =true;

}catch(SQLException e){

status =false;

}

}



//返回对数据库的操作是否成功

public boolean getSuccess(){

return this.status;

}



//转换为中文字符

public String GBK(String action){

try{

byte[] b =action.getBytes("GB2312");

String convert =new String(b,"8859_1");

return convert;

}catch(Exception e){

}

return null;

}
public static String AsciiToChineseString(String s)
{
char[] orig =s.toCharArray();

byte[] dest =new byte[orig.length];

for(int i=0;i<orig.length;i++)

dest[i] =(byte)(orig[i]&0xFF);

try{
ByteToCharConverter toChar =ByteToCharConverter.getConverter("gb2312");
return new String(toChar.convertAll(dest));

}catch(Exception e){}

return s;
}
public String replace(String con ,String tag,String rep){
int j=0;
int i=0;
int k=0;
String RETU="";
String temp =con;
int tagc =tag.length();
while(i<con.length()){
if(con.substring(i).startsWith(tag)){
temp =con.substring(j,i)+rep;
RETU+= temp;
i+=tagc;
j=i;
}
else{
i+=1;
}

}
RETU +=con.substring(j);
return RETU;
}

}
...全文
96 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Shires 2004-11-22
  • 打赏
  • 举报
回复
太长了,到底怎么了
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
其实不长,啥都没有,真正的东西不长,不过问题暂时解决了,不知道会不会处新的问题...
结贴~~~~
peterbarry 2004-11-22
  • 打赏
  • 举报
回复
太长了 眼睛都花了 关注..
tom2005 2004-11-22
  • 打赏
  • 举报
回复
up
jFresH_MaN 2004-11-22
  • 打赏
  • 举报
回复
太长了吧

帮不了你
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
考考考,我调了两天,结果一发上来我就发现错误了

CustomerReiger_do.jsp----------->String sql="select custid from customerinfo where cust_id='"+ cust_id +"'";

前面发现javascript里面有句话多点了个点,用了1天,今天发现_用了2天,考考考铐铐

我哭,我再问个问题好不
修改信息的页面和注册信息的页面分开做好,还是合起来做好,我模仿jsp应用开发详解中的一个例子做完了,怎么都不行,他自身的例子也只能在配套光盘所在的目录下面运行,拿到别的地方都不行.总之,谁能给一个修改信息,注册信息的例子啊,公用form不公用都行啊,我晕了,下周一要交的,555555555555
肯定结贴
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
这是错误
Apache Tomcat/4.0.6 - HTTP Status 500 - Internal Server Errortype Exception reportmessage Internal Server Errordescription The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.exception java.lang.NullPointerException
at org.apache.jsp.CustomerRegister_0005fdo$jsp._jspService(CustomerRegister_0005fdo$jsp.java:167)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:201)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Thread.java:536)


除了错误之外大家也给点别的意见,譬如连接数据库的操作写在哪儿比较好,动态生成下拉菜单的怎么写才好
tiandiqing 2004-11-22
  • 打赏
  • 举报
回复
你怎么个提交不成功?
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
//=====================================================================================
//=========================注册信息处理页面CustomerRegiseter_do.jsp====================
//=====================================================================================

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ include file="ConnectDB.inc"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>\u6CE8\u518C\u68C0\u67E5</title>
</head>

<body>
<jsp:useBean id="register" scope="page" class="intqfd.RegisterBean" />
<jsp:setProperty name="register" property="*" />
<%
//\u8868\u5355\u63D0\u4EA4\u7684\u6570\u636E
String cust_id=request.getParameter("cust_id").trim();
String idcard=request.getParameter("idcard").trim();
String name=request.getParameter("name").trim();
String password=request.getParameter("password");
String gender=request.getParameter("gender");

String birthday=request.getParameter("year")+"-"+request.getParameter("month")+"-"+request.getParameter("day");
//String country=request.getParameter("country");
//String province=request.getParameter("province");
String city=request.getParameter("city");
String address=request.getParameter("address");
String tele1=request.getParameter("tele1");
String tele2=request.getParameter("tele2");
String earning=request.getParameter("earning");
String folk=request.getParameter("folk");
String business=request.getParameter("business");
String vocation=request.getParameter("vocation");
String education=request.getParameter("education");
String other=request.getParameter("other");
String postalcode=request.getParameter("postalcode");


Connection conn=null;
ResultSet rs=null;
String sql="select custid from customerinfo where cust_id='"+ cust_id +"'";

register.connection(SERVANDDB,USER,PWD);
conn=register.getConn();
rs=register.select(conn,sql);

if(rs.next()) {
rs.close();
out.print("<script>alert(\"\u5BF9\u4E0D\u8D77,\u7528\u6237\u540D\u5DF2\u5B58\u5728,\u8BF7\u91CD\u65B0\u6CE8\u518C!\");");
out.print("window.location = \"CustomerRegister.html\"</script>");
}
else {
String sql_insert = "insert into customerinfo(cust_id,idcard,name,password,gender,birthday,city,address,tele1,tele2,earning,folk,business,vocation,education,other,postalcode) values('"+cust_id+"','"+idcard+"','"+name+"','"+password+"','"+gender+"','"+birthday+"','"+city+"','"+address+"','"+tele1+"','"+tele2+"','"+earning+"','"+folk+"','"+business+"','"+vocation+"','"+education+"','"+other+"','"+postalcode+"')";
register.insert(conn,sql_insert);
//session.putValue("name",name);
out.print("<script>window.location = \"CustomerRegister_Success.html\"</script>");
}


%>
</body>
</html>
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
接上
<jsp:useBean id="register" scope="session" class="intqfd.RegisterBean" />
<jsp:setProperty name="register" property="*" />
<%
Connection conn=null;
//RusultSet 初始化
ResultSet rs_city=null;
ResultSet rs_folk=null;
ResultSet rs_education=null;
ResultSet rs_business=null;
ResultSet rs_vocation=null;
ResultSet rs_earning=null;
//SQL
String sql_city="select * from syscoding where type='area'";
String sql_folk="select * from syscoding where type='folk'";
String sql_education="select * from syscoding where type='education'";
String sql_business="select * from syscoding where type='business'";
String sql_vocation="select * from syscoding where type='vocation'";
String sql_earning="select * from syscoding where type='earning'";
//Connect DB
register.connection(SERVANDDB,USER,PWD);
conn=register.getConn();
//rs赋值
rs_city=register.select(conn,sql_city);
rs_folk=register.select(conn,sql_folk);
rs_education=register.select(conn,sql_education);
rs_business=register.select(conn,sql_business);
rs_vocation=register.select(conn,sql_vocation);
rs_earning=register.select(conn,sql_earning);
%>

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<br><br>
<form name="form1" method="post">
<table width="660" height="425" border="1" align="center" cellpadding="3" cellspacing="0">
<tr bgcolor="#666699">
<td height="5%" colspan="2"> <div align="center">
<h2><b>  <span class="style3">用户注册</span></b></h2>
</div></td>
</tr>
<tr bgcolor="#CCCCCC">
<td width="173" height="4%">用户名:</td>
<td width="575"><input name="cust_id" type="text" id="cust_id"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">真实姓名:</td>
<td><input name="name" type="text" id="name"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">密码:</td>
<td><input name="password" type="password" id="password"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">性别:</td>
<td><input type="radio" name="gender" value="1" checked>

<input type="radio" name="gender" value="0">
女</td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">出生日期:</td>
<td> <input name="year" type="text" size="8" maxlength="4">

<select name="month" id="month">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>

<select name="day" id="day">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
日</td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">身份证号:</td>
<td><input name="idcard" type="text" id="idcard"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">国家:</td>
<td><select name="country" id="country">
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">省:</td>
<td><select name="province" id="province">
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">市:</td>
<td><select name="city" id="city">
<%
while(rs_city.next()){
out.println("<option value='"+rs_city.getString("code")+"'>"+rs_city.getString("name")+"</option>");
}
rs_city.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">民族:</td>
<td><select name="folk" id="folk">
<%
while(rs_folk.next()){
out.println("<option value='"+rs_folk.getString("code")+"'>"+rs_folk.getString("name")+"</option>");
}
rs_folk.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">学历:</td>
<td><select name="education" id="education">
<%
while(rs_education.next()){
out.println("<option value='"+rs_education.getString("code")+"'>"+rs_education.getString("name")+"</option>");
}
rs_education.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">职业:</td>
<td><select name="business" id="business">
<%
while(rs_business.next()){
out.println("<option value='"+rs_business.getString("code")+"'>"+rs_business.getString("name")+"</option>");
}
rs_business.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">职位:</td>
<td><select name="vocation" id="vocation">
<%
while(rs_vocation.next()){
out.println("<option value='"+rs_vocation.getString("code")+"'>"+rs_vocation.getString("name")+"</option>");
}
rs_vocation.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">收入:</td>
<td><select name="earning" id="earning">
<%
while(rs_earning.next()){
out.println("<option value='"+rs_earning.getString("code")+"'>"+rs_earning.getString("name")+"</option>");
}
rs_earning.close();
%>
</select></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">电话1:</td>
<td><input name="tele1" type="text" id="tele1"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">电话2:</td>
<td><input name="tele2" type="text" id="tele2"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">详细地址:</td>
<td><input name="address" type="text" id="address"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="4%">邮编:</td>
<td><input name="postalcode" type="text" id="postalcode"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td height="23%">备注:</td>
<td><textarea name="other" id="other"></textarea></td>
</tr>
</table>
<div align="center">
<input type="submit" name="Submit" onclick='return checkForm()'; value="提交"/>      
<input name="reset" type="reset" id="reset" onclick='return resetForm()'; value="重置"/>
</div>
</form>
<br><br>
</body>
</html>
robinmatrix 2004-11-22
  • 打赏
  • 举报
回复
//============================================================================
//========================这是注册页面 CustomerRegister=======================
//============================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="error.jsp" %>
<%@ include file="ConnectDB.inc"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>用户注册</title>
<script language="javascript">
function checkForm() {
//用户名 1
if (document.form1.cust_id.value.length > 10) {
alert("注册名太长,不能超过10个字符!");
form1.cust_id.focus();
return false;
}
if (document.form1.cust_id.value == "") {
alert("注册名不能为空");
form1.cust_id.focus();
return false;
}
//用户真实姓名 2
if(document.form1.name.value=="") {
alert("请输入您的真实姓名!");
form1.name.focus();
return false;
}
//密码检验 3
if (document.form1.password.value.length > 20) {
alert("密码太长,不能超过20个字!");
form1.password.focus();
return false;
}
if (document.form1.password.value == "") {
alert("密码不能为空!");
form1.password.focus();
return false;
}
//性别检验 4
if (document.form1.gender.value == "") {
alert("请选择性别!");
form1.gender.focus();
return false;
}
//生日检验 5
if(document.form1.year.value=="") {
alert("请输入年份!");
form1.year.focus();
return false;
}
if(document.form1.month.value=="") {
alert("请输入月份!");
form1.month.focus();
return false;
}
if(document.form1.day.value=="") {
alert("请输入天数!");
form1.day.focus();
return false;
}
//身份证号码检验 6
if(document.form1.idcard.value=="") {
alert("请输入您的身份证号码!");
form1.idcard.focus();
return false;
}
//详细地址检验 7
if(document.form1.address.value=="") {
alert("请输入您的居住地址!");
form1.address.focus();
return false;
}
//联系电话1检验 8
if(document.form1.tele1.value=="") {
alert("请输入您的联系电话!");
form1.tele1.focus();
return false;
}
//联系电话2检验 9
if(document.form1.tele2.value=="") {
alert("请输入您的联系电话!");
form1.tele2.focus();
return false;
}
//工资检验 10
if(document.form1.earning.value=="") {
alert("请选择您的收入!");
form1.earning.focus();
return false;
}
//民族检验 11
if(document.form1.folk.value=="") {
alert("请输入您的民族!");
form1.folk.focus();
return false;
}
//国家检验 12
//if(document.form1.country.value=="") {
// alert("请选择您所在的国家!");
// form1.country.focus();
// return false;
//}

//省检验 13
//if(document.form1.province.value=="") {
// alert("请选择您所在的省!");
// form1.province.focus();
// return false;
//}
//城市检验 14
if(document.form1.city.value=="") {
alert("请选择您所在的市!");
form1.city.focus();
return false;
}
//职位检验 15
if(document.form1.vocation.value=="") {
alert("请输入您的职位!");
form1.vocation.focus();
return false;
}
//行业检验 16
if(document.form1.business.value=="") {
alert("请输入您从事的行业!");
form1.business.focus();
return false;
}
//教育程序检验 17
if(document.form1.education.value==""){
alert("请选择您的教育程度!");
form1.education.focus();
return false;
}
//邮编检验 18
if(document.form1.postalcode.value==""){
alert("请输入您的邮编!");
form1.postalcode.focus();
return false;
}

document['form1'].action='CustomerRegister_do.jsp';
document.form1.submit();
}

function resetForm() {
document.form1.reset();
}
</script>
</head>
lijunjiejava 2004-11-22
  • 打赏
  • 举报
回复
up
nickeyfff 2004-11-22
  • 打赏
  • 举报
回复
有啥问题?

81,090

社区成员

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

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