码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 前后端分离管理系统day01---Springboot+MybatisPlus


    目录

    目录

    软件

    基础知识

    一创建后端项目

    注意:

    删除多余项

     创建测试类

    二 加入mybatis-plus依赖支持 

    1.加入依赖码

     2.创建数据库实例/创建用户表/插入默认数据

     创建数据库实例

     创建表

    插入数据

     3.配置yml文件

    注意:wms01必须是数据库的名字,后端手动配置端口8090,防止前端访问8080时和后端冲突

    4.编写测试代码 

    ①创建entity包和User类

    ②创建mapper包和UserMapper接口,继承Basemapper

    ③创建 service包和UserService接口,继承IService

     ④创建impl包和实现类UserServiceImpl,继承ServiceImpl

    ​编辑

     ⑤编写测试类HelloController

    5.创建自己的方法listAll( )

    ① 在UserService创建自定义listAll( )的方法接口

     ②在UserServiceImpl.java中实现自定义的方法listAll( )(按Alt+回车)​编辑

     ④注入UserMapper

     ⑤在UserMapper中创建方法listAll( )的接口

    ⑥在resources下创建一个目录mapper

    ⑦在mapper下创建一个xml配置文件(mybatis的核心配置文件)

     法一,直接在mybatis的核心配置文件中注入,自己写一个select

     法二,在我们的接口中添加注解


    软件

    Mysql+IDEA

    基础知识

    注解 | MyBatis-Plus (baomidou.com)

    http://t.csdn.cn/yFTWw

    一创建后端项目

     

    注意:

    Spring Boot 3.0版本不支持JDK8。最低要求是JDK17。对于仍然在使用JDK8的用户,可以选择使用Spring Boot 2.7版本。

    Spring Boot 3.0版本由于使用了较老版本的asm类库,无法支持JDK8之后的Java class格式,从而在启动时报错。从Spring Boot 4开始,正式支持JDK8,通过升级配套的asm类库,使其可以支持JDK8的版本。

    因此,坚持使用JDK8的用户,建议选用Spring Boot 2.7版本。对于从Spring Boot 3升级到Spring Boot 4/5的老应用,可能会引发很多兼容性问题,建议整个spring生态一起升级到新版本。

    删除多余项

     创建测试类

     

     

    二 加入mybatis-plus依赖支持 

    1.加入依赖码

    参考网站:快速开始 | MyBatis-Plus (baomidou.com)

     

    点击更新日志查看最新版本

     2.创建数据库实例/创建用户表/插入默认数据

     创建数据库实例

     

     创建表

    1. create table user
    2. (
    3. id int auto_increment comment '主键' primary key ,
    4. no varchar(20) null comment '账号',
    5. name varchar(100) not null comment '名字',
    6. password varchar(20) not null comment '密码',
    7. age int null comment '年龄',
    8. sex int null comment '性别',
    9. phone varchar(20) null comment '电话',
    10. role_id int null comment '角色 0超级管理员,1管理员,2普通账户',
    11. isValid varchar(4) default 'Y' null comment '是否有效,Y有效,其他无效'
    12. )
    13. charset = utf8;

    插入数据

     

     3.配置yml文件

    把application.properties改为application.yml

    1. server:
    2. port: 8090
    3. spring:
    4. datasource:
    5. url: jdbc:mysql://localhost:3306/wms01?useUnicode&characterEncoding=utf-8&useSSL=false&serverTimeZone=GMT%2B8
    6. driver-class-name: com.mysql.jdbc.Driver
    7. username: root
    8. password: crush

     

    注意:wms01必须是数据库的名字,后端手动配置端口8090,防止前端访问8080时和后端冲突

    4.编写测试代码 

    ①创建entity包和User类

    1. package com.wms.entity;
    2. import com.baomidou.mybatisplus.annotation.TableField;
    3. import lombok.Data;
    4. @Data
    5. public class User {
    6. private int id;
    7. private String no;
    8. private String name;
    9. private String password;
    10. private int age;
    11. private int sex;
    12. private String phone;
    13. private int role_id;
    14. @TableField("isvalid")
    15. private String isValid;
    16. }

    @TableField("isvalid") 可能会报错,只要重新加载Maven就可以了

    ②创建mapper包和UserMapper接口,继承Basemapper

    1. package com.wms.mapper;
    2. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
    3. import com.wms.entity.User;
    4. import org.apache.ibatis.annotations.Mapper;
    5. @Mapper
    6. public interface UserMapper extends BaseMapper<User> {
    7. }

    ③创建 service包和UserService接口,继承IService

    1. package com.wms.service;
    2. import com.baomidou.mybatisplus.extension.service.IService;
    3. import com.wms.entity.User;
    4. public interface UserService extends IService<User> {
    5. }

     ④创建impl包和实现类UserServiceImpl,继承ServiceImpl

    1. package com.wms.service.impl;
    2. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
    3. import com.wms.entity.User;
    4. import com.wms.mapper.UserMapper;
    5. import com.wms.service.UserService;
    6. import org.springframework.stereotype.Service;
    7. @Service
    8. public class UserServiceImpl extends ServiceImpl, User> implements UserService {
    9. }

     ⑤编写测试类HelloController

    1. package com.wms.controller;
    2. import com.wms.entity.User;
    3. import com.wms.service.UserService;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.web.bind.annotation.GetMapping;
    6. import org.springframework.web.bind.annotation.RestController;
    7. import java.util.List;
    8. @RestController
    9. public class HelloController {
    10. @GetMapping
    11. public String hello(){
    12. return "hello wms";
    13. }
    14. @Autowired
    15. private UserService userService;
    16. @GetMapping
    17. public List list("/list"){
    18. return userService.list();
    19. }
    20. }

     运行成功

    5.创建自己的方法listAll( )

    ① 在UserService创建自定义listAll( )的方法接口

     ②在UserServiceImpl.java中实现自定义的方法listAll( )(按Alt+回车)

     选第一个

     

     ④注入UserMapper

     ⑤在UserMapper中创建方法listAll( )的接口

     

     实际上并没有实现,需要自己配置

    ⑥在resources下创建一个目录mapper

    ⑦在mapper下创建一个xml配置文件(mybatis的核心配置文件)

     不懂的直接在网上查”mybatis配置头文件模板“

    1. "1.0" encoding="UTF-8" ?>
    2. configuration
    3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
    5. <configuration>
    6. configuration>
     法一,直接在mybatis的核心配置文件中注入,自己写一个select
    1. "1.0" encoding="UTF-8" ?>
    2. mapper PUBLIC "-//mybatis.org//OTD Mapper 3.0//EN"
    3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    4. <mapper namespace="com.wms.mapper.UserMapper">
    5. <select id="listAll" resultType="com.wms.entity.User">
    6. select * from user
    7. select>
    8. mapper>

    测试HelloController

     法二,在我们的接口中添加注解
    @Select("select * from user")

     

     测试HelloController

  • 相关阅读:
    基于 Delphi 的前后端分离:之二
    dic= json.loads()双引号变单引号以及dic=json.dumps()出现acsll问题
    12412 - A Typical Homework (a.k.a Shi Xiong Bang Bang Mang) (UVA)
    Kamailio Debian安装
    初等数论总结
    matlab simulink和python混合编程
    面试突击:Spring 依赖注入有几种?各有什么优缺点?
    【论文学习】《Source Mixing and Separation Robust Audio Steganography》
    嵌入式开发:在工业应用程序中优化GUI的5个技巧
    Vue使用markdown编辑器:
  • 原文地址:https://blog.csdn.net/Crush_66/article/details/132980990
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号