日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

idea mybatis generator插件_SpringBoot+MyBatis+Druid整合demo

發(fā)布時(shí)間:2023/12/9 javascript 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 idea mybatis generator插件_SpringBoot+MyBatis+Druid整合demo 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近自己寫(xiě)了一個(gè)SpringBoot+Mybatis(generator)+druid的demo

1. mybatis+generator逆向工程生成代碼

1. pom文件

pom文件添加如下內(nèi)容,引入generator插件

org.mybatis.generator mybatis-generator-maven-plugin 1.3.5 mysql mysql-connector-java 5.1.35org.mybatis.generator mybatis-generator-core 1.3.5Generate MyBatis Artifactspackagegenerate > 這里是引用 truetruesrc/main/resources/generator/generatorConfig.xml

當(dāng)pom引入此插件成功的話(huà),idea右側(cè)可以看到

2. 在resources下新建generator文件夾,在generator下新建generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?>

3. 運(yùn)行插件

4. 生成以下代碼

2. application.perperties中的配置

1. mybatis的配置

# mybatis實(shí)體類(lèi)的包路徑mybatis.typeAliasesPackage=com.qlu.cloud.pojo# mybatis的dao層方法的實(shí)現(xiàn)xmlmybatis.mapper-locations: classpath:mapper/*.xml

2. druid的配置

# 連接數(shù)據(jù)庫(kù)的設(shè)置,SpringBoot會(huì)自動(dòng)掃描這些# 連接數(shù)據(jù)庫(kù)的驅(qū)動(dòng)名字,自6.x版本就換了名字spring.datasource.driverClassName=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/hadoop?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=falsespring.datasource.username = rootspring.datasource.password = root# 初始化時(shí)建立物理連接的個(gè)數(shù)spring.datasource.druid.initial-size=5# 最大連接池?cái)?shù)量spring.datasource.druid.max-active=30# 最小連接池?cái)?shù)量spring.datasource.druid.min-idle=5# 獲取連接時(shí)最大等待時(shí)間,單位毫秒spring.datasource.druid.max-wait=60000# 配置間隔多久才進(jìn)行一次檢測(cè),檢測(cè)需要關(guān)閉的空閑連接,單位是毫秒spring.datasource.druid.time-between-eviction-runs-millis=60000# 連接保持空閑而不被驅(qū)逐的最小時(shí)間spring.datasource.druid.min-evictable-idle-time-millis=300000# 用來(lái)檢測(cè)連接是否有效的sql,要求是一個(gè)查詢(xún)語(yǔ)句spring.datasource.druid.validation-query=SELECT 1 FROM DUAL# 建議配置為true,不影響性能,并且保證安全性。申請(qǐng)連接的時(shí)候檢測(cè),如果空閑時(shí)間大于timeBetweenEvictionRunsMillis,執(zhí)行validationQuery檢測(cè)連接是否有效。spring.datasource.druid.test-while-idle=true# 申請(qǐng)連接時(shí)執(zhí)行validationQuery檢測(cè)連接是否有效,做了這個(gè)配置會(huì)降低性能。spring.datasource.druid.test-on-borrow=false# 歸還連接時(shí)執(zhí)行validationQuery檢測(cè)連接是否有效,做了這個(gè)配置會(huì)降低性能。spring.datasource.druid.test-on-return=false# 是否緩存preparedStatement,也就是PSCache。PSCache對(duì)支持游標(biāo)的數(shù)據(jù)庫(kù)性能提升巨大,比如說(shuō)oracle。在mysql下建議關(guān)閉。spring.datasource.druid.pool-prepared-statements=true# 要啟用PSCache,必須配置大于0,當(dāng)大于0時(shí),poolPreparedStatements自動(dòng)觸發(fā)修改為true。spring.datasource.druid.max-pool-prepared-statement-per-connection-size=50# 配置監(jiān)控統(tǒng)計(jì)攔截的filters,去掉后監(jiān)控界面sql無(wú)法統(tǒng)計(jì)spring.datasource.druid.filters=stat,wall# 通過(guò)connectProperties屬性來(lái)打開(kāi)mergeSql功能;慢SQL記錄spring.datasource.druid.connection-properties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500# 合并多個(gè)DruidDataSource的監(jiān)控?cái)?shù)據(jù)spring.datasource.druid.use-global-data-source-stat=true# druid連接池監(jiān)控spring.datasource.druid.stat-view-servlet.login-username=adminspring.datasource.druid.stat-view-servlet.login-password=123# 排除一些靜態(tài)資源,以提高效率spring.datasource.druid.web-stat-filter.exclusions=*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*

3. thymeleaf的配置

thymeleaf 是新一代的模板引擎,在spring4.0中推薦使用thymeleaf來(lái)做前端模板引擎。它可以完全替代 JSP 。

thymeleaf的使用

application.propertites中的配置

spring.thymeleaf.prefix=classpath:/templates/spring.thymeleaf.suffix=.htmlspring.thymeleaf.mode=HTMLspring.thymeleaf.encoding=utf-8spring.thymeleaf.cache=false

pom文件中

org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-starter-thymeleaf

== thymeleaf下的return “start”;即為跳轉(zhuǎn)到start.html界面,前提是這個(gè)文件在配置文件下配置的/templates/下,他的意思是動(dòng)態(tài)。==

3. 執(zhí)行

接下來(lái)就可以寫(xiě)controller層來(lái)執(zhí)行函數(shù)了

package com.qlu.cloud.controller;import com.qlu.cloud.mapper.UserMapper;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping("a")public class demoController { /** * auto scan配置 * 在編輯情況下,無(wú)法找不到對(duì)應(yīng)的bean * 于是提示找不到對(duì)應(yīng)bean的錯(cuò)誤。 * 常見(jiàn)于mybatis的mapper * * 解決辦法:降低Autowired檢測(cè)的級(jí)別,將Severity的級(jí)別由之前的error改成warning或其它可以忽略的級(jí)別。 */ @Autowired private UserMapper userMapper; @RequestMapping("show") public String show(Model model){ model.addAttribute("info",userMapper.selectByPrimaryKey(1)); return "start"; }}

其實(shí)controller層的注解我是采用了之前SSM框架的寫(xiě)法,其實(shí)這里有一個(gè)注解@RestController,它=@Controller+@ResponseBody,表示返回的是json

這里我們用model返回了一個(gè)類(lèi),然后跳轉(zhuǎn)到了start.html界面,在start.html界面展示數(shù)據(jù)start.html在/templates/下,它的內(nèi)容為

Title序號(hào) 風(fēng)機(jī)編號(hào) 報(bào)警時(shí)間 30s內(nèi)溫度高于80度次數(shù) 最最重要的一點(diǎn)

因?yàn)橹霸趯?xiě)Mapper的時(shí)候(也就是DAO層是生成的,生成的Mapper類(lèi)中沒(méi)有使用@Mapper注解,但是每個(gè)Mapper中的類(lèi)要加一個(gè)@Mapper注解也很麻煩),所以我們要在啟動(dòng)類(lèi)上加一個(gè)@MapperScan(“com.qlu.cloud.mapper”)來(lái)聲明@Mapper所在的包即可,啟動(dòng)類(lèi)一般叫項(xiàng)目名+Application

然后運(yùn)行項(xiàng)目即可。

實(shí)用插件

devtools熱部署

每次改完都要重新停止應(yīng)用,再重新啟動(dòng)很煩~但springboot有個(gè)叫熱部署的東西,就是說(shuō)在項(xiàng)目中修改代碼可以不用重新停止應(yīng)用再重新啟動(dòng),可以自動(dòng)重啟,這里我們用的是devtools

1. pom文件中添加以下內(nèi)容

org.springframework.boot spring-boot-devtools providedtrue

2. 勾選setting->Build,Execution,Deployment->Compiler->Build project automatically

3. Ctrl+Shift+Alt+/ -> 選擇Registry… -> 勾選compiler.automake.allow.when.app.running

4. 重啟項(xiàng)目即可

最后附上完整的pom文件

<?xml version="1.0" encoding="UTF-8"?>4.0.0org.springframework.boot spring-boot-starter-parent 2.1.1.RELEASEcom.qlu cloud 0.0.1-SNAPSHOTcloudDemo project for Spring Boot1.8com.alibaba fastjson 1.2.6org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2org.springframework.boot spring-boot-starter-test testorg.springframework.boot spring-boot-devtools providedtrueorg.mybatis mybatis 3.4.6org.mybatis.spring.boot mybatis-spring-boot-starter 1.2.0mysql mysql-connector-java org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-starter-thymeleaf com.alibaba druid-spring-boot-starter 1.1.9org.springframework.boot spring-boot-maven-plugin org.mybatis.generator mybatis-generator-maven-plugin 1.3.5 mysql mysql-connector-java 5.1.35org.mybatis.generator mybatis-generator-core 1.3.5Generate MyBatis Artifactspackagegeneratetruetruesrc/main/resources/generator/generatorConfig.xml

總結(jié)

以上是生活随笔為你收集整理的idea mybatis generator插件_SpringBoot+MyBatis+Druid整合demo的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。