学习过程:
一、添加用户
我们继续上一节课的示例,把增删改查都完成了。
1、新建一个新添加用户页面adduser.jsp,代码如下:
<body>
<form action="admin/userServlet?op=add" method="post">
用户名:<input name="username" />
<br />
密码:<input name="pass"
type="password" />
<br />
性别:<input type="radio" value="1" name="sex" checked="checked" />男 <input type="radio" value="0" name="sex"/>女
<br /> <input type="submit" value="注册" />
</form>
</body>
2、对应的servlet实现
else if (op.equals("add")) {
// 获得view的数据
String username = request.getParameter("username");
System.out.println(username);
String pass = request.getParameter("pass");
String sex = request.getParameter("sex");
System.out.println(sex);
User user = new User();
user.setUsername(username);
user.setPass(pass);
user.setSex(Integer.parseInt(sex));
int result = userDao.addUser(user);
if (result > 0) {
response.sendRedirect("userServlet?op=list");
} else {
response.sendRedirect("error.jsp");
}
}
二、删除用户
1、修改页面的超链接,因为删除需要传递用户id,所以这里需要修改超链接的,代码在前面事实上已经有了,核心代码如下:
<td><a href="admin/userServlet?op=delete&uid=${user.userId} "
onclick="return confirm('你真的要删除吗?')">删除</a> | <a
href="admin/userServlet?op=toupdate&uid=${user.userId}">修改</a></td>
2、对应的servlet的实现
else if (op.equals("delete")) {
String uid = request.getParameter("uid");
int result = userDao.delUser(Integer.parseInt(uid));
if (result > 0) {
response.sendRedirect("userServlet?op=list");
} else {
response.sendRedirect("error.jsp");
}
}
三、修改用户
1、修改页面比较复杂需要先进入修改页面,修改超链接,进入修改页面:
2、对应的servlet
else if (op.equals("toupdate")) {
String uid = request.getParameter("uid");
User user = userDao.getUserById(Integer.parseInt(uid));
request.setAttribute("user", user);
request.getRequestDispatcher("updateuser.jsp").forward(request,
response);
}
3、修改页面updateuser.jsp代码实现:
<form action="admin/userServlet?op=update" method="post">
<input type="hidden" name="uid" value="${user.userId }" />
用户名:<input name="username" value="${user.username }" />
<br />
密码:<input name="pass"
type="password" value="${user.pass }" />
<br />
性别:<input type="radio" value="1" name="sex" <c:if test="${user.sex==1 }">checked="checked"</c:if> />男 <input type="radio" value="0" name="sex" <c:if test="${user.sex==0 }">checked="checked"</c:if>/>女
<br /> <input type="submit" value="修改" />
</form>
4、执行更新的对应代码如下:
else if (op.equals("update")) {
String uid = request.getParameter("uid");
String username = request.getParameter("username");
String pass = request.getParameter("pass");
String sex = request.getParameter("sex");
User user = new User();
user.setUserId(Integer.parseInt(uid));
user.setUsername(username);
user.setPass(pass);
user.setSex(Integer.parseInt(sex));
int result = userDao.updateUser(user);
if (result > 0) {
response.sendRedirect("userServlet?op=list");
} else {
response.sendRedirect("error.jsp");
}
}