先添加点击事件

<input type="button" id="submitt"   value="立即登录" />

展示信息

<div id="showMsg" style="text-align: center"></div>

发送JSON格式数据给servlet,并接收回传信息

<script>
submitt.onclick=function () {
//alert(12212);
$.post("/shop/login",
{
"username":$("#username").val(),
"password":password.value
},
function (data) {
if (data.code==111){
$("#showMsg").html("对不起,你输入的账号或者密码错误").css("color","red");
}else{
window.location.href="/shop/home";
}
});
}

验证登陆,并将结果回传给jsp

@WebServlet("/login")
public class LoginServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/*获取请求参数telephone,password*/
String telephone = req.getParameter("username");
String password = req.getParameter("password");
//System.out.println(telephone+"-----"+password);
/*调用dao,验证是否匹配*/
ILoginDAO dao=new LoginDAOImpl();
Map<String ,Object> user = dao.isLogin(telephone,password); resp.setContentType("text/json;charset=UTF-8");
PrintWriter out = resp.getWriter();
Map<Object, Object> map = new HashMap<>(); if (user==null){
/**如果不正确提示电话或者密码不正确*/
map.put("code","111");
map.put("error","对不起,你输入的账号或者密码错误");
//req.setAttribute("error","对不起,你输入的账号或者密码错误");
//req.getRequestDispatcher("/views/login.jsp").forward(req,resp);
}else{
/**如果正确,跳转到主页*/
/*为什么用session,从共享数据开始到关闭浏览器,共享数据都可以获取,不受请求转发和重定向的影响*/
HttpSession session = req.getSession();//获取session对象
session.setAttribute("user",user);
resp.sendRedirect("/shop/home");
}
String s = JSON.toJSONString(map);
out.write(s);
out.close();
}
}

AJAX实现登陆的更多相关文章

  1. js进阶 14-2 如何用ajax验证登陆状态(这里用load方法)

    js进阶 14-2 如何用ajax验证登陆状态(这里用load方法) 一.总结 一句话总结:$('#test').load('test.php?password=1234560'),这样就get方式提 ...

  2. ssm+ajax实现登陆

    ssm的搭建见上一章 1.数据协议层 public User selectByLoginnameAndPassword(@Param("loginname")String logi ...

  3. 调用AJAX做登陆和注册

    先建立一个页面来检测一下我们建立的用户名能不能用,看一下有没有已经存在的用户名吗 可以通过ajax提示一下 $("#uid").blur(function(){ //取用户名 va ...

  4. Ajax客户登陆验证

        服务器端操作方便之处我就不吹了,地球人都知道,它最烦莫过于页面刷新,头都被刷晕了,而且他在刷新的时候,还触发服务器端的事件,现在Ajax的出现,他们的结合是发展的必然!    一.介绍一下Aj ...

  5. Ajax+JSP登陆后带参数跳转

    点击提交按钮后使用Ajax将用户名和密码传至后台校验,然后判断返回结果进行跳转或提示错误. <%@ taglib prefix="form" uri="http:/ ...

  6. BBS-基于用户认证组建和Ajax实现登陆验证

    功能1: 基于用户认证组件和Ajax实现登录验证(图片验证码) 总结: 1 一次请求伴随多次请求 2 PIL 3 session存储 4 验证码刷新 步骤: 1.配置静态文件夹 settings.py ...

  7. ajax——用ajax写登陆页面

    ajax.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  8. laravel ajax提交登陆存储session,并输出

    前端输出session {{ Session::get('username') }} ajax提交 <div>{{ Session::get('username') }}</div& ...

  9. Asp.Net中Ajax实现登陆判断

    Default.aspx: <head runat="server"> <title>无标题页</title> <script type= ...

随机推荐

  1. ASP.NET 性能监控工具和优化技巧

    转载自:http://blog.haoitsoft.com/index.php/archives/657 ASP.NET 性能监控工具和优化技巧 发表回复 为了阐明准确甄别性能问题的重要性,下面列举了 ...

  2. 软件测试人员必备网络知识(一):什么是cookie?

     初入职场的新人,是不是经常会被一些基础的网络知识难住,又不敢问老大,只好默默的百度?纳,我花一个星期的加班时间,把这些经常要用到的网络知识点给整理出来了!这是一个系列的,如果对你们有用,后续还会继续 ...

  3. java多线程中的调度策略

    两种线程的调度模式: 抢占式调度: 抢占式调度指的是每条线程执行的时间.线程的切换都由系统控制,系统控制指的是在系统某种运行机制下,可能每条线程都分同样的执行时间片,也可能是某些线程执行的时间片较长, ...

  4. mysql 的存储过程_多字段

    mysql 的存储过程 一.准备工作 新建一个表 /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server V ...

  5. ecside中<c:table>使用

    <ec:table action="sjzc/tbWaterproject!list.do" items="objList" var="tbWa ...

  6. java面向对象编程(九)--final

    1.final概念 final可以修饰变量或者方法.在某些情况下,程序员可能有以下需求: a.当不希望父类的某个方法被子类覆盖(override)时,可以用final关键字修饰. b.当不希望类的某个 ...

  7. Javascript 数组相关操作

    数组排序问题: sort() arr.sort() 可以直接进行排序,但是排序的方式是按unicode 顺序而来,比如1,1000,200,这个顺序不是我们想要的结果: 所以有了另一种方法,针对num ...

  8. 使用Bash Bunny从被锁定的系统抓取登陆凭据

    在今年早些时候,FB就对Bash Bunny做了相关的报导.这款号称“世界上最先进的USB攻击工具”的Bash Bunny,是否真的像其所说的一样是款渗透神器呢?下面,我将通过实例演示如何利用Bash ...

  9. 【Python】关于decode和encode

    #-*-coding:utf-8 import sys ''' *首先要搞清楚,字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码, 即先将 ...

  10. 【python】带图片验证码的登录自动化实战

    近期在跟进新项目的时候,整体的业务线非常之长,会一直重复登录退出不同账号的这个流程,所以想从登录开始实现部分的自动化.因为是B/S的架构,所以采用的是selenium的框架来实现.大致实现步骤如下: ...