創建工程的時候,選這么幾個項
spring data jpa里邊就默認使用了hikari,可以點進去打開看一下
可以看到這是基於hibernate的實現
繼續往下翻
有一項是,再點進去
看到了吧
好了,默認就是調用hikari的
只需要在application.properties中進行一些配置就行了
spring.jpa.hibernate.ddl-auto=update spring.datasource.hikari.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://ip:3306/vser_debug?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false&allowMultiQueries=true&serverTimezone=GMT%2B8 spring.datasource.username=name spring.datasource.password=pwd spring.jpa.open-in-view=false spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect spring.jpa.show-sql=true spring.datasource.type=com.zaxxer.hikari.HikariDataSource ## 最小連接池數量 spring.datasource.hikari.minimum-idle=5 ## 池中最大連接數 spring.datasource.hikari.maximum-pool-size=15 ## 此屬性控制從池返回的連接的默認自動提交行為,默認值:true spring.datasource.hikari.auto-commit=true ## 空閑連接存活最大時間,默認600000(10分鍾) spring.datasource.hikari.idle-timeout=600000 spring.datasource.hikari.pool-name=DatebookHikariCP ## 此屬性控制池中連接的最長生命周期,值0表示無限生命周期,默認1800000即30分鍾 spring.datasource.hikari.max-lifetime=1800000 ## 數據庫連接超時時間,默認30秒,即30000 spring.datasource.hikari.connection-timeout=30000 spring.datasource.hikari.connection-test-query=SELECT 1
添加一個model 一個controller,一個service和一個dao,就可以實現增刪改查了

package com.example.hikaridemo.model; import org.hibernate.annotations.GenericGenerator; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity public class Article { private int id; private String title; private String body; private String writer; @Id @GeneratedValue(generator = "_native") @GenericGenerator(name = "_native", strategy = "native") public int getId() { return id; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getBody() { return body; } public void setBody(String body) { this.body = body; } public String getWriter() { return writer; } public void setWriter(String writer) { this.writer = writer; } public void setId(int id) { this.id = id; } }

package com.example.hikaridemo.controller; import com.example.hikaridemo.service.OrmtestService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class OrmTestCtr { @Autowired private OrmtestService ormtestService; @RequestMapping("/insert") public String insertTest() { ormtestService.insertTest(); return "測似乎成功"; } }

package com.example.hikaridemo.service; import com.example.hikaridemo.dao.OrmtestDao; import com.example.hikaridemo.model.Article; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class OrmtestService { @Autowired public OrmtestDao ormtestDao; public void insertTest() { Article article=new Article(); article.setTitle("標題"); article.setBody("這是正文"); article.setWriter("user"); ormtestDao.save (article); } }

package com.example.hikaridemo.dao; import com.example.hikaridemo.model.Article; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @Repository public interface OrmtestDao extends JpaRepository<Article, Long> { }
啟動項目,從日志里邊可以看到相關信息
運行成功,我們請求一下
http://localhost:8080/insert