Springboot + Mybatis + Thymeleaf 整合教程

                                                      Springboot + Mybatis + Thymeleaf整合

首先我們來講一下springboot,springboot主張無xml配置,但是還是需要一些最基礎的信息配置的,例如sql賬號密碼的設置,在簡潔你的賬號密碼還是需要你自己配置的,它是沒辦法幫你自動生成的。所以一般配置文件都是放到resources下的;

然後再提下maven,maven是一個爲我們管理jar包的,他會爲我們自動生成項目骨架,maven中的座標、倉庫、聚合和繼承等等的我就不再提了,大家自行去學習;

咱們在搭建三層的時候,把三層都放在Application類所在的包下,原因很簡單,SpringBoot項目的Bean裝配默認規則是根據Application類所在的包位置從上往下掃描,如果Application類所在的包爲:com.boot.app,則只會掃描com.boot.app包及其所有子包,如果service或dao所在包不在com.boot.app及其子包下,則不會被掃描到;

在這裏再提幾個註解:

@Controller :處理http請求
@RestController :Spring4之後新加的註解,返回原來的json需要@ResponseBody配合@Controller
@RequestMapping :配置URL映射

@PathVariable :獲取URL中的數據
@RequestParam :獲取請求參數的值
@GetMapping :組合註解

@repository來註解接口,我們照樣可以注入到接口的實現類)

現在進入編碼時間,首先是咱們的實體類:

實際上呢,我的實體類是根據數據庫中的表自動創建的,如果要自動創建實體類而非手動,你需要引入依賴,這裏就不再講了,接下來是dao層接口:

這裏我就只演示一個查詢數量的方法,因爲當你學會一個之後,你會發現你特別有成就感,這個時候去自主解決剩下的,你會感覺到那種學習的樂趣,下面是dao層的mapper.xml:

這邊我用的是sql標籤,其實只用select標籤也是完全沒問題的,但是我比較喜歡用一些新鮮的東西來充實我的技術點,接下來是業務層接口:

業務層實現類:

yml配置:

接下來是最重要的pom.xml配置:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!-- thymeleaf依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

然後是控制層:

控制層用@RestController註解也可以實現,但是我這裏引用的是thymeleaf模塊,所以我這裏用的是@Controller註解,Thymeleaf與Spring集成後,你可以:

在SpringMVC應用中完全替代JSP文件,就像控制JSP一樣,使用SpringMvc的@Controller註解來映射;

Thymeleaf的模板文件在模板中使用SpringEL表達式來替換OGNL;
在模板中創建的表單,完全支持Beans和結果的綁定,包括使用PropertyEditor,轉換,和驗證等;
可以通過Spring來管理國際化文件顯示國際化信息;

這就是一個最簡單的thymeleaf模板,以上一切OK了後,你運行就可以去瀏覽器裏面看到結果了,好了,項目整合到此結束!

謝謝觀看!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章