Spring-Boot從入門到精通

什么是Spring Boot? 百度百科 官網解釋

Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置。通過這種方式,Spring Boot致力于在蓬勃發展的快速應用開發領域(rapid application development)成為領導者。

Spring Boot微服務詳細搭建配置

  1. 下載IntelliJ IDEA開發工具: (http://www.jetbrains.com/idea/) [IntelliJ IDEA下載包]
  2. https://blog.csdn.net/qq_41879385/article/details/81952656) [IntelliJ IDEA安裝步驟]
  3. 點擊File-new Project-Spring Intializr-一路next即可
  4. 在com.example.demo中新建一個controller包:在該包下新建一個控制器DemoController
    并添加如下代碼:
package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@RestController
public class DemoController {
    @RequestMapping("/index")
    public Map index(){
        Map map=new HashMap();
        map.put("name","一只流浪的KK");
        map.put("type","公猿");
        map.put("sex","male");
        return  map;
    }
}

主程序DemoApplication添加如下代碼和頭文件

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages={"com.example.demo.controller"})
public class DemoApplication {
       public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

5:啟動應用如果報端口占用則可在application.properties中添加新的端口:

server.port=8181

  1. 參考鏈接1
    參考鏈接2
  2. spring boot 與mybatis結合
    application.properties用application.yml文件替代,具體配置如下:
server:
  port: 8089

spring:
  datasource:
    name: test
    url: jdbc:mysql://107.30.3.257:3306/workmanual?characterEncoding=utf-8
    username: root
    password: 520silenceA!
    # 使用druid數據源
    type: 'com.alibaba.druid.pool.DruidDataSource'
    driver-class-name: com.mysql.jdbc.Driver
    filters: stat
    maxActive: 20
    initialSize: 1
    maxWait: 60000
    minIdle: 1
    timeBetweenEvictionRunsMillis: 60000
    minEvictableIdleTimeMillis: 300000
    validationQuery: select 'x'
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    poolPreparedStatements: true
    maxOpenPreparedStatements: 20

## 該配置節點為獨立的節點,有很多同學容易將這個配置放在spring的節點下,導致配置無法被識別
mybatis:
  mapper-locations: classpath:mapping/*.xml  #注意:一定要對應mapper映射xml文件的所在路徑
  type-aliases-package: com.ssm.entity  # 注意:對應實體類的路徑

#pagehelper分頁插件
pagehelper:
  helperDialect: mysql
  reasonable: true
  supportMethodsArguments: true
  params: count=countS

但需注意的是pom.xml中需要配置

 <dependency>

            <groupId>com.alibaba</groupId>

            <artifactId>druid</artifactId>

            <version>1.1.9</version>

        </dependency>

具體的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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo_02</artifactId>
    <packaging>jar</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo_02</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--mybatis-spring適配器-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>
        <!--mysql驅動包-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.30</version>
        </dependency>
        <dependency>

            <groupId>com.alibaba</groupId>

            <artifactId>druid</artifactId>

            <version>1.1.9</version>

        </dependency>
    </dependencies>

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

</project>

8:spring boot項目打包本地部署及線上部署
本地:點擊工具欄view - toolwindows-maven-
package即可,然后在相應目錄找到jar包,終端執行

java -jar demo_02-0.0.1-SNAPSHOT.jar

即可通過localhost:8089/product
線上部署同本地:上傳jar包到服務器:

scp /Users/charles/Desktop/demo_02/target/demo_02-0.0.1-SNAPSHOT.jar root@103.31.3.254:/root/demos

然后cd 到demos目錄執行jar命令:

java -jar demo_02-0.0.1-SNAPSHOT.jar

部署成功后即可通過http://118.31.3.252:8089/product訪問

接口部署:

[SwaggerUI] (http://118.31.3.252:8062/swagger-ui.html#/)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容