指导老师:北大青鸟五道口校区原玉明老师
项目架构如下:
dao包如下:
dao实现包如下:
实体包如下:
servlet服务层如下:
实现分页包如下:
举一个案例实现网页中的用户管理模块:
首先创建用户的实体类
package cn.happy.easybuy.entity; import java.util.Date; //存放用户基本信息 public class User { private String id;//用户名 private String name;//用户真实姓名 private String password;//密码 private String sex;//性别 private String birthday;//出生日期 private String identityCode;//身份证号 private String email;//email private String mobile;//手机 private String address;//收货地址 private String login;//是否登录 private int status;//类型 1位普通用户 2位管理员 public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getBirthday() { return birthday; } public void setBirthday(String birthday) { this.birthday = birthday; } public String getIdentityCode() { return identityCode; } public void setIdentityCode(String identityCode) { this.identityCode = identityCode; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getMobile() { return mobile; } public void setMobile(String mobile) { this.mobile = mobile; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } }
其次我们要做的就是为用户定制专有的方法进行操作也就是Dao包(代码如下)
package cn.happy.easybuy.dao; import java.util.List; import cn.happy.easybuy.entity.User; public interface UserDao { //查询所有的用户信息 public List<User> getAllUserInfo() throws Exception; //添加用户信息 public boolean add(User user) throws Exception; //验证该用户名是否存在 public boolean useridOrNot(User user) throws Exception; //验证是否登录成功 public boolean isLoginOrNot(User user) throws Exception; //根据用户名查找对应的用户的所有信息 public User getUserInfoByUid(String uid) throws Exception; /** * 根据用户名查找用户方法 * @param userID * @return * @throws Exception */ public User selectByName(String userID) throws Exception; /** * 修改用户方法 * @return * @throws Exception */ public int modifyUser(User user) throws Exception; /** * 删除用户方法 * @param userId * @return * @throws Exception */ public int removeUser(String userId) throws Exception; /** * 查询新闻总记录数 */ public int getUserCount() throws Exception; /** * 查询分页内容相关的用户内容 * */ public List<User> getUserInfo(int pageIndex,int pageSize)throws Exception; }
接下来我们要做的就是为方法进行扩充进行实现方法的功能也就是DaoImpl包(代码如下):
package cn.happy.easybuy.dao.impl; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import cn.happy.easybuy.dao.BaseDao; import cn.happy.easybuy.dao.UserDao; import cn.happy.easybuy.entity.User; public class UserDaoImpl extends BaseDao implements UserDao { //查询所有的用户信息 @Override public List<User> getAllUserInfo() throws Exception { String sql="select * from EASYBUY_USER"; ResultSet rs=executeQuery(sql); List<User> list=new ArrayList<User>(); if(rs!=null){ while(rs.next()){ User user=new User(); user.setId(rs.getString("EU_USER_ID")); user.setAddress(rs.getString("EU_ADDRESS")); user.setBirthday(rs.getString("EU_BIRTHDAY")); user.setEmail(rs.getString("EU_EMAIL")); user.setIdentityCode(rs.getString("EU_IDENTITY_CODE")); user.setLogin(rs.getString("EU_LOGIN")); user.setMobile(rs.getString("EU_MOBILE")); user.setName(rs.getString("EU_USER_NAME")); user.setPassword(rs.getString("EU_PASSWORD")); user.setSex(rs.getString("EU_SEX")); user.setStatus(rs.getInt("EU_STATUS")); list.add(user); } } return list; } //添加用户信息 @Override public boolean add(User user) throws Exception { //EU_USER_ID, EU_USER_NAME, EU_PASSWORD, EU_SEX, EU_BIRTHDAY, EU_IDENTITY_CODE, //EU_EMAIL, EU_MOBILE, EU_ADDRESS, EU_STATUS, EU_LOGIN String sql="insert into EASYBUY_USER values(?,?,?,?,?,?,?,?,?,?,?)"; Object[] objs={ user.getId(), user.getName(), user.getPassword(), user.getSex(), user.getBirthday(), user.getIdentityCode(), user.getEmail(), user.getMobile(), user.getAddress(), user.getStatus(), user.getLogin() }; int count=executeUpdate(sql, objs); if(count>0){ return true; } return false; } //验证是否登录成功 @Override public boolean isLoginOrNot(User user) throws Exception { String sql="select count(1) as mycount from EASYBUY_USER where EU_USER_ID=? and EU_PASSWORD=?"; Object[] objs={ user.getId(), user.getPassword() }; ResultSet rs=executeQuery(sql, objs); int count=0; if(rs!=null){ while(rs.next()){ count=rs.getInt("mycount"); } } if(count>0){ return true; } return false; } //验证是否存在该用户名 @Override public boolean useridOrNot(User user) throws Exception { String sql="select count(1) as mycount from EASYBUY_USER where EU_USER_ID=? "; Object[] objs={user.getId()}; ResultSet rs=executeQuery(sql, objs); int count=0; if(rs!=null){ while(rs.next()){ count=rs.getInt("mycount"); } } if(count>0){ return true; } return false; } //根据用户名查找对应的用户的所有信息 @Override public User getUserInfoByUid(String uid) throws Exception { String sql="select * from dbo.EASYBUY_USER where EU_USER_ID=?"; Object[] objs={uid}; ResultSet rs=executeQuery(sql, objs); User user=new User(); if(rs!=null){ while(rs.next()){ user.setId(rs.getString("EU_USER_ID")); user.setAddress(rs.getString("EU_ADDRESS")); user.setBirthday(rs.getString("EU_BIRTHDAY")); user.setEmail(rs.getString("EU_EMAIL")); user.setIdentityCode(rs.getString("EU_IDENTITY_CODE")); user.setLogin(rs.getString("EU_LOGIN")); user.setMobile(rs.getString("EU_MOBILE")); user.setName(rs.getString("EU_USER_NAME")); user.setPassword(rs.getString("EU_PASSWORD")); user.setSex(rs.getString("EU_SEX")); user.setStatus(rs.getInt("EU_STATUS")); } } return user; } /** * 根据用户查询所有用户信息 * @throws Exception */ @Override public User selectByName(String userID) throws Exception { // TODO Auto-generated method stub String sql ="select * from easybuy_user where eu_user_id=?"; Object[] objs ={userID}; ResultSet rs = executeQuery(sql, objs); User user = new User(); try { if (rs!=null) { while (rs.next()) { user.setId(rs.getString("EU_USER_ID")); user.setName(rs.getString("EU_USER_NAME")); user.setSex(rs.getString("EU_SEX")); user.setEmail(rs.getString("EU_EMAIL")); user.setBirthday(rs.getString("EU_BIRTHDAY")); user.setAddress(rs.getString("EU_ADDRESS")); user.setIdentityCode(rs.getString("EU_IDENTITY_CODE")); user.setMobile(rs.getString("EU_MOBILE")); user.setPassword(rs.getString("EU_PASSWORD")); user.setLogin(rs.getString("EU_LOGIN")); user.setStatus(rs.getInt("EU_STATUS")); } } } catch (Exception e) { e.printStackTrace(); } return user; } /** * 修改用户信息 * @throws Exception */ @Override public int modifyUser(User user) throws Exception { // TODO Auto-generated method stub String sql ="update EASYBUY_USER set eu_user_name = ? ,eu_password = ?, eu_sex = ? , eu_birthday = ? ," + " eu_mobile = ?,eu_address = ? where eu_user_id= ?"; Object[] objs ={ user.getName(), user.getPassword(), user.getSex(), user.getBirthday(), user.getMobile(), user.getAddress(), user.getId() }; int count =executeUpdate(sql,objs); return count; } /** * 删除用户 * @throws Exception */ @Override public int removeUser(String userId) throws Exception { // TODO Auto-generated method stub String sql ="delete from EASYBUY_USER where eu_user_id = ?"; Object[]objs={userId}; int count =executeUpdate(sql, objs); return count; } /** * 获取用户信息总记录数 */ @Override public int getUserCount() throws Exception { String sql = "select count(1) as count from dbo.EASYBUY_USER"; ResultSet rs = executeQuery(sql); int id =0; if (rs!=null) { try { while (rs.next()) { id=rs.getInt("count"); } } catch (Exception e) { e.printStackTrace(); } } return id; } /** * 获取用户分页所展示的信息 */ @Override public List<User> getUserInfo(int pageIndex, int pageSize) throws Exception { // TODO Auto-generated method stub String sql="select top "+pageSize+" * from dbo.EASYBUY_USER where EU_USER_ID not in(select top "+(pageIndex-1)*pageSize+" EU_USER_ID from dbo.EASYBUY_USER order by EU_USER_ID desc) order by EU_USER_ID desc"; ResultSet rs = executeQuery(sql); List<User> list=new ArrayList <User>(); if (rs!=null) { try { while (rs.next()) { User n = new User(); // EU_USER_ID, EU_USER_NAME, EU_PASSWORD, EU_SEX, EU_BIRTHDAY, EU_IDENTITY_CODE, EU_EMAIL, EU_MOBILE, EU_ADDRESS, EU_STATUS, EU_LOGIN n.setId(rs.getString("EU_USER_ID")); n.setName(rs.getString("EU_USER_NAME")); n.setPassword(rs.getString("EU_PASSWORD")); n.setSex(rs.getString("EU_SEX")); n.setBirthday(rs.getString("EU_BIRTHDAY")); n.setIdentityCode(rs.getString("EU_IDENTITY_CODE")); n.setEmail(rs.getString("EU_EMAIL")); n.setMobile(rs.getString("EU_MOBILE")); n.setAddress(rs.getString("EU_ADDRESS")); n.setStatus(rs.getInt("EU_STATUS")); n.setLogin(rs.getString("EU_LOGIN")); list.add(n); } } catch (Exception e) { e.printStackTrace(); } } return list; }
接下来我们就要创建servlet层进行与网页传递数据(代码如下):
package cn.happy.easybuy.servlet; import java.io.IOException; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.happy.easybuy.dao.impl.UserDaoImpl; import cn.happy.easybuy.entity.User; import cn.happy.easybuy.until.UserPage; public class UserServlet extends HttpServlet { UserDaoImpl user = new UserDaoImpl(); /** 李晓鹏 */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } /** 李晓鹏 */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String oper=request.getParameter("oper"); if (oper.equals("list")) { selectUser(request,response); }else if(oper.equals("modify")){ modifyUser(request,response); }else if(oper.equals("del")){ delUserInfo(request,response); }else if (oper.equals("modifytrue")){ modifyUserInfo(request,response); } } /** * 实现查询所有用户信息的方法 */ public void selectUser(HttpServletRequest request, HttpServletResponse response){ UserPage cpage1 =new UserPage(); cpage1.setPageSize(5); try { //返回总记录数 cpage1.setPageSum(user.getUserCount()); cpage1.setPageCount((int)Math.ceil(cpage1.getPageSum()*1.0/cpage1.getPageSize())); //当用户没有点击下一页时默认显示第一页数据 int pageIndex=1; String uindex=request.getParameter("pageIndex"); if (uindex!=null&&!uindex.equals("")) { pageIndex=Integer.parseInt(uindex); //给总页数赋值 if(pageIndex<1){ pageIndex=1; } if(pageIndex>cpage1.getPageCount()){ pageIndex=cpage1.getPageCount(); } } cpage1.setPageIndex(pageIndex); //给集合赋值 cpage1.setList(user.getUserInfo(cpage1.getPageIndex(), cpage1.getPageSize())); //将page对象放入作用域中 request.setAttribute("page", cpage1); request.getRequestDispatcher("/manage/user.jsp").forward(request, response); }catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } /** *实现修改用户页面根据ID获取到用户的信息的方法 */ public void modifyUser(HttpServletRequest request,HttpServletResponse response){ String uid = request.getParameter("uid"); try { uid=new String(uid.getBytes("iso-8859-1"),"utf-8"); User us = user.selectByName(uid); request.setAttribute("us", us); request.getRequestDispatcher("/manage/user-modify.jsp").forward(request, response); } catch (Exception e) { e.printStackTrace(); } } /** * 实现用户真实修改 */ public void modifyUserInfo(HttpServletRequest request,HttpServletResponse response){ String uid = request.getParameter("userName"); String name = request.getParameter("name"); String passWord=request.getParameter("passWord"); String sex=request.getParameter("sex"); String birthday=request.getParameter("birthday"); String mobile=request.getParameter("mobile"); String address=request.getParameter("address"); User ur = new User(); ur.setId(uid); ur.setName(name); ur.setPassword(passWord); ur.setSex(sex); ur.setBirthday(birthday); ur.setMobile(mobile); ur.setAddress(address); int count =0; try { count=user.modifyUser(ur); if (count>0) { request.getRequestDispatcher("/servlet/UserServlet?oper=list").forward(request, response); } } catch (Exception e) { e.printStackTrace(); } } /** * 实现删除用户的方法 */ public void delUserInfo(HttpServletRequest request,HttpServletResponse response){ String uid = request.getParameter("uid"); int count =0; try { count=user.removeUser(uid); System.out.println(count); if (count>0) { request.getRequestDispatcher("/servlet/UserServlet?oper=list").forward(request, response); } } catch (Exception e) { e.printStackTrace(); } } }
最后如果需要给用户模块中的信息用于分页显示则需要page层(代码如下):
package cn.happy.easybuy.until; import java.util.List; import cn.happy.easybuy.entity.User; public class UserPage { private int pageIndex=1; //当前默认显示第一页数据 private int pageSize=3;//每页显示3条数据 private int pageSum;//总记录数 private int pageCount;//总页数 private List<User>list;//保存消息分页信息的集合 public int getPageIndex() { return pageIndex; } public void setPageIndex(int pageIndex) { this.pageIndex = pageIndex; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getPageSum() { return pageSum; } public void setPageSum(int pageSum) { this.pageSum = pageSum; } public int getPageCount() { return pageCount; } public void setPageCount(int pageCount) { this.pageCount = pageCount; } public List<User> getList() { return list; } public void setList(List<User> list) { this.list = list; } }
这样一个用户的模块就做好了,接下来我们需要做的就是在用户的JSP页面中用于EL表达式进行页面展示了。如果需要增加自己的特点则添加jquery代码即可!
为了一些新手还是决定把jsp页面中的代码给出如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>后台管理 - 易买网</title> <link type="text/css" rel="stylesheet" href="../css/style.css" /> <script type="text/javascript" src="../scripts/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="../scripts/function.js"></script> </head> <body> <div id="header" class="wrap"> <div id="logo"><img src="../images/logo.gif" /></div> <div class="help"><a href="/easyBuy/servlet/doIndexServlet">返回前台页面</a></div> <div class="navbar"> <ul class="clearfix"> <li class="current"><a href="<%=path %>/manage/index.jsp">首页</a></li> <li><a href="<%=path %>/servlet/UserServlet?oper=list">用户</a></li> <li><a href="<%=path %>/servlet/doProductServlet?oper=proManage">商品</a></li> <li><a href="<%=path %>/servlet/doOrderServlet?oper=list">订单</a></li> <li><a href="<%=path %>/servlet/CommentServlet?oper=managelist">留言</a></li> <li><a href="<%=path %>/servlet/NewsServlet?oper=list">新闻</a></li> </ul> </div> </div> <div id="childNav"> <div class="welcome wrap"> 管理员${loginname }您好,今天是2012-12-21,欢迎回到管理后台。 </div> </div> <div id="position" class="wrap"> 您现在的位置:<a href="index.html">易买网</a> > 管理后台 </div> <div id="main" class="wrap"> <div id="menu-mng" class="lefter"> <div class="box"> <dl> <dt>用户管理</dt> <dd><a href="<%=path %>/servlet/UserServlet?oper=list">用户管理</a></dd> <dt>商品信息</dt> <dd><em><a href="<%=path %>/servlet/doProductClassServlet?oper=add">新增</a></em><a href="<%=path %>/servlet/doProductClassServlet?oper=list">分类管理</a></dd> <dd><em><a href="<%=path %>/servlet/doProductServlet?oper=backProductAdd">新增</a></em><a href="<%=path %>/servlet/doProductServlet?oper=proManage">商品管理</a></dd> <dt>订单管理</dt> <dd><a href="<%=path %>/servlet/doOrderServlet?oper=list">订单管理</a></dd> <dt>留言管理</dt> <dd><a href="<%=path %>/servlet/CommentServlet?oper=managelist">留言管理</a></dd> <dt>新闻管理</dt> <dd><em><a href="<%=path %>/manage/news-add.jsp">新增</a></em><a href="<%=path %>/servlet/NewsServlet?oper=list">新闻管理</a></dd> </dl> </div> </div> <div class="main"> <h2>用户管理</h2> <div class="manage"> <table class="list"> <tr> <th>用户名</th> <th>真实姓名</th> <th>性别</th> <th>Email</th> <th>手机</th> <th>操作</th> </tr> <c:forEach items="${page.list }" var="item" > <tr> <td class="first w4 c">${item.id }</td> <td class="w1 c">${item.name }</td> <c:choose> <c:when test="${item.sex eq 'T'}"> <td>男</td> </c:when> <c:otherwise> <td>女</td> </c:otherwise> </c:choose> <td>${item.email }</td> <td class="w4 c">${item.mobile }</td> <td class="w1 c"><a href="<%=path %>/servlet/UserServlet?oper=modify&uid=${item.id }">修改</a> <a class="manageDel" href="<%=path %>/servlet/UserServlet?oper=del&uid=${item.id }">删除</a></td> </tr> </c:forEach> </table> </div> </div> <div class="clear"></div> <div class="pager"> <ul class="clearfix"> <li><a href="<%=path %>/servlet/UserServlet?oper=list&pageIndex=1">首页</a></li> <li><a href="<%=path %>/servlet/UserServlet?oper=list&pageIndex=${page.pageIndex-1}">上一页</a></li> <li>[${page.pageIndex }/${page.pageCount }]</li> <li><a href="<%=path %>/servlet/UserServlet?oper=list&pageIndex=${page.pageIndex+1}">下一页</a></li> <li><a href="<%=path %>/servlet/UserServlet?oper=list&pageIndex=${page.pageCount}">尾页</a></li> </ul> </div> </div> <div id="footer"> Copyright © 2013 北大青鸟 All Rights Reserved. 京ICP证1000001号 </div> </body> </html>
用户修改页面如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>后台管理 - 易买网</title> <link type="text/css" rel="stylesheet" href="../css/style.css" /> <script type="text/javascript" src="../scripts/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="../scripts/function.js"></script> </head> <body> <div id="header" class="wrap"> <div id="logo"><img src="../images/logo.gif" /></div> <div class="help"><a href="/easyBuy/servlet/doIndexServlet">返回前台页面</a></div> <div class="navbar"> <ul class="clearfix"> <li class="current"><a href="<%=path %>/manage/index.jsp">首页</a></li> <li><a href="<%=path %>/servlet/UserServlet?oper=list">用户</a></li> <li><a href="<%=path %>/servlet/doProductServlet?oper=proManage">商品</a></li> <li><a href="<%=path %>/servlet/doOrderServlet?oper=list">订单</a></li> <li><a href="<%=path %>/servlet/CommentServlet?oper=managelist">留言</a></li> <li><a href="<%=path %>/servlet/NewsServlet?oper=list">新闻</a></li> </ul> </div> </div> <div id="childNav"> <div class="welcome wrap"> 管理员${loginname }您好,今天是2012-12-21,欢迎回到管理后台。 </div> </div> <div id="position" class="wrap"> 您现在的位置:<a href="index.html">易买网</a> > 管理后台 </div> <div id="main" class="wrap"> <div id="menu-mng" class="lefter"> <div class="box"> <dl> <dt>用户管理</dt> <dd><a href="<%=path %>/servlet/UserServlet?oper=list">用户管理</a></dd> <dt>商品信息</dt> <dd><em><a href="<%=path %>/servlet/doProductClassServlet?oper=add">新增</a></em><a href="<%=path %>/servlet/doProductClassServlet?oper=list">分类管理</a></dd> <dd><em><a href="<%=path %>/servlet/doProductServlet?oper=backProductAdd">新增</a></em><a href="<%=path %>/servlet/doProductServlet?oper=proManage">商品管理</a></dd> <dt>订单管理</dt> <dd><a href="<%=path %>/servlet/doOrderServlet?oper=list">订单管理</a></dd> <dt>留言管理</dt> <dd><a href="<%=path %>/servlet/CommentServlet?oper=managelist">留言管理</a></dd> <dt>新闻管理</dt> <dd><em><a href="<%=path %>/manage/news-add.jsp">新增</a></em><a href="<%=path %>/servlet/NewsServlet?oper=list">新闻管理</a></dd> </dl> </div> </div> <div class="main"> <h2>修改用户</h2> <div class="manage"> <form action="<%=path %>/servlet/UserServlet?oper=modifytrue" method="post"> <table class="form"> <tr> <td class="field">用户名(*):</td> <td><input type="text" class="text" name="userName" value="${us.id }" readonly="readonly" /></td> </tr> <tr> <td class="field">真实姓名(*):</td> <td><input type="text" class="text" name="name" value="${us.name }" /></td> </tr> <tr> <td class="field">登录密码(*):</td> <td><input type="text" class="text" name="passWord" value="${us.password}" /></td> </tr> <tr> <td class="field">确认密码(*):</td> <td><input type="text" class="text" name="passWord" value="${us.password}" /></td> </tr> <tr> <td class="field">性别(*):</td> <c:choose> <c:when test="${us.sex eq 'T'}"> <td><input type="radio" name="sex" value="T" checked="checked" />男 <input type="radio" name="sex" value="F" />女</td> </c:when> <c:otherwise> <td><input type="radio" name="sex" value="T" />男 <input type="radio" checked="checked" name="sex" value="F" />女</td> </c:otherwise> </c:choose> </tr> <tr> <td class="field">出生日期:</td> <td> <input type="text" class="text" name="birthday" value="${us.birthday} " /> <input type="text" class="text" name="Tbirthday" value="日期格式:xxxx-xx-xx " disabled="disabled"/> </td> </tr> <tr> <td class="field">手机(*):</td> <td><input type="text" class="text" name="mobile" value="${us.mobile} " /></td> </tr> <tr> <td class="field">地址(*):</td> <td><input type="text" class="text" name="address" value="${us.address}" /></td> </tr> <tr> <td></td> <td><label class="ui-blue"><input type="submit" name="submit" value="更新" /></label></td> </tr> </table> </form> </div> </div> <div class="clear"></div> </div> <div id="footer"> Copyright © 2013 北大青鸟 All Rights Reserved. 京ICP证1000001号 </div> </body> </html>
关于用户模块就是这些了,希望可以对有需要帮助的同学有效果!
如果需要完整项目的同学可以关注本人博客私信我或者联系本人QQ1097503654!!!