【スプリングブックノート】

4661 ワード

一、よく使うstarter
二、開発編
1.parentの継承
springbootを使用する場合は、parentを継承します.

    org.springframework.boot
    spring-boot-starter-parent
    1.5.1.RELEASE


しかし、通常は、プロジェクトで独自のparentプロジェクトを定義します.この場合、サブプロジェクトで独自のparentプロジェクトを指定すると、上記の公式のspring-boot-starter-parentを指定することはできません.では、どうすればいいのでしょうか.実際、springの公式サイトでも解決策が示されています.私たちは親プロジェクトに以下のコードを追加します.サブプロジェクトでは、親プロジェクトを直接指定します.

    
        
            org.springframework.boot
            spring-boot-dependencies
            1.5.1.RELEASE
            pom
            import
        
    


参考:Spring Bootはデフォルトのparentを使用せず、自分のプロジェクトのparentに変更
2.maven環境隔離
#  application-dev    
spring.profiles.active=dev

3.ログ
Spring bootはJava Util Loggin、Log 4 J、Log 4 J 2、LogBackをログフレームワークとしてサポートしており、どのログフレームワークを使用してもspring bootは現在ログフレームワークを使用しているコンソール出力およびファイル出力に構成されています.
デフォルトでは、spring bootはログフレームワークとしてLogbackを使用します.
4.swagger 2との統合
jar方式を単独で導入する
        
            io.springfox
            springfox-swagger2
            2.4.0
        
        
            io.springfox
            springfox-swagger-ui
            2.4.0
        

Springbootの導入方法は参考になる:RESTful API開発神器swaggerとspring-bootの迅速な統合使用
    
        com.gitee.reger
        spring-boot-starter-swagger
        ${spring-boot-starter-swagger.version}
    

5.ホット・デプロイメント
        
            org.springframework.boot
            spring-boot-devtools
            true
        

6.PageHelperページング
1.pomファイル依存の追加
        
            com.github.pagehelper
            pagehelper-spring-boot-starter
            1.2.5
        

2.アプリケーションの構成yml
#  mybatis  
mybatis:
  config-location: classpath:mybatis.xml
  mapper-locations:
  - classpath:mapper/*.xml

#     
pagehelper:
  helper-dialect: mysql
  reasonable: true
  support-methods-arguments: true
  params: count=countSql

3.使用
//    
PageHelper.startPage(pageNum, pageSize);
List typeList = typeDao.getList();

7.mybatis注記とxml
8.異常処理
参照:SpringBoot RESTfulアプリケーションにおける異常処理のまとめ参照:異常統一処理のステップアップ
@ExceptionHandler方式方法注記、Controllerレベルに作用する.ExceptionHandler注記は、Controlerに対して例外プロセッサを定義します.@ControllerAdvice方式類の注釈はSpring工事全体に作用する.ControllerAdvice注記は、グローバルな例外プロセッサを定義する.
なお、ExceptionHandlerの優先度は、Controller Adviceよりも高い、すなわち、Controllerが投げ出す異常は、ExceptionHandlerが表記するメソッド処理と、Controller Adviceが表記するクラスのメソッド処理とを両方とも可能であれば、ExceptionHandlerが表記するメソッド処理を優先する.
三、パッケージ配置はeclipseを使用してwarパッケージに直接エクスポートすることができる.もちろん、より一般的な方法は、以下のコマンドを使用してjarパッケージまたはwarパッケージに打つことです.
mvn clean package  -Dmaven.test.skip=true

jarパッケージとして打つと、次のコマンドで実行できます.
#      。    ,       ,       
java -jar  xx.jar

#       。
nohup java -jar xx.jar &

#           
java -jar app.jar --spring.profiles.active=dev

warパッケージにするとtomcatの下に入れて実行できます.
warに打つ前にいくつかの修正操作が必要であることに注意してください.springboot公式ドキュメントの説明:Createa Deployable War File①pomパッケージの変更
 
jar
  
war

②tomcatの除外

	org.springframework.boot
	spring-boot-starter-tomcat
	provided


③起動クラス起動クラス継承SpringBootServiceletInitializerを変更し、configure()メソッドを上書きします.
//  SpringBootServletInitializer 
@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    //      
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
    
    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }
}