Spring Boot 2.0アップグレード小記
3577 ワード
もっと読む
1.背景
プロジェクトのもとの
2.Spring Security
プロジェクトは
2.1ライセンスサーバ(authorization server)
クライアント構成のパスワードは、元の平文から暗号文に変更されます.
3.ElasticSearch
プロジェクトはアリクラウド上に展開されているが、アリクラウドは
依存性
プロジェクトは
1.背景
プロジェクトのもとの
Spring Boot
バージョンは1.5.4.RELEASE
で、Spring Cloud
バージョンはDalston.SR2
で、アップグレード後のSpring Boot
バージョンは2.0.0.M7
で、Spring Cloud
バージョンはFinchley.M5
で、バージョンアップによって各コンポーネントのAPI及び依存パケットが変化し、以下はプロジェクトで使用されるコンポーネントのアップグレード方法である.2.Spring Security
プロジェクトは
Oauth2
プロトコル仕様を使用し、認証されたToken
トークンはRedis
を使用して記憶する.2.1ライセンスサーバ(authorization server)
クライアント構成のパスワードは、元の平文から暗号文に変更されます.
@Configuration
@EnableAuthorizationServer
public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {
@Override
public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
clients.inMemory()
.withClient("android")
.scopes("xx")
.secret("$2a$10$sCeoatJoccD4y1ff8AhdROLd2u6AWYBwH7YrbWXxdk6fA4VGhGITm") // :.secret("android")
.authorizedGrantTypes("password", "authorization_code", "refresh_token");
}
}
2.2リソースサーバ(resource server)Spring Boot 2.0.0.M7
のautoconfigure
におけるResourceServer
に関する自動構成は取り外されました.Spring Security
プロジェクトに移ります.現在の代替案はhttps://github.com/spring-projects/spring-security-oauth2-boot.git
を使用するものです.以下のような依存性を追加すればいいです.
org.springframework.security.oauth.boot
spring-security-oauth2-autoconfigure
2.0.0.BUILD-SNAPSHOT
2.3書き換えRedisTokenStore
RedisTokenStore
に発生したNoSuchMethodError RedisConnection.set([B[B)V
のエラーに対して、現在の解決策はRedisTokenStore
の第160行conn.set(accessKey, serializedAccessToken);
を書き換えるに修正されたものである.3.ElasticSearch
プロジェクトはアリクラウド上に展開されているが、アリクラウドは
conn.stringCommands().set(accessKey, serializedAccessToken);
を使用してREST API
と相互作用することを推奨しているので、プロジェクトはもとのElasticSearch
によってSpring Data Elasticsearch
クライアントとしてSpring Data Jest
に切り替わる.依存性
com.github.vanroy
spring-boot-starter-data-jest
3.0.0.RELEASE
io.searchbox
jest
5.3.2
接続構成spring:
data:
jest:
uri: http://192.168.1.222:9200
username: elastic
password: changeme
4.Spring Coud Feignプロジェクトは
ElasticSearch
を使用してFeign
クライアントとしてリモート起動し、Rest
バージョンがアップグレードされた後、Spring Cloud
は次のように変更されました.
org.springframework.cloud
spring-cloud-starter-openfeign
5.ロゴ4 jFeign
は、Spring Boot 2.0.0.M7
を削除に依存していますが、プロジェクトで使用されるlog4j
はspring-cloud-stream-binder-kafka
に依存していますので、手動でこの依存性を追加する必要があります.
log4j
log4j
1.2.17
ソースアドレス:log4j