springboot整合vue和mybaits项目实战笔记--------后台登录验证实现

本文主要是介绍springboot整合vue和mybaits项目实战笔记--------后台登录验证实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 配置application.yml
mybatis:mapper-locations: classpath:mapper/*.xmltype-aliases-package: com.example.demo.model
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/deliverysystemusername: rootpassword: heyanying
server:port: 9000
  • bean下编写user类
public class User {private int id;private String name;private String password;private String role;private String phonenumber;private String ordernumber;public User() {}public User(String name, String password, String role, String phonenumber, String ordernumber) {this.id = id;this.name = name;this.password = password;this.role = role;this.phonenumber = phonenumber;this.ordernumber = ordernumber;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getRole() {return role;}public void setRole(String role) {this.role = role;}public String getPhonenumber() {return phonenumber;}public void setPhonenumber(String phonenumber) {this.phonenumber = phonenumber;}public String getOrdernumber() {return ordernumber;}public void setOrdernumber(String ordernumber) {this.ordernumber = ordernumber;}@Overridepublic String toString() {return "User{" +"id=" + id +", name='" + name + '\'' +", password='" + password + '\'' +", role='" + role + '\'' +", phonenumber='" + phonenumber + '\'' +", ordernumber='" + ordernumber + '\'' +'}';}
}
  • 编写controller下logincontroller
import com.alibaba.fastjson.JSON;
import com.nupt.deliverysysytem.dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;@RestController
public class LoginController {@AutowiredUserDao userDao;@RequestMapping("/login") //访问路径public String login(@RequestBody User user){String flag="error";User us= userDao.getUserByMassage(user.getUserName(),user.getPassword());HashMap<String,Object> res=new HashMap<>();if (us!=null){flag="ok";}res.put("flag",flag);res.put("user",user);String res_json=JSON.toJSONString("res");return res_json;}
}
  • dao层uerdao
import com.nupt.deliverysysytem.bean.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;@Repository
public interface UserDao {public User getUserByMassage(@Param("username") String username, @Param("password") String password);
}
  • Mapper文件下写usermapper.xml(resulttype是返回类型)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--上面是固定格式-->  
<!--从数据库中查找用户-->        
<mapper namespace="com/nupt/deliverysysytem/dao/UserDao"><select id="getUserByMassage" resultType="com/nupt/deliverysysytem/bean/User">SELECT * FROM user  WHEREusername=#{username} AND password=#{password}</select>
</mapper>
  • 记得加mapperscan扫描dao
@MapperScan("com/nupt/deliverysysytem/dao")@SpringBootApplication
public class DeliverysystemApplication {public static void main(String[] args) {SpringApplication.run(DeliverysystemApplication.class, args);}}

知识点

  • @RestController = @Controller + @ResponseBody组成

    @Controller 将当前修饰的类注入SpringBoot IOC容器,使得从该类所在的项目跑起来的过程中,这个类就被实例化。当然也有语义化的作用,即代表该类是充当Controller的作用
    @ResponseBody 它的作用简短截说就是指该类中所有的API接口返回的数据,甭管你对应的方法返回Map或是其他Object,它会以Json字符串的形式返回给客户端,如果返回的是String类型,则仍然是String。

@RestController
public class HelloController {@RequestMapping(value="/hello",method= RequestMethod.GET)public String sayHello(){return "hello";}
}
@Controller
@ResponseBody
public class HelloController {@RequestMapping(value="/hello",method= RequestMethod.GET)public String sayHello(){return "hello";}
}

上面两种写法等价。

  • @Autowired注解

    由Spring框架定义,用于描述类中的属性后者方法(构造方法,set方法)。
    Spring框架在项目运行时假如发现由它管理的Bean对象中有使用@Autowired注解描述的属性或者方法,会按照指定规则为属性赋值(DI)。
    如果有多个实现类不加@Qualifier注解指定是哪个实现类会报错。

  • @Repository
    把类标识成可用于 @Autowired 注解自动装配的 bean 的类

  • JSON.toJSONString则是将对象转化为Json字符串

这篇关于springboot整合vue和mybaits项目实战笔记--------后台登录验证实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/941259

相关文章

Spring boot整合dubbo+zookeeper的详细过程

《Springboot整合dubbo+zookeeper的详细过程》本文讲解SpringBoot整合Dubbo与Zookeeper实现API、Provider、Consumer模式,包含依赖配置、... 目录Spring boot整合dubbo+zookeeper1.创建父工程2.父工程引入依赖3.创建ap

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

mybatis执行insert返回id实现详解

《mybatis执行insert返回id实现详解》MyBatis插入操作默认返回受影响行数,需通过useGeneratedKeys+keyProperty或selectKey获取主键ID,确保主键为自... 目录 两种方式获取自增 ID:1. ​​useGeneratedKeys+keyProperty(推

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u