構(gòu)建SpringBoot+MyBatis+Freemarker的項(xiàng)目詳解
現(xiàn)在的Java web項(xiàng)目已經(jīng)更多的使用SpringBoot來構(gòu)建了,一個是他的配置更加簡單,第二個是現(xiàn)在流行的為服務(wù)架構(gòu)Springcloud就是基于SpringBoot來實(shí)現(xiàn)具體的技術(shù)細(xì)節(jié)的,MyBatis也是我們常用半自動式的持久層框架。今天小編就要帶領(lǐng)大家一起搭建一個基于SpringBoot和MyBatis以及常用高性能頁面渲染框架Freemarker來構(gòu)建一個用戶信息查詢展示的項(xiàng)目。
生成項(xiàng)目架構(gòu)文件。訪問SpringBoot官網(wǎng)生成我們需要的Maven項(xiàng)目需要的文件。主要有一下幾個選擇和填寫的屬性:
- 1.選擇項(xiàng)目構(gòu)建的方式,這里我們選擇Maven project。
- 2.填寫Maven項(xiàng)目坐標(biāo)的Group和Artifact屬性,項(xiàng)目的其他屬性如果需要修改,點(diǎn)擊More options,可以修改JDK版本和其他項(xiàng)目的描述信息,這里我們默認(rèn)就好。
- 3.查找需要的依賴包,我們這里選擇MySql的驅(qū)動包和MyBatis和Freemarker的依賴包
導(dǎo)入下載的項(xiàng)目文件進(jìn)行構(gòu)建。主要流程如下:
1.將剛才生成的文件解壓縮到指定目錄然后用eclipse以maven的方式導(dǎo)入項(xiàng)目。
2.在src/main/resouces目錄中找到application.properties文件打開進(jìn)行編輯,在文件中我們需要配置應(yīng)用的啟動端口、數(shù)據(jù)源配置信息、freemarker屬性。
3.打開pom.xml 右鍵run as -> Maven Install ,構(gòu)建沒有報(bào)錯我們就可以編寫后臺服務(wù)類了。
配置SpringBoot配置文件。我們需要對項(xiàng)目工程的名稱和端口進(jìn)行配置,然后是MyBatis使用的數(shù)據(jù)源,還有Freemarker的屬性配置。本案例的具體參數(shù)屬性如圖所示。
編寫MyBatis需要的實(shí)體類和服務(wù)相關(guān)接口。首先我們已經(jīng)創(chuàng)建了一個名為test的數(shù)據(jù)庫,并在里面新建了一張t_user的用戶表,我們需要根據(jù)這張表新建實(shí)體類還有服務(wù)類以及Mapping映射文件。主要有一下四個文件:
1. User 數(shù)據(jù)表對應(yīng)的實(shí)體類文件
2. UserDao 數(shù)據(jù)接口類
3. UserService 實(shí)體類對應(yīng)的數(shù)據(jù)服務(wù)接口
4. UserServiceImpl 接口類的實(shí)現(xiàn)類,需要用到@Service("xxx"),Controller需要用到該類。
5.創(chuàng)建UserMapper.xml Sql查詢映射文件。該項(xiàng)目配置文件中的mybatis.mapperLocations指定。
編寫Controller類實(shí)現(xiàn)接口的請求和頁面。分別創(chuàng)建一個兩個不同的Controller類,一個用來跳轉(zhuǎn)Freemarker頁面,另一個用來返回對應(yīng)的JSON信息。具體如下:
1.創(chuàng)建UserController類使用@RestController和@RequestMapping返回用戶的json格式數(shù)據(jù)。
2.創(chuàng)建IndexController類用@Controller和@RequestMapping返回到對應(yīng)的Freemarker頁面。
3.創(chuàng)建Freemarker前端頁面index.ftl,頁面名稱為創(chuàng)建ModelAndView("頁面名稱"),不包含后綴。
配置啟動類并啟動。在本項(xiàng)目的啟動類中需要配置一下三個注解,具體如下:
1.@SpringBootApplication 負(fù)責(zé)掃描加載項(xiàng)目上下文,默認(rèn)掃描包為當(dāng)前目錄和子目錄。
2.@MapperScan 負(fù)責(zé)掃描MyBatis負(fù)責(zé)的dao類。
3.@ComponentScan 負(fù)責(zé)掃描包的指定范圍。
- springboot整合freemarker的踩坑及解決
- springboot整合freemarker代碼自動生成器
- Springboot整合Freemarker的實(shí)現(xiàn)詳細(xì)過程
- springboot 自定義權(quán)限標(biāo)簽(tld),在freemarker引用操作
- SpringBoot2 整合FreeMarker實(shí)現(xiàn)頁面靜態(tài)化示例詳解
- Springboot整合freemarker 404問題解決方案
- SpringBoot2.2.X用Freemarker出現(xiàn)404的解決
- SpringBoot整合FreeMarker的過程詳解
相關(guān)文章
java創(chuàng)建多級目錄文件的實(shí)例講解
下面小編就為大家分享一篇java創(chuàng)建多級目錄文件的實(shí)例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01淺談mybatis 樂觀鎖實(shí)現(xiàn),解決并發(fā)問題
這篇文章主要介紹了淺談mybatis 樂觀鎖實(shí)現(xiàn),解決并發(fā)問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08spring boot整合Shiro實(shí)現(xiàn)單點(diǎn)登錄的示例代碼
本篇文章主要介紹了spring boot整合Shiro實(shí)現(xiàn)單點(diǎn)登錄的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01使用ServletInputStream()輸入流讀取圖片方式
這篇文章主要介紹了使用ServletInputStream()輸入流讀取圖片方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10使用synchronized關(guān)鍵字實(shí)現(xiàn)信號量的方法
在Java中,信號量(Semaphore)是一種常用的同步工具,它可以用來控制對共享資源的訪問數(shù)量,下面,我們將使用Synchronized關(guān)鍵字來實(shí)現(xiàn)一個簡單的信號量,我們的目標(biāo)是實(shí)現(xiàn)一個計(jì)數(shù)信號量,其中信號量的計(jì)數(shù)指示可以同時訪問某一資源的線程數(shù),需要的朋友可以參考下2024-04-04解決springboot?部署到?weblogic?中?jar?包沖突的問題
這篇文章主要介紹了springboot?部署到?weblogic?中?jar?包沖突,weblogic?也有是解決方案的,可以通過新增并配置?weblogic.xml?文件來定義哪些類需要優(yōu)先從項(xiàng)目工程包的?jar?包中加載,本文給大家分享解決方法,需要的朋友可以參考下2022-08-08