陈高杰

kingaragorn

常用链接

统计

最新评论

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 陈高杰 阅读(506) 评论(0)  编辑  收藏 所属分类: SSH我的智囊团


只有注册用户登录后才能发表评论。


网站导航: