最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot熱部署和整合Mybatis的過程

 更新時間:2023年10月16日 15:06:27   作者:會洗碗的CV工程師  
熱部署,就是在應用正在運行的時候升級軟件,卻不需要重新啟動應用,本文給大家詳細介紹SpringBoot熱部署和整合Mybatis的過程,感興趣的朋友跟隨小編一起看看吧

一、SpringBoot熱部署

熱部署,就是在應用正在運行的時候升級軟件,卻不需要重新啟動應用。即修改完代碼后不需要重啟項目即可生效。在SpringBoot中,可以使用DevTools工具實現(xiàn)熱部署

1.1 添加DevTools依賴

首先我們需要在pom文件中引入devtools的依賴,如下:

<!-- 熱部署工具 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
</dependency>

1.2 在idea中設置自動編譯

點擊 File-->Settings

如上圖,勾選上。 

1.3 在Idea設置自動運行

快捷鍵 Ctrl+Shift+Alt+/ 后點擊 Registry ,勾選complier.automake.allow.when.app.running

然后我們來測試一下,運行項目,然后在運行時往/show2路徑修改輸出看看是否不用重啟項目也能發(fā)生改變。

修改之后,在控制臺可以看到:重新運行了一下項目。

并且再次訪問可以出現(xiàn)我們新添加的數(shù)據(jù)

則說明我們的熱部署生效

二、SpringBoot整合Mybatis

Spring整合MyBatis時需要進行大量配置,而SpringBoot整合MyBatis則可以簡化很多配置:

2.1 準備數(shù)據(jù)

-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
 
-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES (1, 'LYL', '男', '廣州');
INSERT INTO `student` VALUES (2, 'HQX', '女', '揭陽');

 添加pojo類:

package com.example.springbootdemo3.pojo;
public class Student {
    private int id;
    private String name;
    private String sex;
    private String address;
    public Student() {
    }
    public Student(int id, String name, String sex, String address) {
        this.id = id;
        this.name = name;
        this.sex = sex;
        this.address = address;
    }
    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 getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    @Override
    public String toString() {
        return "Student [" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                ", address='" + address + '\'' +
                " ]";
    }
}

2.2 添加相關依賴

那么這里我們需要添加Mysql驅動和Mabatis依賴

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.3.0</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>

2.3 在配置文件進行數(shù)據(jù)源配置

然后在配置文件進行如下配置,配置數(shù)據(jù)源和sql日志輸出

# 配置數(shù)據(jù)源
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql:///student?serverTimezone=UTC
    username: root
    password: 666666
# mybatis配置
mybatis:
  # 映射文件位置
  mapper-locations: com/example/springbootdemo3/mapper/*Mapper.xml
  # 別名
  type-aliases-package: com.example.springbootdemo3.pojo
#日志格式
logging:
  pattern:
    console: '%d{YYYY-MM-dd HH:mm:ss.SSS} %clr(%-5level) --- [%-15thread]%cyan(%-50logger{50}):%msg%n'

2.4 編寫Mapper接口和Mapper文件

然后新建一個mapper包,里面新建一個StudentMapper接口

package com.example.springbootdemo3.mapper;
 
import com.example.springbootdemo3.pojo.Student;
import org.apache.ibatis.annotations.Mapper;
 
import java.util.List;
 
@Mapper
public interface StudentMapper {
    List<Student> findAll();
}

這里還要在resources目錄下新建一個與StudentMapper同級目錄和同名的.xml文件

內容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.springbootdemo3.mapper.StudentMapper">
    <select id="findAll" resultType="com.example.springbootdemo3.pojo.Student">
        select * from student;
    </select>
</mapper>

2.5 測試

OK,從上面我們已經(jīng)新建了一個查詢所有的方法啊,現(xiàn)在在測試類我們看看能否成功獲取數(shù)據(jù)庫信息。測試類代碼如下:

package com.example.springbootdemo3.mapper;
import com.example.springbootdemo3.pojo.Student;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
public class StudentMapperTest {
    @Autowired
    private StudentMapper studentMapper;
    @Test
    public void testFindAll(){
        List<Student> students = studentMapper.findAll();
        students.forEach(System.out::println);
    }
}

OK,可以看到也是能夠成功獲取信息的。

到此這篇關于SpringBoot熱部署和整合Mybatis的文章就介紹到這了,更多相關SpringBoot熱部署內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解java配置文件的路徑問題

    詳解java配置文件的路徑問題

    這篇文章主要介紹了詳解java配置文件的路徑問題的相關資料,這里對絕對路徑及相對路徑和classpath 類文件路徑進行詳細介紹,需要的朋友可以參考下
    2017-07-07
  • Spring5+SpringMvc+Hibernate5整合的實現(xiàn)

    Spring5+SpringMvc+Hibernate5整合的實現(xiàn)

    這篇文章主要介紹了Spring5+SpringMvc+Hibernate5整合的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • spring注解@Import用法詳解

    spring注解@Import用法詳解

    這篇文章主要介紹了spring注解@Import用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • Java實現(xiàn)簡單的模板渲染

    Java實現(xiàn)簡單的模板渲染

    這篇文章主要為大家詳細介紹了Java實現(xiàn)簡單的模板渲染的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • java String、StringBuilder和StringBuffer的區(qū)別詳解

    java String、StringBuilder和StringBuffer的區(qū)別詳解

    這篇文章主要介紹了java String、StringBuilder和StringBuffer的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • Java中反射機制的使用詳解

    Java中反射機制的使用詳解

    這篇文章主要介紹了Java中反射機制的使用詳解,Java的發(fā)射機制允許程序在運行時檢查和操作任意一個類、方法、屬性等的信息,包括了類名、方法名、屬性名、參數(shù)列表以及訪問修飾符等,需要的朋友可以參考下
    2023-09-09
  • Java調用明華RF讀寫器DLL文件過程解析

    Java調用明華RF讀寫器DLL文件過程解析

    這篇文章主要介紹了Java調用明華RF讀寫器DLL文件過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Elasticsearch聚合查詢概念及字段類型示例

    Elasticsearch聚合查詢概念及字段類型示例

    這篇文章主要為大家介紹了Elasticsearch聚合查詢概念及字段類型示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • Spring Boot 通過AOP和自定義注解實現(xiàn)權限控制的方法

    Spring Boot 通過AOP和自定義注解實現(xiàn)權限控制的方法

    這篇文章主要介紹了Spring Boot 通過AOP和自定義注解實現(xiàn)權限控制,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Java并發(fā)容器相關知識總結

    Java并發(fā)容器相關知識總結

    今天給大家?guī)淼奈恼率荍ava并發(fā)容器的相關知識,文中有非常詳細的介紹,對正在學習Java并發(fā)容器的小伙伴們很有幫助,需要的朋友可以參考下
    2021-06-06

最新評論

云霄县| 荃湾区| 佛冈县| 湖口县| 津南区| 西青区| 岳普湖县| 蓝田县| 建湖县| 车致| 长治市| 松溪县| 买车| 措勤县| 阿图什市| 北川| 门源| 兰州市| 连山| 长武县| 额尔古纳市| 嵊州市| 翼城县| 来宾市| 青田县| 芦山县| 高尔夫| 资兴市| 苍南县| 仪征市| 资溪县| 宁晋县| 江津市| 寿阳县| 仪征市| 玛沁县| 汝城县| 兴文县| 绥化市| 将乐县| 荥阳市|