1.CRM用户登录
来源:互联网 发布:flash编辑软件 编辑:程序博客网 时间:2024/04/30 09:16
1.dao层声明login()方法
public interface UserDao { /** * 用户登录 * @param user * @return */ public User login(User user);}
2.service层复制dao层的方法
public interface UserService { /** * 用户登录 * @param user * @return */ public User login(User user);}
3.创建service层的实现类,注入userDao
@Service("userService")public class UserServiceImpl implements UserService{ @Resource private UserDao userDao; @Override public User login(User user) { return userDao.login(user); }}
4.编写Controller层的login()方法
@Controller@RequestMapping("/user")public class UserController { @Resource private UserService userService; /** * 用户登录 * @param user * @param request * @return * @throws Exception */ @RequestMapping("/login") public String login(User user,HttpServletRequest request)throws Exception{ User resultUser=userService.login(user); if(resultUser==null){ request.setAttribute("user", user); request.setAttribute("errorMsg", "用户名或密码错误!"); return "login"; }else{ HttpSession session=request.getSession(); session.setAttribute("currentUser", resultUser); return "redirect:/main.jsp"; } }}
5.编写UserMapper.xml文件中的查询方法
<select id="login" parameterType="User" resultMap="UserResult"> select * from t_user where userName=#{userName} and password=#{password} and roleName=#{roleName} </select>
6.编写login.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>客户关系管理系统登录</title><script type="text/javascript" src="${pageContext.request.contextPath}/jquery-easyui-1.3.3/jquery.min.js"></script><STYLE type=text/css>BODY { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; BACKGROUND-COLOR: #ddeef2; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px}A:link { COLOR: #000000; TEXT-DECORATION: none}A:visited { COLOR: #000000; TEXT-DECORATION: none}A:hover { COLOR: #ff0000; TEXT-DECORATION: underline}A:active { TEXT-DECORATION: none}.input { BORDER-BOTTOM: #ccc 1px solid; BORDER-LEFT: #ccc 1px solid; LINE-HEIGHT: 20px; WIDTH: 182px; HEIGHT: 20px; BORDER-TOP: #ccc 1px solid; BORDER-RIGHT: #ccc 1px solid}.input1 { BORDER-BOTTOM: #ccc 1px solid; BORDER-LEFT: #ccc 1px solid; LINE-HEIGHT: 20px; WIDTH: 120px; HEIGHT: 20px; BORDER-TOP: #ccc 1px solid; BORDER-RIGHT: #ccc 1px solid;}</STYLE><script type="text/javascript"> function login(){ var userName=$("#userName").val(); var password=$("#password").val(); var roleName=$("#roleName").val(); if(userName==null||userName==""){ alert("用户名不能为空!"); return; } if(password==null||password==""){ alert("密码不能为空!"); return; } if(roleName==null||roleName==""){ alert("请选择用户类型!"); return; } $("#adminlogin").submit(); }</script></head><body><FORM id=adminlogin method=post name=adminlogin action="${pageContext.request.contextPath}/user/login.do" ><DIV></DIV><TABLE style="MARGIN: auto; WIDTH: 100%; HEIGHT: 100%" border=0 cellSpacing=0 cellPadding=0> <TBODY> <TR> <TD height=150> </TD> </TR> <TR style="HEIGHT: 254px"> <TD> <DIV style="MARGIN: 0px auto; WIDTH: 936px"><IMG style="DISPLAY: block" src="${pageContext.request.contextPath}/images/body_03.jpg"></DIV> <DIV style="BACKGROUND-COLOR: #278296"> <DIV style="MARGIN: 0px auto; WIDTH: 936px"> <DIV style="BACKGROUND: url(${pageContext.request.contextPath}/images/body_05.jpg) no-repeat; HEIGHT: 155px"> <DIV style="TEXT-ALIGN: left; WIDTH: 265px; FLOAT: right; HEIGHT: 125px; _height: 95px"> <TABLE border=0 cellSpacing=0 cellPadding=0 width="100%"> <TBODY> <TR> <TD style="HEIGHT: 45px"><INPUT type="text" class=input value="${user.userName }" name="userName" id="userName"></TD> </TR> <TR> <TD><INPUT type="password" class=input value="${user.password }" name="password" id="password"/></TD> </TR> <TR> <td> <select id="roleName" name="roleName" class="input" style="margin-top: 15px;height: 24px"> <option value="">请选择用户类型...</option> <option value="系统管理员" ${'系统管理员'==user.roleName?'selected':'' }>系统管理员</option> <option value="销售主管" ${'销售主管'==user.roleName?'selected':'' }>销售主管</option> <option value="客户经理" ${'客户经理'==user.roleName?'selected':'' }>客户经理</option> <option value="高管" ${'高管'==user.roleName?'selected':'' }>高管</option> </select> </td> </TR> </TBODY> </TABLE> </DIV> <DIV style="HEIGHT: 1px; CLEAR: both"></DIV> <DIV style="WIDTH: 380px; FLOAT: right; CLEAR: both"> <TABLE border=0 cellSpacing=0 cellPadding=0 width=300> <TBODY> <TR> <TD width=100 align=right><INPUT style="BORDER-RIGHT-WIDTH: 0px; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" id=btnLogin src="${pageContext.request.contextPath}/images/btn1.jpg" type=image name=btnLogin onclick="javascript:login();return false;"></TD> <TD width=100 align=middle><INPUT style="BORDER-RIGHT-WIDTH: 0px; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" id=btnReset src="${pageContext.request.contextPath}/images/btn2.jpg" type=image name=btnReset onclick="javascript:adminlogin.reset();return false;"></TD> </TR> </TBODY> </TABLE> </DIV> </DIV> </DIV> </DIV> <DIV style="MARGIN: 0px auto; WIDTH: 936px"><IMG src="${pageContext.request.contextPath}/images/body_06.jpg"></DIV> </TD> </TR> <TR style="HEIGHT: 30%"> <TD> </TD> </TR> </TBODY></TABLE></FORM></body></html><script type=text/javascript> if('${errorMsg}'!=''){ alert('${errorMsg}'); }</script>
8.编写main.jsp页面(空页面)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body>Main.jsp</body></html>
0 0
- 1.CRM用户登录
- (crm笔记2-5)用户登录问题之验证账户
- (crm笔记2-6)用户登录问题之cookie记住密码
- VB登录CRM系统(一)
- VB登录CRM系统(二)
- CRM--管理员登录(一)
- 修改crm的登录页面
- 修改crm的登录页面
- crm创建启用停用用户
- 用户登录
- 用户登录
- 用户登录
- 用户登录
- 用户登录
- 用户登录
- 用户登录
- 用户登录
- crm设置用户上级和业务部门
- Android——ViewPager及适配器PagerAdapter...
- poj初期 计算几何
- CodeForces - 697F Legen... AC自动机+快速幂
- Codeforces Round #398 (Div. 2)题解
- 常见的进程调度算法
- 1.CRM用户登录
- linux下vi命令修改文件及保存等使用方法整理
- 最大子序列和
- 【webpack】entry 和output的详细介绍
- C语言printf函数输出表达式中的计算顺序
- 关于: Don't know how to iterate over supplied "items" in <forEach>
- 在 Linux 下用户空间与内核空间数据交换的方式
- 51nod 1463 找朋友
- 读QT5.7源码(二)QByteArray