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

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot中使用 ThreadLocal 进行多线程上下文管理及注意事项小结

《SpringBoot中使用ThreadLocal进行多线程上下文管理及注意事项小结》本文详细介绍了ThreadLocal的原理、使用场景和示例代码,并在SpringBoot中使用ThreadLo... 目录前言技术积累1.什么是 ThreadLocal2. ThreadLocal 的原理2.1 线程隔离2

springboot将lib和jar分离的操作方法

《springboot将lib和jar分离的操作方法》本文介绍了如何通过优化pom.xml配置来减小SpringBoot项目的jar包大小,主要通过使用spring-boot-maven-plugin... 遇到一个问题,就是每次maven package或者maven install后target中的ja

Java中八大包装类举例详解(通俗易懂)

《Java中八大包装类举例详解(通俗易懂)》:本文主要介绍Java中的包装类,包括它们的作用、特点、用途以及如何进行装箱和拆箱,包装类还提供了许多实用方法,如转换、获取基本类型值、比较和类型检测,... 目录一、包装类(Wrapper Class)1、简要介绍2、包装类特点3、包装类用途二、装箱和拆箱1、装

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J