不细讲,主要留自己下次复制用的(嘿嘿)
- <span style="font-size:18px;"> //登录 model
- public boolean findUserLogin(String username,String password,List<User> userlist){
- String querysql="select * from user where username=? and password=? AND state=1 ";
- List<User> list;
- try{
- //绑定参数查询数据使用find()方法查询数据返回数据为集合
- list=this.dao.find(querysql, username,password);
- }catch(Exception ex){
- ex.printStackTrace();
- return false;
- }
- if(list.isEmpty() || list==null){
- return false;
- }
- //将登录者数据添加到userlist集合中
- userlist.add(list.get(0));
- return true;
-
- }</span>
- <span style="font-size:18px;">//登录 Controller
- public void login(){
- //获取登录者信息查询
- String username=getPara("username");
-
- String password=getPara("password");
-
- List<User> userlist=new ArrayList<User>();
- boolean bflag = User.dao.findUserLogin(username, password, userlist);
- //如果数据能查出来保持会话更新登陆时间并将登录者信息响应回去
- if(bflag){
- //this.getSession().setAttribute("username", username);
- //创建当前时间以字符串形式返回
- String t=TimeHelper.Format("yyyy-MM-dd HH:mm:ss");
- //记录登录者登录信息
- String sql="update user set LoginTime=? where username=?";
- //使用update方法执行修改语句
- Db.update(sql, t,username);
- //设置代表登录状态的信息
- setAttr("status",0);
- //储存登录者信息于请求中
- setAttr("user",userlist.get(0));
- //将登录者信息保存到会话session中
- this.setSessionAttr("adminlogin", userlist.get(0));
-
- }else{
- //如果失败登录状态为-1代表
- setAttr("status",-1);
- }
- //响应请求
- this.renderJson();
-
- }</span>
- <span style="font-size:18px;"><-- 局部的html,jsp页面 --> </span>
- <span style="font-size:18px;"> <form method="post">
- <div class="form-group">
- <input type="text" class="form-control" placeholder="用户名" required="required" id="username">
- </div>
- <div class="form-group">
- <input type="password" class="form-control" placeholder="密码" required="required" id="password">
- </div>
- <button id="login" type="button" class="btn btn-primary block full-width m-b" onclick="javascript:loginSubmit()">登 录</button>
-
- <!--
- <p class="text-muted text-center"> <a href="login.html#"><small>忘记密码了?</small></a> | <a href="register.html">注册一个新账号</a>
- </p>
- -->
-
- </form></span>
敲击回车键触发 登录的单击事件
- <span style="font-size:18px;"> <script>
- $("body").keydown(function() {
- if (event.keyCode == "13") {//keyCode=13是回车键
- $("#login").click();
- }
- });
-
- </script></span>
ajax代码如下:
- <span style="font-size:18px;">/*
- *管理员登录
- */
- function loginSubmit(){
- //获取login.jsp页面的数据登录者姓名和密码
- var username=$("input#username").val();
- var password=$("input#password").val();
- if(username==""){
- layer.tips('用户名不能为空',"#username",{
- tips:[2,'#ff0000']});
- $("input#username").focus();
- return;
- }
- if(password==""){
- layer.tips('密码不能为空','#password',{
- tips:[2,'#ff0000']
- });
- $("input#password").focus();
- return;
- }
- //当密码和用户名不为空的时候使用Ajax进行用户信息登录验证
- var strJSON ={"username":username,"password":password};
- jQuery.ajax({
- url:"./user/login",
- type:"POST",
- data:strJSON,
- success:function(obj){
- if(obj.status==0){
- //将登录者信息保存在cookie中以便添加信息时添加经济人
- setCookie("loginname",obj.user.username);
- //跳转到首页
- window.location.replace("index.jsp");//登录成功
- }else{
- layer.alert('用户名或密码不正确', {
- skin: 'layui-layer-molv' //样式类名
- ,closeBtn: 0
- ,shift: 4 //动画类型
- });
- }
- },
- error:function(){
- layer.alert('系统错误',{skin:'layui-layer-molv'
- ,closeBatn:0});
- },
- complete:function(obj){
- if(obj.status==200);
- }
- });
- }</span>
|