3----SSH綜合實戰(Struts+Spring+Hibernate)----我的智囊團(用戶注冊2)
在errors.jsp、register.jsp和index.jsp中的inc前面加上../index.jsp
<jsp:include flush="true" page="../inc/template.jsp">
<jsp:param name="url" value="../"/>
</jsp:include>
template.jsp
<%@ page contentType="text/html;charset=gbk"%>
<!-- 作者:董鳴楠-->
<table width="760" border="0" cellpadding="0" cellspacing="0">
<tr align="center">
<td width="345"></td>
<td width="212">
<a href="#">
<img src="${param.url}images/banner_logo.jpg" alt="智囊團" width="170" height="78" border="0"/></a>
</td>
<td width="345">
<table width="345" border="0" cellspacing="0" cellpadding="0">
<tr valign="middle">
<td align="right">
<a href="#">
<img src="${param.url}images/banner_ico05.jpg" alt="我要提問" border="0">
</a>
</td>
<td width="138">
<a href="#">
<img src="${param.url}images/banner_ico06.jpg" alt="我要登錄" border="0">
</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
<hr>
register.jsp
<%@ page contentType="text/html;charset=gbk"%>
<%@ page import="java.util.*"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<html:html lang="true">
<head>
<title>MLDN —— 我的智囊團</title>
<META NAME="Generator" CONTENT="Struts + Spring + Hibernate + MySQL + Tomcat + CP">
<META NAME="Author" CONTENT="李興華">
<META NAME="Keywords" CONTENT="智囊團,SSH,tomcat,mysql">
<META NAME="Description" CONTENT="MLDN旗下網站 —— www.zhinangtuan.net.cn">
</head>
<body>
<center>
<jsp:include flush="true" page="../inc/template.jsp">
<jsp:param name="url" value="../"/>
</jsp:include>
<h1>用戶注冊</h1>
<html:form action="" method="post">
用戶 I D: <html:text property="userid"></html:text><br>
用戶密碼: <html:password property="userpwd"></html:password><br>
確認密碼: <html:password property="confirmpwd"></html:password><br>
丟失密碼提示問題: <html:text property="userques"></html:text><br>
丟失密碼問題答案: <html:text property="userans"></html:text><br>
驗證碼: <html:text property="checkcode"></html:text>
<img src="image.jsp"><br>
<input type="hidden" name="status" value="register">
<input type="hidden" name="type" value="1">
<html:submit value="注冊"></html:submit>
<html:reset value="重置"></html:reset>
</html:form>
</center>
</body>
</html:html>
errors.jsp
<%@ page contentType="text/html;charset=gbk"%>
<%@ page import="java.util.*"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<html:html lang="true">
<head>
<title>MLDN —— 我的智囊團</title>
<META NAME="Generator" CONTENT="Struts + Spring + Hibernate + MySQL + Tomcat + CP">
<META NAME="Author" CONTENT="李興華">
<META NAME="Keywords" CONTENT="智囊團,SSH,tomcat,mysql">
<META NAME="Description" CONTENT="MLDN旗下網站 —— www.zhinangtuan.net.cn">
</head>
<body>
<center>
<jsp:include flush="true" page="../inc/template.jsp">
<jsp:param name="url" value="../"/>
</jsp:include>
<h1>程序出現了以下錯誤</h1>
<html:errors/>
<p><a href="#" onclick="history.back()">返回上一頁</a>
</center>
</body>
</html:html>
瀏覽器中輸入http://localhost:8080/zhinangtuan/jsp/register.jsp卻沒有反應,原來是因為
<html:form action="user.do" method="post">中的action原來沒有填
struts-config.xml
path="/jsp/user"
register.jsp
<html:form action="jsp/user.do" method="post">
IUserDAO.java
// 按userid查找用戶
public User queryByUserid(String userid) throws Exception;
IUserDAOImpl.java
public User queryByUserid(String userid) throws Exception {
User user = null;
String hql = "From User As u WHERE u.userid=?";
Query q = super.getSession().createQuery(hql);
q.setString(0, userid);
List all = q.list();
if (all.size() > 0) {
user = (User) all.get(0);
}
return user;
}
UserAction.java
public ActionForward register(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
UserForm userForm = (UserForm) form;// TODO Auto-generated method stub
// 先判斷驗證碼是否正確
String ccode = (String)request.getSession().getAttribute("ccode");
String checkcode = userForm.getCheckcode();
if(!checkcode.equals(ccode)) {
ActionMessages errors = new ActionMessages();
errors.add("checkcode", new ActionMessage("checkcode.error"));
super.saveErrors(request, errors);
return mapping.getInputForward();
}
// 如果正確,則需要向數據庫中插入
User user = null;
try {
user = this.iuserdao.queryByUserid(userForm.getUserid());
if (user == null) {
MD5Code md5 = new MD5Code();
user = new User();
user.setUserid(userForm.getUserid());
user.setUserpwd(md5.getMD5ofStr(userForm.getUserpwd()));
user.setUserques(userForm.getUserques());
user.setUserans(userForm.getUserans());
user.setGrade(1);
this.iuserdao.register(user);
request.getSession().setAttribute("userid", user.getUserid());
request.getSession().setAttribute("grade", user.getGrade());
return mapping.findForward("registersuccess");
} else {
ActionMessages errors = new ActionMessages();
errors.add("exist", new ActionMessage("user.userid.exist"));
super.saveErrors(request, errors);
return mapping.getInputForward();
}
}catch (Exception e) {
e.printStackTrace();
return mapping.findForward("registerfailure");
}
}
本節到此為止
posted on 2008-07-12 19:42 陳高杰 閱讀(524) 評論(0) 編輯 收藏 所屬分類: SSH我的智囊團