• Spring Boot


    Spring Boot

    初识Spring Boot

    在这里插入图片描述

    在这里插入图片描述

    构建spring boot 项目

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    Spring Boot项目的三个核心文件

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    Spring Boot的Web项目的启动方式

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    示例

    pom.xml 添加

     <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-thymeleafartifactId>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    spring:
      thymeleaf:
        prefix: classpath:/templates/
        suffix: .html
    
    • 1
    • 2
    • 3
    • 4

    配置文件

    在这里插入图片描述

    在这里插入图片描述

    main 页面

    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Titletitle>
    head>
    <body>
       <h1>欢迎登录成功h1>
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Titletitle>
    head>
    <body>
       <form action="login">
           用户名:<input type="text" name="name"/><br/>
           密码:<input type="text" name="pwd"/><br/>
           <input type="submit" value="登录">
       form>
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    spring boot

    测试类

    新建entity.Users

    package com.a1207.a1207springbootch2.entity;
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.stereotype.Component;
    
    @Component
    //@ConfigurationProperties(prefix = "user")
    public class Users {
    
        private int id;
        @Value("${user.username}")
        private String name;
        @Value("${user.age}")
        private int age;
        private String addresss;
    
        @Override
        public String toString() {
            return "Users{" +
                    "id=" + id +
                    ", name='" + name + '\'' +
                    ", age=" + age +
                    ", addresss='" + addresss + '\'' +
                    '}';
        }
    
        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 int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
        public String getAddresss() {
            return addresss;
        }
    
        public void setAddresss(String addresss) {
            this.addresss = addresss;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60

    配置文件中添加
    application.yml

    user:
      username: zhangsan
      age: 18
    
    • 1
    • 2
    • 3

    新建测试类
    a1207Test

    在这里插入图片描述

    package com.a1207.a1207springbootch2;
    
    import com.a1207.a1207springbootch2.entity.Users;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    
    @SpringBootTest
    public class a1207Test {
        @Autowired
        Users u;
    
        @Test
        public void test02(){
            System.out.println(u.toString());
        }
    
        @Test
        public void test(){
            System.out.println("测试1");
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    这两个必须一样

    在这里插入图片描述
    如果不添加 value 的话
    username 显示的就是电脑用户名称
    age 正常显示

    在这里插入图片描述

    使用properties文件实现多环境配置

    在这里插入图片描述

    以使用YAML文件实现多环境配置

    不推荐这个
    在这里插入图片描述

    在这里插入图片描述

    Spring Boot 的自动配置

    引入依赖
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    实例

    在这里插入图片描述

    扩展

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    自动生成 getset toString

    在这里插入图片描述

    注意一定要安装这个插件,不然用不了

    添加这个注释即可
    在这里插入图片描述

    链式写法

    上面的写法和下面的写法是一样的

    在这里插入图片描述

    mybatisPlus 整合 spring boot

    数据库表
    这里写user_name ,在我们的实体类里面可以写userName 他会自动帮我们转换,写user_name 会找不到
    在这里插入图片描述

    导入 jar 包

    在这里插入图片描述

    编写配置,更具自己的来修改
    在这里插入图片描述

    编写一个dao

    在这里插入图片描述

    在这里插入图片描述

    可以看到 mybatisplus 里面添加了许多方法

    在这里插入图片描述

    注意如果这样写
    数据库里的主键id 要操作一下
    在这里插入图片描述

    这里的主键id 要在代码里添加一个注释 不然会报错
    (@TableId(type = IdType.AUTO))自动自增

    在这里插入图片描述

    如果这里的 private Integer id 和数据库里的id不一样的话,要添加 value=‘‘id’ ,这里的value=‘id’’ 要和数据库里的一样

    演示

    前端

    在这里插入图片描述

    control 层代码
    在这里插入图片描述

    在这里插入图片描述

    selectOne

    注意selectOne 只可以返回一个结果,如果结果有多个,就会报错
    传一个 QueryWrapper 即可 ,QueryWrapper 传法如下
    在这里插入图片描述

    导入SQL 打印

    在这里插入图片描述

    #端口号
    server:
      port: 8088
    
    spring:
    #  视图解析器
      thymeleaf:
        prefix: classpath:/templates/
        suffix: .html
    #    连接数据库
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/billsSys
        username: root
        password: root123
    
    # 打印SQL语句
    mybatis-plus:
      configuration:
        log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    扩展程序 非关系型数据库

    数据放在数据库里,后面查询慢
    放在Redis 里面(内存)里面,就很快

    Redis

    在这里插入图片描述

    在这里插入图片描述

    默认端口号 6379
    在这里插入图片描述

    在这里插入图片描述

    安装Another
    在这里插入图片描述

    软件界面

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    在引入依赖

    <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
            dependency>
    
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-data-redisartifactId>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    替换版本

     <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-parentartifactId>
            <version>2.5.6version>
            <relativePath/>
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述
    在这里插入图片描述

    设置这个时长,到了指定时间销毁

    在这里插入图片描述

    Git

    Git 的安装可以自行搜索教程

    首先安装Git

    在这里插入图片描述

    配置 idea

    在这里插入图片描述

    网页搜索码云 并注册账号

    选择我的 > 我的仓库

    创建一个仓库

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    完成后要输入码云的账户密码

    完成后点击

    在这里插入图片描述
    就传上去了

    分页

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    插件写法如下
    在这里插入图片描述

    在这里插入图片描述

     @Bean
        public MybatisPlusInterceptor plusInterceptor(){
            MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
            mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
            return mybatisPlusInterceptor;
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    在这里插入图片描述

    模糊查询加分页

    在这里插入图片描述

    在这里插入图片描述

     @RequestMapping("/list")
        public String list(Model model){
            Page<UserInfo> page = new Page<>(3,3);
            QueryWrapper<UserInfo> qw = new QueryWrapper<>();
    //        第一个参数 是表的字段名称  第二个就是要匹配的值
            qw.like("name","a");
            Page<UserInfo> pages = userDao.selectPage(page, qw);
            List<UserInfo> list = pages.getRecords();
            model.addAttribute("ulist",list);
            return "userlist";
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    <tr th:each="u:${ulist}">
                    <td th:text="${u.id}">td>
                    <td th:text="${u.username}">td>
                    <td th:text="${u.password}">td>
                tr>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

  • 相关阅读:
    Java语言对操作系统的模型,你知道多少?
    太炫酷,3分钟学会,视频倒放技能
    前端工具宝库,帮你解决99%的业务需求难题
    ADS-NPU芯片架构设计的五大挑战
    黑马2022最新redis课程笔记知识点(面试用)
    InputMethodManagerService启动-Android12
    Python 语音识别系列-实战学习之初识语音识别
    如何选择一款快速可靠的文件自动同步软件?
    5G NSA添加辅小区问题
    C# 队列(Queue)
  • 原文地址:https://blog.csdn.net/SSOA6/article/details/126553871