一、登录的完成

先导包jquery和MySql
//异步提交
<script type="text/javascript" src="js/jquery-1.8.2.min.js"></script>       //在这里用来支持$写法
<script type="text/javascript">

$(function(){
  
$("#bt").click(function () {
    //点击id为bt的按钮执行以下方法
$.ajax({
type:"post", //提交方式
url:"login.do", //提交地址 这里配置提交到servlet需要web.xml看下文
data:{"username":$("#username").val(),    //获取username的值
"password":$("#password").val()}, //提交内容 success:function(msg){
alert(msg);
} //成功返回执行方法
})
})
}) </script>
异步提交不用from表单所以提交内容如下
//没有使用from表单,所以这里用betton.id执行相应方法
用户名:<input type="text" id="username"><br>
秘密:<input type="password" id="password"><br>
<input type="button" id="bt" value="登录">
这里xml得配置
<!-- 登录 -->
<servlet>
<servlet-name>login</servlet-name>
<servlet-class>Servlet.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login.do</url-pattern>
</servlet-mapping>
//select链接后台,select-mapping只负责前台数据,用servlet-name搭建前后台数据桥梁

控制层Servlet

 1 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
2 throws ServletException, IOException {
3 //这里就是用来支持中文
4 req.setCharacterEncoding("utf-8");
5 resp.setCharacterEncoding("utf-8");
6
7
8
9 String username=req.getParameter("username");
10 String password=req.getParameter("password");
11
12 UserService us=new UserService();
13
14 try {
15 us.login(username,password);
16 resp.getWriter().write("登录成功!");
17 } catch (Exception e) {
18 // TODO Auto-generated catch block
19 //e.printStackTrace();
20 resp.getWriter().write(e.getMessage());
21 }
22 }

服务层service

public void login(String username, String password) throws Exception {
UserDao ud=new UserDao() ; //链接Dao
user user = ud.login(username,password); //接收Dao返回内容 这里得建立user实体类
if (user.getUsername()==null &&user.getPassword()==null) {
throw new Exception("登陆失败!");
} }

数据持久层Dao

老样子(先写链接方法,和设置会用到的全局变量)
Connection conn;
Statement stem;
ResultSet rs;
public void lianjie() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bj", "root", "123456");
} catch (Exception e) {e.printStackTrace();}
} public user login(String username, String password) throws Exception {
this.lianjie();
stem = conn.createStatement();
rs = stem.executeQuery("select * from user where username='"+username+"' and password='"+password+"'");
user user = new user();
while (rs.next()) {
user.setUsername(rs.getString("username"));//从数据库内容rs,对应属性赋值实体类
user.setPassword(rs.getString("password"));
}
//ResultSet结果集有一个索引指针,最初这个指针是指向第一条记录的前一个位置,也就是没有指向任何内容,使用aaa.next()方法就会使指针往后移动指向下一个记录,所以一定要先执行一次next()函数才会让指针指向第一条记录。正因为如此,直接【result=rs.getInt("courseId");】这样是没用的。 rs.close(); //关闭
conn.close();
return user;
}
}

关于Ajax异步提交登录及增删改查小项目制作-登录的更多相关文章

  1. SSH登录与增删改查demo详解+源代码

    点击下载,测试绝对可用SSH整合框架登录加增删改查demo 下载地址:http://download.csdn.net/detail/qq_33599520/9784679   一.框架概述 spri ...

  2. 一个使用MVC3+NHibernate “增删改查” 的项目

    一个使用MVC3+NHibernate “增删改查” 的项目  前言: 谈到NHibernate大伙并不陌生,搞Java的更是清楚,Hibernate是一个目前应用的最广泛的开放源代码的对象关系映射框 ...

  3. bootstrap+Ajax+SSM(maven搭建)实现增删改查

    https://www.jianshu.com/p/d76316b48e3e 源码: https://github.com/Ching-Lee/crud 功能点: 分页 数据校验 ajax Rest风 ...

  4. 招新系统(jsp+servlet,实现简略前端网页注册登录+后台增删改查,分学生和管理员,Java语言,mysql数据库连接,tomcat服务器)

    生活不只是眼前的苟且,还有诗和远方. 架构说明: 要求是采用MVC模式,所以分了下面的几个包,但是由于是第一次写,可能分的也不是很清楚: 这个是后台部分的架构: 这个是前端的的展示: (那个StuLo ...

  5. 基于springmvc、ajax,后台连接数据库的增删改查

    前言 前段时间在博客园上找了一个springmvc的例子,照着学了一下,算是对springmvc有了一个初步的了解,打一个基础,下面是链接.(我只看了博客,视频太耗时间了) 博客链接:http://w ...

  6. AJAX 调用WebService 、WebApi 增删改查(笔记)

    经过大半天努力,终于完成增删改查了!心情有点小激动!!对于初学者的我来说,一路上都是迷茫,坑!!虽说网上有资料,可动手起来却不易(初学者的我).(苦逼啊!) WebService 页面: /// &l ...

  7. Ado.net[登录,增删改查,Get传值,全选,不选,批量删除,批量更新]

    [虽然说,开发的时候,我们可以使用各种框架,ado.net作为底层的东西,作为一个合格的程序员,在出问题的时候我们还是要知道如何调试] 一.增删改查 cmd.ExecuteReader();执行查询, ...

  8. 一个使用MVC3+NHibernate “增删改查” 的项目(修正版)

      前言: 谈到NHibernate大伙并不陌生,搞Java的更是清楚,Hibernate是一个目前应用的最广泛的开放源代码的对象关系映射框架,它对Java的JDBC(类似于ADO.Net)进行了非常 ...

  9. TP5学习基础一:增删改查小demo

    ①TP5--增删改查简单的demo 我先吐槽一下:因为工作需要研究tp5,去官网看了一下哎呦,资源挺多挺全啊!然后下载唯一免费的官方教程,我曹pdf打开533页.讲的很细但是开发能等看完才做吗?看到精 ...

随机推荐

  1. JAVA WEB 用servlet实现分页,思路比较清晰和简单。

    JAVA WEB 用servlet实现分页,思路比较清晰和简单.借鉴了其他大佬的思路.特别感谢. 是我第一次发表博客,如果有什么错误,欢迎大家指出!,谢谢 一.思路分析 前台一定是有类似这种的界面 点 ...

  2. R 语言学习过程全记录 ~

    RStudio介绍超详细的教程:https://www.jianshu.com/p/132919ca2ca9 前辈的心得:https://blog.csdn.net/kMD8d5R/article/d ...

  3. FA转发地址

    1.FA地址诞生背景和作用 FA 是Forwarding Address的简写.FA是ASBR通告的TYPE 5 LSA中的字段,它的作用是告诉OSPF域内的路由器如何能够更快捷地到达LSA 5所通告 ...

  4. JMeter之BeanShell常用内置对象

    一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...

  5. Git初始化本地已有项目

    1.初始化仓库 git init 2.remote git remote add origin 仓库地址 3.从远程分支拉取master分支并与本地master分支合并 git pull origin ...

  6. FreeRTOS-01-任务相关函数

    3 任务相关API函数 任务相关函数如下: 任务创建和删除API函数 任务创建和删除实验(动态方法) 任务创建和删除实验(静态方法) 任务挂起和恢复API函数 任务挂起和恢复实验 3.1 任务创建AP ...

  7. ThinkPHP3.2.3 语言包切换中英文切换

    今天要用ThinkPHP3.2.3做一个小网站,其中涉及到切换中文与英文,通过查询手册和百度实现了该操作,现在将我具体的操作步骤记录下来,作为笔记和大家分享. php开发框架:ThinkPHP3.2. ...

  8. JDBC连接流程

    ConectionFactory cf = new ConectionFactory();//创建数据库连接Connection con = cf.getConection();//打开水数据库的连接 ...

  9. P5147-数学-随机数生成器

    P5147-数学-随机数生成器 (洛谷第一篇题解说这是高一数学题,新高二感觉到被吊打) 我们设work(x)的期望值为\(f_x\) 注意\(f_1\)是边界.不过对下列式子没有影响.原因参照必修的数 ...

  10. 02_Java基础类型和包装类型

    基本数据类型 包装类名称 所占字节数 默认值 byte Byte 1 0 short Short 2 0 Int Integer 4 0 long Long 8 0L double Double 8 ...