1:这个例子用spirngboot整合mybatis,jdbc等技术开发的

2:步骤

2.1:新建一个工程

主要的两个步骤已经贴图了,第二张图是直接在pom.xml文件中加入依赖

2.2:新建完项目,就创建一个数据表

  1.  
    CREATE TABLE `tuser` (
  2.  
    `id` int(11) NOT NULL AUTO_INCREMENT,
  3.  
    `loginname` varchar(20) DEFAULT NULL,
  4.  
    `password` varchar(20) DEFAULT NULL,
  5.  
    PRIMARY KEY (`id`)
  6.  
    ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

创建一个名为tuser的数据表

2.3:把项目所需的包和文件夹补充完整

2.4整合jdbc,在application.yml中加入jdbc的支持

spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/springboot?useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.jdbc.Driver
username: root
password: 123456

2.5整合springmvc的前端控制器,在application.yml中加入

spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp

2.6整合mybatis,添加mapper.xml的目录

mybatis:
mapper-locations: classpath:mapper/*.xml

2.7整个yml文件如下

spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/springboot?useUnicode=true&characterEncoding=utf-8
driver-class-name: com.mysql.jdbc.Driver
username: root
password: 123456
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
mybatis:
mapper-locations: classpath:mapper/*.xml

2.8实体类的编写,也就是model

和数据表对应的User类

  1.  
    public class User {
  2.  
     
  3.  
    private int id;
  4.  
    private String loginname;
  5.  
    private String password;
 //省略构造方法和get/set方法
}

返回数据给页面的封装类ResultEntity

  1.  
    public class ResultEntity {
  2.  
     
  3.  
    private int code;
  4.  
    private String message;
  5.  
    //省略构造方法和get/set方法
  6.  
     
  7.  
    }

2.9 控制层的编写,controller

  1.  
    @Controller
  2.  
    @SessionAttributes("user")
  3.  
    public class LoginController {
  4.  
     
  5.  
    @Autowired
  6.  
    private LoginService loginService;
  7.  
     
  8.  
    @RequestMapping("/index")
  9.  
    public String index() {
  10.  
    return "login";
  11.  
    }
  12.  
     
  13.  
    @RequestMapping("/success")
  14.  
    public String success() {
  15.  
    return "success";
  16.  
    }
  17.  
     
  18.  
    @RequestMapping("/login")
  19.  
    @ResponseBody
  20.  
    public ResultEntity login(User user, Model model) {
  21.  
    ResultEntity resultEntity = loginService.login(user);
  22.  
    if (resultEntity.getCode() == 200)
  23.  
    model.addAttribute("user", user);//将user存放到session
  24.  
    return resultEntity;
  25.  
    }
  26.  
     
  27.  
    }

2.10Service实现层的编写

  1.  
    @Service
  2.  
    class LoginServiceImpl implements LoginService {
  3.  
     
  4.  
    @Autowired
  5.  
    private UserMapper userMapper;
  6.  
     
  7.  
    private ResultEntity resultEntity;
  8.  
     
  9.  
    @Override
  10.  
    public ResultEntity login(User user) {
  11.  
    User login = userMapper.login(user);
  12.  
    if (login != null) {
  13.  
    resultEntity = new ResultEntity(200, "登陆成功");
  14.  
    } else {
  15.  
    resultEntity = new ResultEntity(201, "用户名或密码错误");
  16.  
    }
  17.  
    return resultEntity;
  18.  
    }
  19.  
    }

接口层就忽略啦  我懒。。就一个 ResultEntity login(User user);

2.11 mapper.xml

  1.  
    <?xml version="1.0" encoding="UTF-8"?>
  2.  
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3.  
    <mapper namespace="net.stxy.boot.dome.mapper.UserMapper">
  4.  
     
  5.  
    <select id="login" parameterType="net.stxy.boot.dome.model.User" resultType="net.stxy.boot.dome.model.User">
  6.  
    select * from tuser where loginname = #{loginname} and password = #{password}
  7.  
    </select>
  8.  
     
  9.  
    </mapper>

mapper接口也不写了。。。QAQ..

2.12 到页面了,采用jsp开发,所以要在pom.xml中添加对jsp的支持

  1.  
    <!--springboot tomcat jsp 支持开启-->
  2.  
    <dependency>
  3.  
    <groupId>org.apache.tomcat.embed</groupId>
  4.  
    <artifactId>tomcat-embed-jasper</artifactId>
  5.  
    </dependency>
  6.  
    <dependency>
  7.  
    <groupId>javax.servlet</groupId>
  8.  
    <artifactId>jstl</artifactId>
  9.  
    <scope>compile</scope>
  10.  
    </dependency>

因为在yml中指定了前端控制器,所以直接在WEB-INF的jsp下读取jsp页面,静态资源文件就可以在路径前面添加,例如jquery文件放在static/js/jquery.min.js,读取直接读js/jquery.min.js即可,因为默认静态资源路径为/static/

2.13 登陆页面用ajax提交表单,判断返回的code是否==200,等于200则跳转登陆成功页面,否则,提示失败.

ajax代码:

  1.  
    //提交表单
  2.  
    $.ajax({
  3.  
    url: "/login",
  4.  
    type: "post",
  5.  
    dataType: "json",
  6.  
    data: {
  7.  
    loginname: account,
  8.  
    password: password
  9.  
    },
  10.  
    success: function (result) {
  11.  
    console.log(result);
  12.  
    if (result.code == 200) {
  13.  
    window.location.href = "success";
  14.  
    } else {
  15.  
    alert(result.message);
  16.  
    }
  17.  
    }
  18.  
    })

3.效果

3.1地址栏输入 localhost:8080/index,出现登陆页面

3.2登陆失败

3.3登陆成功

这是一个非常简单的springboot登陆例子,新手一枚,勿喷i....QAQ...

[源码下载]

SpringBoot的简单登陆开发例子的更多相关文章

  1. 使用Multiplayer Networking做一个简单的多人游戏例子-1/3(Unity3D开发之二十五)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/51006463 ...

  2. 使用Multiplayer Networking做一个简单的多人游戏例子-3/3(Unity3D开发之二十七)

    使用Multiplayer Networking做一个简单的多人游戏例子-1/3 使用Multiplayer Networking做一个简单的多人游戏例子-2/3 使用Multiplayer Netw ...

  3. 使用Multiplayer Networking做一个简单的多人游戏例子-2/3(Unity3D开发之二十六)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/51007512 ...

  4. 基于SpringBoot+AntDesign的快速开发平台,JeecgBoot 2.0.2 版本发布

    Jeecg-Boot 是一款基于SpringBoot+代码生成器的快速开发平台! 采用前后端分离架构:SpringBoot,Ant-Design-Vue,Mybatis,Shiro,JWT. 强大的代 ...

  5. 在线Online表单来了!JeecgBoot 2.1 版本发布——基于SpringBoot+AntDesign的快速开发平台

    项目介绍 Jeecg-Boot 是一款基于SpringBoot+代码生成器的快速开发平台! 采用前后端分离架构:SpringBoot,Ant-Design-Vue,Mybatis,Shiro,JWT. ...

  6. springboot核心技术(三)-----web开发

    web开发 1.简介 使用SpringBoot: 1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运 ...

  7. 菜鸟学习Hibernate——简单的一个例子

    一.Hibernate开发. 上篇博客已经为大家介绍了持久层框架的发展流程,持久层框架的种类. 为了能够使用Hibernate快速上手,我们先讲解一个简单的Hibernate应用实例hibernate ...

  8. 用SpringBoot搭建简单电商项目 01

    前几节呢,我们已经简单介绍了SpringBoot框架的使用,从这一节开始,我们尝试着使用SpringBoot框架来一步一步搭建一个简单电商项目.当然了,这不是真正的电商项目,你可以看成是一个CRUD案 ...

  9. springboot 实战之一站式开发体验

    都说springboot是新形势的主流框架工具,然而我的工作中并没有真正用到springboot: 都说springboot里面并没有什么新技术,不过是组合了现有的组件而已,但是自己却说不出来: 都说 ...

随机推荐

  1. java过滤器(简化认证)

    最近在看过滤器,刚刚实现了过滤器的简化认证功能: 使用过滤器简化认证: 在Web应用程序中,过滤器的一个关键用例是保护应用程序不被未授权的用户访问.为跨国部件公司开发的客户支持应用程序使用了一种非常原 ...

  2. Java 原生网络编程.

    一.概念 Java 语言从其诞生开始,就和网络紧密联系在一起.在 1995 年的 Sun World 大会上,当时占浏览器市场份额绝对领先的网景公司宣布在浏览器中支持Java,从而引起一系列的公司产品 ...

  3. adb命令中的keyevent事件

    电话键 KEYCODE_CALL: 拨号键 KEYCODE_ENDCALL: 挂机键 KEYCODE_HOME: 按键Home KEYCODE_MENU: 菜单键 KEYCODE_BACK: 返回键 ...

  4. TCP连接与释放

    TCP连接的建立 三次握手 TCP服务器进程先创建传输控制块TCB,时刻准备接受客户进程的连接请求,此时服务器就进入了LISTEN(监听)状态. TCP客户进程也是先创建传输控制块TCB,然后向服务器 ...

  5. Java反射的简单入门

    1.Class的简单介绍 Class类的类表示正在运行的Java应用程序中的类和接口. 枚举是一种类,一个注解是一种接口, 每个数组也属于一个反映为类对象的类,该对象由具有相同元素类型和维数的所有数组 ...

  6. C# Dev XtraReport 简单测试

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using DevExpre ...

  7. 微信wx.request

    官方 wx.request 代码,Post 没成功过,使用Get 方式成功了. wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' ...

  8. Android JNI中C调用Java方法

    背景需求 我们需要在JNI的C代码调用Java代码.实现原理:使用JNI提供的反射借口来反射得到Java方法,进行调用. JNI关键方法讲解. 1. 在同一个类中,调用其他方法 JNIEXPORT v ...

  9. css和HTML布局小技巧

    一:水平居中 1. 如下所示,让child在parent中水平居中 <!DOCTYPE html> <html> <head lang="en"> ...

  10. 使用混淆ProGuard压缩代码和资源/减少方法数量

    ProGuard介绍 ProGuard是一个Java类文件压缩器,优化器,混淆器和预先文件验证器. 压缩步骤检测和删除未使用的类,字段,方法和属性. 优化步骤分析和优化方法的字节码. 混淆步骤使用短无 ...