package cn.smbms.servlet.user;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.fastjson.JSONArray;
import com.mysql.jdbc.StringUtils;
import cn.smbms.pojo.Role;
import cn.smbms.pojo.User;
import cn.smbms.service.role.RoleService;
import cn.smbms.service.role.RoleServiceImpl;
import cn.smbms.service.user.UserService;
import cn.smbms.service.user.UserServiceImpl;
import cn.smbms.tools.Constants;
import cn.smbms.tools.PageSupport;
public class UserServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public UserServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String method = request.getParameter("method");
System.out.println("method----> " + method);
if(method != null && method.equals("add")){
//增加操作
this.add(request, response);
}else if(method != null && method.equals("query")){
this.query(request, response);
}else if(method != null && method.equals("getrolelist")){
this.getRoleList(request, response);
}else if(method != null && method.equals("ucexist")){
this.userCodeExist(request, response);
}else if(method != null && method.equals("deluser")){
this.delUser(request, response);
}else if(method != null && method.equals("view")){
this.getUserById(request, response,"userview.jsp");
}else if(method != null && method.equals("modify")){
this.getUserById(request, response,"usermodify.jsp");
}else if(method != null && method.equals("modifyexe")){
this.modify(request, response);
}else if(method != null && method.equals("pwdmodify")){
this.getPwdByUserId(request, response);
}else if(method != null && method.equals("savepwd")){
this.updatePwd(request, response);
}
}
private void updatePwd(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Object o = request.getSession().getAttribute(Constants.USER_SESSION);
String newpassword = request.getParameter("newpassword");
boolean flag = false;
if(o != null && !StringUtils.isNullOrEmpty(newpassword)){
UserService userService = new UserServiceImpl();
flag = userService.updatePwd(((User)o).getId(),newpassword);
if(flag){
request.setAttribute(Constants.SYS_MESSAGE, "修改密码成功,请退出并使用新密码重新登录!");
request.getSession().removeAttribute(Constants.USER_SESSION);//session注销
}else{
request.setAttribute(Constants.SYS_MESSAGE, "修改密码失败!");
}
}else{
request.setAttribute(Constants.SYS_MESSAGE, "修改密码失败!");
}
request.getRequestDispatcher("pwdmodify.jsp").forward(request, response);
}
private void getPwdByUserId(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Object o = request.getSession().getAttribute(Constants.USER_SESSION);
String oldpassword = request.getParameter("oldpassword");
Map<String, String> resultMap = new HashMap<String, String>();
if(null == o ){//session过期
resultMap.put("result", "sessionerror");
}else if(StringUtils.isNullOrEmpty(oldpassword)){//旧密码输入为空
resultMap.put("result", "error");
}else{
String sessionPwd = ((User)o).getUserPassword();
if(oldpassword.equals(sessionPwd)){
resultMap.put("result", "true");
}else{//旧密码输入不正确
resultMap.put("result", "false");
}
}
response.setContentType("application/json");
PrintWriter outPrintWriter = response.getWriter();
outPrintWriter.write(JSONArray.toJSONString(resultMap));
outPrintWriter.flush();
outPrintWriter.close();
}
private void modify(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String id = request.getParameter("uid");
String userName = request.getParameter("userName");
String gender = request.getParameter("gender");
String birthday = request.getParameter("birthday");
String phone = request.getParameter("phone");
String address = request.getParameter("address");
String userRole = request.getParameter("userRole");
User user = new User();
user.setId(Integer.valueOf(id));
user.setUserName(userName);
user.setGender(Integer.valueOf(gender));
try {
user.setBirthday(new SimpleDateFormat("yyyy-MM-dd").parse(birthday));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
user.setPhone(phone);
user.setAddress(address);
user.setUserRole(Integer.valueOf(userRole));
user.setModifyBy(((User)request.getSession().getAttribute(Constants.USER_SESSION)).getId());
user.setModifyDate(new Date());
UserService userService = new UserServiceImpl();
if(userService.modify(user)){
response.sendRedirect(request.getContextPath()+"/jsp/user.do?method=query");
}else{
request.getRequestDispatcher("usermodify.jsp").forward(request, response);
}
}
private void getUserById(HttpServletRequest request, HttpServletResponse response,String url)
throws ServletException, IOException {
String id = request.getParameter("uid");
if(!StringUtils.isNullOrEmpty(id)){
//调用后台方法得到user对象
UserService userService = new UserServiceImpl();
User user = userService.getUserById(id);
request.setAttribute("user", user);
request.getRequestDispatcher(url).forward(request, response);
}
}
private void delUser(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String id = request.getParameter("uid");
Integer delId = 0;
try{
delId = Integer.parseInt(id);
}catch (Exception e) {
// TODO: handle exception
delId = 0;
}
HashMap<String, String> resultMap = new HashMap<String, String>();
if(delId <= 0){
resultMap.put("delResult", "notexist");
}else{
UserService userService = new UserServiceImpl();
if(userService.deleteUserById(delId)){
resultMap.put("delResult", "true");
}else{
resultMap.put("delResult", "false");
}
}
//把resultMap转换成json对象输出
response.setContentType("application/json");
PrintWriter outPrintWriter = response.getWriter();
outPrintWriter.write(JSONArray.toJSONString(resultMap));
outPrintWriter.flush();
outPrintWriter.close();
}
private void userCodeExist(HttpServletRequest request, H
没有合适的资源?快使用搜索试试~ 我知道了~
Mybatis+Servlet超市管理系统
共217个文件
class:33个
java:32个
js:24个
5星 · 超过95%的资源 需积分: 11 51 下载量 86 浏览量
2017-12-14
10:42:11
上传
评论 1
收藏 7.03MB RAR 举报
温馨提示
此超市管理系统使用Mybatis框架+Servlet技术实现对超市订单,供应商,用户,密码的修改和设置进行管理,结构目录清晰,非常适合新手学习~欢迎大家下载,有问题可以及时联系我
资源推荐
资源详情
资源评论
收起资源包目录
Mybatis+Servlet超市管理系统 (217个子文件)
UserServlet.class 11KB
BillServlet.class 8KB
ProviderServlet.class 7KB
UserServiceImpl.class 5KB
User.class 3KB
BaseDao.class 3KB
Bill.class 3KB
BillServiceImpl.class 3KB
BigDecimalUtil.class 3KB
TestUser.class 3KB
ProviderServiceImpl.class 3KB
Provider.class 3KB
LoginServlet.class 2KB
SysFilter.class 2KB
Role.class 2KB
UserServiceTest.class 2KB
ProviderDaoImpl.class 2KB
LogoutServlet.class 2KB
PageSupport.class 1KB
MybatisUtil.class 1KB
BigDecimalUtil$BigDecimalOprations.class 1KB
UserDao.class 1KB
CharacterEncoding.class 1KB
RoleServiceImpl.class 1KB
ProviderDao.class 745B
BillDao.class 727B
UserService.class 699B
ProviderService.class 510B
Constants.class 446B
BillService.class 442B
BillDaoImpl.class 294B
RoleService.class 231B
RoleDao.class 219B
.classpath 1KB
org.eclipse.wst.common.component 528B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 9KB
laydate.css 8KB
public.css 6KB
datepicker.css 4KB
datepicker.css 4KB
WdatePicker.css 158B
entries 846B
entries 692B
entries 659B
entries 567B
entries 539B
iconfont.eot 2KB
img.gif 2KB
img.gif 2KB
datePicker.gif 1KB
My97DatePicker.htm 1KB
mybatis-3.4.4.jar 1.53MB
mysql-connector-java-5.1.39.jar 966KB
log4j-core-2.3.jar 808KB
javassist-3.21.0-GA.jar 718KB
mysql-connector-java-5.1.0-bin.jar 553KB
log4j-1.2.17.jar 478KB
fastjson-1.2.6.jar 411KB
standard.jar 384KB
junit-4.12.jar 308KB
hamcrest-all-1.3.jar 299KB
cglib-3.2.5.jar 295KB
ognl-3.1.14.jar 230KB
junit-dep-4.8.2.jar 213KB
log4j-api-2.3.jar 133KB
commons-logging-1.2.jar 60KB
asm-5.2.jar 52KB
slf4j-api-1.7.25.jar 40KB
jstl.jar 20KB
slf4j-log4j12-1.7.25.jar 12KB
UserServlet.java 13KB
BillServlet.java 10KB
ProviderServlet.java 7KB
UserServiceImpl.java 5KB
BigDecimalUtil.java 4KB
BaseDao.java 3KB
ProviderServiceImpl.java 3KB
User.java 3KB
Bill.java 3KB
LoginServlet.java 3KB
BillServiceImpl.java 2KB
Provider.java 2KB
LogoutServlet.java 2KB
UserDao.java 2KB
TestUser.java 2KB
UserService.java 1KB
PageSupport.java 1KB
SysFilter.java 1KB
BillDao.java 1KB
Role.java 1KB
ProviderDao.java 1KB
ProviderDaoImpl.java 1KB
MybatisUtil.java 1KB
CharacterEncoding.java 864B
UserServiceTest.java 852B
BillDaoImpl.java 814B
ProviderService.java 812B
BillService.java 707B
RoleServiceImpl.java 667B
共 217 条
- 1
- 2
- 3
资源评论
- sinat_366913672018-06-22这是在 myeclipse 上的么?
- qq_398743852018-01-21用户名,跟密码是啥
你是我天边最美的云菜
- 粉丝: 12
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功