アーリーアダプター:GradleはSpringBoot(2.3.1の最新バージョン)をビルドします。

風だより

今日、Spring BootがMavenを殺したブログを読みました私はいつも自分で作りたかったです。

プロジェクトをビルドする

入力するために、このウェブサイトを SpringBootデモプロジェクトを生成します。
次のように:
ここに画像の説明を挿入
プロジェクトをエクスポートした、プロジェクトを解凍してディレクトリに配置し、IDEAに注ぎます。
これらのいくつかには、多数のコア依存関係が含まれています。基本的なインポート後は、Springに関連することについてあまり気にする必要はありません。サードパーティの直接依存関係を使用する場合は、詳細について以下のbuild.gradleを参照してください。

プロジェクトをインポート

ここに画像の説明を挿入
[開く]を選択し、解凍したプロジェクトを選択します。通常、プロジェクトは解凍後に呼び出されます。競合がある場合は、自分で名前を変更してください。

ここに画像の説明を挿入
次に、JDK環境を選択して、次のステップに進みます。
ここに画像の説明を挿入
画像の右下隅の問題は、gradleのバージョンが高すぎ、アイデアのバージョンが低すぎるためです。
ただしバージョンセットが低すぎるか、指定されたバージョンではない場合、次のようにエラーが報告されます。
ここに画像の説明を挿入
したがって、上記の問題を回避するために、5.6を設定します.1。設定後、下図の右下にポップアップウィンドウが表示されますので、自動インポートを有効にするを選択します。
ここに画像の説明を挿入
次に、[ビルド]-> [プロジェクトのビルド]を選択します。
ここに画像の説明を挿入
モジュール設定を開き、インストールしたJDKを選択する必要があります。
ここに画像の説明を挿入

最初にプロジェクトのルートディレクトリを選択します。Command+下キーまたはMy Fn + F4で開くことができます。

ここに画像の説明を挿入

次に、[ビルド]-> [プロジェクトのビルド]を再度選択します

プロジェクト構成

プロジェクト構成のほとんどは、再生成時に選択されています。
build.gradleコンテンツ

plugins {
	id 'org.springframework.boot' version '2.3.1.RELEASE'
	id 'io.spring.dependency-management' version '1.0.9.RELEASE'
	id 'java'
}

group = 'com.lyd'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

configurations {
	compileOnly {
		extendsFrom annotationProcessor
	}
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.3'
	implementation 'com.alibaba:druid-spring-boot-starter:1.1.10'
	compileOnly 'org.projectlombok:lombok'
	developmentOnly 'org.springframework.boot:spring-boot-devtools'
	runtimeOnly 'mysql:mysql-connector-java'
	annotationProcessor 'org.projectlombok:lombok'
	testImplementation('org.springframework.boot:spring-boot-starter-test') {
		exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
	}
}

test {
	useJUnitPlatform()
}

application.propertiesファイルの内容

#datasource
spring.datasource.url=jdbc:mysql://localhost:3306/credit?characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver


#set tomcat port context
#端口被占用的话就换一个
server.port=8082
server.servlet.context-path=/demo

新しいバージョンでは、server.context-pathは無効になっています。統合アクセスパスを設定した後は有効になりません。server.servlet.context-pathに変更してください

application.ymlファイルの内容

#spring的配置
spring:
  datasource:
    name: sqldata
    url: jdbc:mysql://localhost:3306/credit?characterEncoding=UTF-8 #配置在 配置中心
    username: root #配置在 配置中心
    password: 123456 #配置在 配置中心
    # 使用druid数据连接池
    type: com.alibaba.druid.pool.DruidDataSource
    driverClassName: com.mysql.jdbc.Driver
    filters: stat
    maxActive: 20
    initialSize: 1
    maxWait: 60000
    minIdle: 1
    timeBetweenEvictionRunsMillis: 60000
    minEvictableIdleTimeMillis: 300000
    validationQuery: SELECT 'x' FROM DUAL
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    poolPreparedStatements: true
    maxOpenPreparedStatements: 20
  aop:
    proxy-target-class: true



#把内置的tomcat 参数 配置在 properties文件中,以便日后使用配置中心
# #tomcat容器的配置
#server:
#    context-path: /lyd
#    port: 8082

#mybatis的配置
mybatis:
  type-aliases-package: com.lyd.demo.mapper
  mapper-locations: classpath*:mappings/**/*.xml

簡単なテストコード

SpringBootブート構成
ステップ2のコードを参照できます


              package com.example.demo;
              import org.springframework.boot.SpringApplication;
              import org.springframework.boot.autoconfigure.SpringBootApplication;
              import org.springframework.web.bind.annotation.GetMapping;
              import org.springframework.web.bind.annotation.RequestParam;
              import org.springframework.web.bind.annotation.RestController;
              
              @SpringBootApplication
              @RestController
              public class DemoApplication {
                
                  
                  public static void main(String[] args) {
                  SpringApplication.run(DemoApplication.class, args);
                  }
                  
                  @GetMapping("/hello")
                  public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
                  return String.format("Hello %s!", name);
                  }
                
              }
           

サービスを開始

私たちはgradleプロジェクトであり、私たちは

./gradlew rootRun

進行状況が75%に達しても問題ありません。下の図でエラーがなく、ポートの占有もないことがわかると、成功しています。
ここに画像の説明を挿入

次に、http:// localhost:8082 / demo / hello?name = xxxxxxに
ここに画像の説明を挿入
正常にアクセスします。

故障中

多くの停止中のサービスを読んだ後、サービスプロセスIDを表示して直接実行するほうが簡単です。

kill -9 [pid] 如:kill -9 800

pidを確認するにはどうすればよいですか?
最初:

ps -ef | grep [Application名称,只要能查到就行]
如:ps -ef | grep DemoApplication

次に、下の図の2番目の数字がプロセスIDであることがわかります。次に、kill -9 1268を実行します。2
ここに画像の説明を挿入
番目のタイプ:
./gradlew bootRunを実行すると、次の図が表示され
ここに画像の説明を挿入
ます。最初の方法でも同じことがわかりました。

では、kill -9を実行しましょう1268

もう1つのポイントは、。/ gradlew bootRunを強制終了した後に再実行することです。サービスを開始するときは、少し長く待機する必要があるため、あまり速く開始されない可能性があり、404を要求し続けることになります。

おすすめ

転載: blog.csdn.net/u011148116/article/details/106947932