SpringBoot框架怎么配置MySQL

這篇文章主要講解了“Spring Boot框架怎么配置MySQL”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Spring Boot框架怎么配置MySQL”吧!

站在用戶的角度思考問題,與客戶深入溝通,找到循化網(wǎng)站設(shè)計與循化網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國際域名空間、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋循化地區(qū)。

Spring Boot框架配置MySQL

Rainbond開源軟件介紹:
Rainbond是國內(nèi)首個開源的生產(chǎn)級無服務(wù)器PaaS。
深度整合基于Kubernetes的容器管理、多類型CI/CD應(yīng)用構(gòu)建與交付、多數(shù)據(jù)中心的資源管理等技術(shù),提供云原生應(yīng)用全生命周期解決方案,構(gòu)建應(yīng)用與基礎(chǔ)設(shè)施、應(yīng)用之間及基礎(chǔ)設(shè)施之間的互聯(lián)互通生態(tài)體系。12月12日,Rainbond正式開源。

[Rainbond詳細(xì)介紹](http://www.rainbond.com/docs/stable/getting-started/design-concept.html)
[Rainbond項(xiàng)目地址](https://github.com/goodrain/rainbond)

Spring Boot框架簡化了新Spring應(yīng)用的初始搭建以及開發(fā)過程,云幫支持平臺部署Spring Boot類應(yīng)用。

云幫提供Spring Boot配置MySQL服務(wù)的示例,去云市一鍵式部署Spring Boot-MySQL示例

以下內(nèi)容是本地創(chuàng)建和運(yùn)行該示例的過程:

創(chuàng)建示例

使用spring-boot-cli創(chuàng)建示例

$ docker run -it --rm \
-v $PWD:/app goodrainapps/spring-boot-cli:1.5.9 spring init --dependencies=web spring-boot-mysql-demo

進(jìn)入示例類文件存放目錄

$ cd spring-boot-mysql-demo/src/main/java/com/example/springbootmysqldemo

添加DemoApplication.java

@Controller
@SpringBootApplication
public class DemoApplication {

        @RequestMapping("/")
        @ResponseBody
        String home() {
                return "Hello World!";
        }

        public static void main(String[] args) {
                SpringApplication.run(DemoApplication.class, args);
        }
}

構(gòu)建示例

為了加快maven構(gòu)建,在setting.xml中添加了國內(nèi)的mirror。將setting.xml拷貝到您的spring-boot-mysql-demo中。

$ cd spring-boot-mysql-demo
$ docker run -it --rm \
-v "$PWD":/app/build \
-w /app/build maven:3.5.2-jdk-7-alpine mvn -B -DskipTests=true -s settings.xml clean install

運(yùn)行

執(zhí)行以下命令運(yùn)行Hello World 示例

$ cd spring-boot-mysql-demo
$ docker run -it --rm -v $PWD:/app -w /app -p 8080:8080  goodrainapps/openjdk:8u131-jre-alpine java  -jar target/*.jar

訪問http://localhost:8080查看運(yùn)行結(jié)果。

配置數(shù)據(jù)庫

云幫提供Spring-boot-mysql-demo的相關(guān)配置目錄結(jié)構(gòu)如下,配置文件內(nèi)容僅供參考。

Spring Boot框架怎么配置MySQL

詳細(xì)配置參考下文:

連接MySQL

添加以下內(nèi)容,將此應(yīng)用與數(shù)據(jù)庫進(jìn)行連接。

pom.xml內(nèi)添mysql數(shù)據(jù)庫服務(wù) :

<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>5.1.9</version>
</dependency>

添加JDBC驅(qū)動:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

application.properties添加數(shù)據(jù)庫連接信息:

spring.datasource.url=jdbc:mysql://${MYSQL_HOST}:${MSYQL_PORT}/demo?createDatabaseIfNotExist=true
spring.datasource.username=${MYSQL_USER}
spring.datasource.password=${MYSQL_PASS}
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.maxActive=10
spring.datasource.maxIdle=5
spring.datasource.minIdle=2
spring.datasource.initialSize=5
spring.datasource.removeAbandoned=true

在源碼添加DatabaseConfig.java

@Configuration
public class DatabaseConfig {
    @Bean
    @Primary
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource dataSource() {
        return new org.apache.tomcat.jdbc.pool.DataSource();
    }
}

數(shù)據(jù)庫初始化

使用 JPA 管理生成實(shí)體的映射關(guān)系的代碼。

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency

數(shù)據(jù)庫重構(gòu)與遷移

使用LiquiBase,以便將JPA生成實(shí)體的映射關(guān)系在數(shù)據(jù)庫體現(xiàn)。第一步,在pom.xml添加:

<dependency>
   <groupId>org.liquibase</groupId>
   <artifactId>liquibase-core</artifactId>
   <version>3.4.1</version>
</dependency>

第二步,創(chuàng)建 Liquibase 的修改日志,默認(rèn)從 db.changelog-master.yaml 讀?。?/p>

databaseChangeLog:
  - changeSet:
      id: 1
      author: <your_name>
      changes:
        - createTable:
            tableName: person
            columns:
              - column:
                  name: id
                  type: int
                  autoIncrement: true
                  constraints:						
                    primaryKey: true
                    nullable: false
              - column:
                  name: first_name
                  type: varchar(255)
                  constraints:
                    nullable: false
              - column:
                  name: last_name
                  type: varchar(255)
                  constraints:
                    nullable: false

模板渲染

Thymeleaf可以幫助渲染XML、XHTMLHTML5內(nèi)容的模板引擎,它也可以輕易的與Spring MVC等Web框架集成作為Web應(yīng)用的模板引擎。在pom.xml中添加:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

docker化改造

為了支持 Spring Boot MySQL demo 輕松部署在云幫,將demo使用Dockerfile構(gòu)建鏡像,在云幫實(shí)現(xiàn)一鍵式部署

#使用配置好環(huán)境的父鏡像
FROM maven:3.5.2-jdk-7-alpine
#創(chuàng)建demo源碼工作目錄
RUN mkdir /app
#將本地源碼拷貝到鏡像中
COPY . /app/
#指定工作目錄
WORKDIR /app
#聲明映射端口
EXPOSE 5000
#指定maven的配置文件,文件內(nèi)制定新的mirror地址
RUN mvn -B -DskipTests=true clean install
#啟動腳本
ENTRYPOINT ["/app/run.sh"]

構(gòu)建鏡像

$ docker build -t goodrainapps/spring-boot-mysql-demo .

運(yùn)行

#運(yùn)行mysql
$ docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql
#運(yùn)行示例
$ docker run -it --rm --link mysql \
  -p 5000:5000 \
  -e MYSQL_HOST=mysql \
  -e MYSQL_PORT=3306 \
  -e MYSQL_USER=root \
  -e MYSQL_PASS=123456 \
  goodrainapps/spring-boot-mysql-demo

訪問http://localhost:5000查看Spring Boot 框架配置MySQL服務(wù)的運(yùn)行界面

Spring Boot框架怎么配置MySQL

感謝各位的閱讀,以上就是“Spring Boot框架怎么配置MySQL”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Spring Boot框架怎么配置MySQL這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

網(wǎng)站名稱:SpringBoot框架怎么配置MySQL
鏈接分享:http://bm7419.com/article20/gocojo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、微信小程序、ChatGPT、App開發(fā)、網(wǎng)站排名、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司