SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
どこよりも早い 
Spring Boot 1.2 解説 
第九回 #渋谷Java 
2014-12-14 Toshiaki Maki (@making)
自己紹介 
• @making 
• http://blog.ik.am 
• 公私ともにSpringヘビーユーザー 
• 日本Javaユーザーグループ幹事
祝「はじめてのSpring Boot」出版 
http://bit.ly/hajiboot
一昨日1.2.0リリース!
コンテンツ 
•Spring Boot復習 
•Spring Boot 1.2の新機能 
•@makingのContribute
Spring Bootの復習
Spring Boot復習 
• Springを使って簡単にモダンな 
アプリケーションを開発するた 
めの仕組み 
•AutoConfigure + 組み込みサー 
バーが特徴
<parent> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-parent</artifactId> 
<version>1.1.9.RELEASE</version> 
</parent> 
<dependencies> 
<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> 
</dependencies> 
<build> 
<plugins> 
<plugin> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-maven-plugin</artifactId> 
</plugin> 
</plugins> 
</build> 
<properties> 
<java.version>1.8</java.version> 
</properties> 
この設定を追加 
するだけ
package com.example; 
! 
import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 
! 
@RestController 
@EnableAutoConfiguration 
public class App { 
! 
@RequestMapping("/") 
String home() { 
return "Hello World!"; 
} 
! 
public static void main(String[] args) { 
SpringApplication.run(App.class, args); 
} 
} 
魔法のアノテーション 
mainメソッドでアプリ実行
ログ 
組込Tomcatが起動した
ログ 
組込Tomcatが起動した
実行可能jarを作成 
$ mvn package
jarを実行 
$ java -jar target/jggug-helloworld-1.0.0- 
SNAPSHOT.jar
プロパティを変更して実行 
$ java -jar target/jggug-helloworld-1.0.0- 
SNAPSHOT.jar --server.port=8888 
--(プロパティ名)=(プロパティ値)
Spring Boot 1.2の新機能
1.2での主なアップデート 
• Spring 4.1対応 
• @SpringBootApplication 
• Servlet 3.1対応 
• JMS対応 
• JTA対応 
• JAX-RS(Jersey)対応 
• Email送信対応 
• 宣言的SSL対応 
等々 
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.2-Release-Notes
Spring 4.1対応 
•ベースが4.0から4.1へ 
• spring-boot-starter-parentの 
versionを1.2系にするだけで 
アップデートされる
Spring 4.1の詳細はJSUGの資料で 
http://bit.ly/spring41
@SpringBootApplication 
Before 
@EnableAutoConfiguration 
@ComponentScan 
@Configuration 
public class App { 
public static void main(String[] args) { 
SpringApplication.run(App.class, args); 
} 
}
@SpringBootApplication 
After 
@SpringBootApplication 
public class App { 
public static void main(String[] args) { 
SpringApplication.run(App.class, args); 
} 
}
Servlet 3.1対応 
• Servletのバージョンが3.0から3.1へ 
• 組み込みサーバーのバージョンアップ 
• Tomcat 8 
• Jetty 9 
• Undertow (New!!)
組み込みサーバー変更 
<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-web</artifactId> 
<exclusions> 
• ベースのServletバージョンが3.0から 
3.1へ 
• 組み込みサーバーもバージョンアップ 
• Tomcat 8 
• Jetty 9 
• Undertow (New!!) 
<exclusion> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-tomcat</artifactId> 
</exclusion> 
</exclusions> 
</dependency> 
<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-undertow</artifactId> 
</dependency>
JMS対応 
• JMS関連のAutoConfigure追加 
• 組み込みHornetQ、ActiveMQサポート 
• 例えばspring-boot-starter-hornetq 
を依存関係に追加すれば自動 
設定
@SpringBootApplication 
@RestController 
送信 
public class App { 
@Autowired 
JmsTemplate jmsTemplate; 
@RequestMapping("/") 
void hello(@RequestParam String name) { 
Greeting greeting = new Greeting(name); 
jmsTemplate.convertAndSend("greetings", 
greeting); 
} 
public static void main(String[] args) { 
SpringApplication.run(App.class, args); 
} 
}
受信 
@Component 
public class GreetingMessageProcessor { 
@JmsListener(destination = "greetings") 
public void processGreet(Greeting greeting){ 
System.out.println("received " + greeting); 
} 
}
JTA対応 
• JTA Transaction Managerでグローバルトラ 
ンザクションのAutoConfigure対応 
• Atomikos 
• Bitronix 
• Java EEコンテナ上のもの 
• 例えばspring-boot-starter-jta-atomikos 
を依存関係に追加すれば自動設定 
http://qiita.com/making@github/items/f7939fcdb5199bd4834e サンプル
JTA対応 
• JTA Transaction Managerでグローバルトラ 
ンザクションのAutoConfigure対応 
• Atomikos 
• Bitronix 
本当に必要? 
• Java EEコンテナ上のもの 
• 例えばspring-boot-starter-jta-atomikos 
を依存関係に追加すれば自動設定 
http://qiita.com/making@github/items/f7939fcdb5199bd4834e サンプル
Jersey(JAX-RS)対応 
• Spring BootはSpring MVC専用 
機ではない! 
•MVCフレームワークは入れ替え 
可能 
• Jersey正式サポート!
Jersey(JAX-RS)対応 
<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-web</artifactId> 
<exclusions> 
<exclusion> 
<groupId>org.springframework</groupId> 
<artifactId>spring-webmvc</artifactId> 
</exclusion> 
</exclusions> 
</dependency> 
<dependency> 
<groupId>org.springframework.boot</groupId> 
<artifactId>spring-boot-starter-jersey</artifactId> 
</dependency>
Java標準でいけます 
@Named 
@Path("/") 
public class HelloEndpoint { 
@Inject 
HelloService helloService; 
! 
@GET 
public String hello(@QueryParam("name")String name){ 
return helloService.hello(name); 
} 
}
Jerseyを即始めたい人向け 
Maven Archetype作りましたhttp://bit.ly/hajiboot-jersey 
$ mvn archetype:generate -B - 
DarchetypeGroupId=am.ik.archetype - 
DarchetypeArtifactId=spring-boot-jersey-blank-archetype - 
DarchetypeVersion=1.0.1 -DgroupId=com.example - 
DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT
Jerseyを即始めたい人向け 
Maven Archetype作りましたhttp://bit.ly/hajiboot-jersey 
$ mvn archetype:generate -B - 
DarchetypeGroupId=am.ik.archetype - 
DarchetypeArtifactId=spring-boot-jersey-blank-archetype - 
DarchetypeVersion=1.0.1 -DgroupId=com.example - 
DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT
Jerseyを即始めたい人向け 
Maven Archetype作りましたhttp://bit.ly/hajiboot-jersey 
$ mvn archetype:generate -B - 
DarchetypeGroupId=am.ik.archetype - 
DarchetypeArtifactId=spring-boot-jersey-blank-archetype - 
DarchetypeVersion=1.0.1 -DgroupId=com.example - 
DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT 
$ mvn spring-boot:run 
$ mvn test
Jerseyを即始めたい人向け 
Maven Archetype作りましたhttp://bit.ly/hajiboot-jersey 
アプリケーション即実行 
$ mvn archetype:generate -B - 
DarchetypeGroupId=am.ik.archetype - 
DarchetypeArtifactId=spring-boot-jersey-blank-archetype - 
DarchetypeVersion=1.0.1 -DgroupId=com.example - 
DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT 
$ mvn spring-boot:run 
$ mvn test
Jerseyを即始めたい人向け 
Maven Archetype作りましたhttp://bit.ly/hajiboot-jersey 
アプリケーション即実行 
$ mvn archetype:generate -B - 
DarchetypeGroupId=am.ik.archetype - 
DarchetypeArtifactId=spring-boot-jersey-blank-archetype - 
DarchetypeVersion=1.0.1 -DgroupId=com.example - 
DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT 
$ mvn spring-boot:run 
$ mvn test 
組み込みサーバーでE2Eテスト
Email送信サポート 
• Email送信用のMailSenderの 
AutoConfigure 
• spring-boot-starter-mail 
を依存関係に追加すれば自動設定
@SpringBootApplication 
@RestController 
public class App { 
@Autowired 
MailSender mailSender; 
@RequestMapping("/") 
void hello() { 
SimpleMailMessage mailMessage 
= new SimpleMailMessage(); 
// … 
mailSender.send(mailMessage); 
} 
public static void main(String[] args) { 
SpringApplication.run(App.class, args); 
} 
}
@SpringBootApplication 
@RestController 
spring: 
public mail: 
class App { 
@Autowired 
MailSender mailSender; 
@RequestMapping("/") 
void hello() { 
host: smtp.gmail.com 
port: 587 
username: Gmailアカウント 
password: Gmailパスワード 
properties: 
mail.smtp: 
SimpleMailMessage mailMessage 
= new SimpleMailMessage(); 
// … 
mailSender.send(mailMessage); 
} 
public static auth: void main(true 
String[] args) { 
SpringApplication.starttls.run(enable: App.class, true 
args); 
} 
}
宣言的SSL対応 
• 設定ファイル(application.yml)に 
設定を書くだけで簡単SSL対応 
$ keytool -genkeypair -alias mytestkey -keyalg RSA -dname 
"CN=Web Server,OU=Unit,O=Organization,L=City,S=State,C=US" 
-keypass changeme -keystore server.jks -storepass letmein 
server: 
port: 8443 
ssl: 
key-store: server.jks 
key-store-password: letmein 
key-password: changeme
いつも通り起動 
$ mvn spring-boot:run 
… (略) 
2014-12-13 12:07:47.833 INFO --- [mple.App.main()] 
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started 
on port(s): 8443/https 
2014-12-13 12:07:47.836 INFO --- [mple.App.main()] 
com.example.App : Started App in 
5.322 seconds (JVM running for 10.02)
いつも通り起動 
$ mvn spring-boot:run 
… (略) 
2014-12-13 12:07:47.833 INFO --- [mple.App.main()] 
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started 
on port(s): 8443/https 
2014-12-13 12:07:47.836 INFO --- [mple.App.main()] 
com.example.App : Started App in 
5.322 seconds (JVM running for 10.02)
@makingのContribute
@makingのContribute(1/2) 
No More CharacterEncodingFilter!! 
@Bean 
@Order(Ordered.HIGHEST_PRECEDENCE) 
CharacterEncodingFilter 
characterEncodingFilter() { 
CharacterEncodingFilter filter = 
new CharacterEncodingFilter(); 
filter.setEncoding("UTF-8"); 
filter.setForceEncoding(true); 
return filter; 
}
@makingのContribute(1/2) 
No More CharacterEncodingFilter!! 
@Bean 
@Order(Ordered.HIGHEST_PRECEDENCE) 
CharacterEncodingFilter 
characterEncodingFilter() { 
CharacterEncodingFilter filter = 
AutoConfigure対象に! 
(日本人歓喜!) 
new CharacterEncodingFilter(); 
filter.setEncoding("UTF-8"); 
filter.setForceEncoding(true); 
return filter; 
}
@makingのContribute(2/2) 
Spring Boot Actuatorで得られる環境情報
@makingのContribute(2/2) 
Spring Boot Actuatorで得られる環境情報 
_人人人人人人_ 
> だだ漏れ < 
‾Y^Y^Y^Y^Y‾
提案 
Suffixか正規表現でサニタイズするパターンを指定できる 
endpoints: 
configprops: 
keys-to-sanitize: password,secret,key 
env: 
keys-to-sanitize: password,secret,key
議論の末
endpoints.env.keys-to-sanitize=java.*
How to contribute 
CLA(Contributor License Agreement) 
に署名して、 
Githubでissue/pull req! 
https://github.com/spring-projects/spring-boot/blob/master/CONTRIBUTING.adoc
まとめ 
はじめよう 
Spring Boot! 
• Spring 4.1対応 
• @SpringBootApplication 
• Servlet 3.1対応 
• JMS対応 
• JTA対応 
• JAX-RS(Jersey)対応 
• Email送信対応 
• 宣言的SSL対応http://bit.ly/hajiboot

Mais conteúdo relacionado

Mais procurados

Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Toshiaki Maki
 
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
Koichi Sakata
 

Mais procurados (20)

Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
 
Spring integration概要
Spring integration概要Spring integration概要
Spring integration概要
 
Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発
 
APIMeetup 20170329_ichimura
APIMeetup 20170329_ichimuraAPIMeetup 20170329_ichimura
APIMeetup 20170329_ichimura
 
Jenkins 2.0 (日本語)
Jenkins 2.0 (日本語)Jenkins 2.0 (日本語)
Jenkins 2.0 (日本語)
 
Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201
 
コードの互換性と進化の両立
コードの互換性と進化の両立コードの互換性と進化の両立
コードの互換性と進化の両立
 
WildFly Swarm - Rightsize Your Java EE Apps
WildFly Swarm - Rightsize Your Java EE AppsWildFly Swarm - Rightsize Your Java EE Apps
WildFly Swarm - Rightsize Your Java EE Apps
 
Open Liberty / WebSphere Liberty
Open Liberty / WebSphere LibertyOpen Liberty / WebSphere Liberty
Open Liberty / WebSphere Liberty
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
 
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
 
Spring Security 4.1 の新機能
Spring Security 4.1 の新機能Spring Security 4.1 の新機能
Spring Security 4.1 の新機能
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
 
Spring Integration 超入門
Spring Integration 超入門Spring Integration 超入門
Spring Integration 超入門
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
 
WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」
 
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
 
WildFly Swarm In Progress
WildFly Swarm In ProgressWildFly Swarm In Progress
WildFly Swarm In Progress
 
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部
 
自動化ハンズオン
自動化ハンズオン自動化ハンズオン
自動化ハンズオン
 

Semelhante a どこよりも早い Spring Boot 1.2 解説 #渋谷Java

Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
Shinpei Ohtani
 
TDC20111031_Groovy_Geb
TDC20111031_Groovy_GebTDC20111031_Groovy_Geb
TDC20111031_Groovy_Geb
Nobuhiro Sue
 
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発
Hironao Sekine
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
Takayoshi Tanaka
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Etsuji Nakai
 

Semelhante a どこよりも早い Spring Boot 1.2 解説 #渋谷Java (20)

Heroku java
Heroku javaHeroku java
Heroku java
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for Java
 
React Native GUIDE
React Native GUIDEReact Native GUIDE
React Native GUIDE
 
thymeleafさいしょの一歩
thymeleafさいしょの一歩thymeleafさいしょの一歩
thymeleafさいしょの一歩
 
scala-kaigi1-sbt
scala-kaigi1-sbtscala-kaigi1-sbt
scala-kaigi1-sbt
 
DBFlute Mavenプラグインを用いてCRUD作成
DBFlute Mavenプラグインを用いてCRUD作成DBFlute Mavenプラグインを用いてCRUD作成
DBFlute Mavenプラグインを用いてCRUD作成
 
Maven2 plugin
Maven2 pluginMaven2 plugin
Maven2 plugin
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
 
はてなのサービスの開発環境
はてなのサービスの開発環境はてなのサービスの開発環境
はてなのサービスの開発環境
 
TDC20111031_Groovy_Geb
TDC20111031_Groovy_GebTDC20111031_Groovy_Geb
TDC20111031_Groovy_Geb
 
15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )15分でCakePHPを始める方法(Nseg 2013-11-09 )
15分でCakePHPを始める方法(Nseg 2013-11-09 )
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
 
OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書
 
Apache Torqueについて
Apache TorqueについてApache Torqueについて
Apache Torqueについて
 

Mais de Toshiaki Maki

マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
Toshiaki Maki
 
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
実例で学ぶ、明日から使えるSpring Boot Tips #jsug実例で学ぶ、明日から使えるSpring Boot Tips #jsug
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
Toshiaki Maki
 

Mais de Toshiaki Maki (20)

From Spring Boot 2.2 to Spring Boot 2.3 #jsug
From Spring Boot 2.2 to Spring Boot 2.3 #jsugFrom Spring Boot 2.2 to Spring Boot 2.3 #jsug
From Spring Boot 2.2 to Spring Boot 2.3 #jsug
 
Concourse x Spinnaker #concourse_tokyo
Concourse x Spinnaker #concourse_tokyoConcourse x Spinnaker #concourse_tokyo
Concourse x Spinnaker #concourse_tokyo
 
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1tServerless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
 
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
 
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
 
Spring Boot Actuator 2.0 & Micrometer
Spring Boot Actuator 2.0 & MicrometerSpring Boot Actuator 2.0 & Micrometer
Spring Boot Actuator 2.0 & Micrometer
 
Open Service Broker APIとKubernetes Service Catalog #k8sjp
Open Service Broker APIとKubernetes Service Catalog #k8sjpOpen Service Broker APIとKubernetes Service Catalog #k8sjp
Open Service Broker APIとKubernetes Service Catalog #k8sjp
 
Spring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsugSpring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsug
 
Introduction to Spring WebFlux #jsug #sf_a1
Introduction to Spring WebFlux #jsug #sf_a1Introduction to Spring WebFlux #jsug #sf_a1
Introduction to Spring WebFlux #jsug #sf_a1
 
BOSH / CF Deployment in modern ways #cf_tokyo
BOSH / CF Deployment in modern ways #cf_tokyoBOSH / CF Deployment in modern ways #cf_tokyo
BOSH / CF Deployment in modern ways #cf_tokyo
 
Why PCF is the best platform for Spring Boot
Why PCF is the best platform for Spring BootWhy PCF is the best platform for Spring Boot
Why PCF is the best platform for Spring Boot
 
Zipkin Components #zipkin_jp
Zipkin Components #zipkin_jpZipkin Components #zipkin_jp
Zipkin Components #zipkin_jp
 
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
 
Spring Framework 5.0による Reactive Web Application #JavaDayTokyo
Spring Framework 5.0による Reactive Web Application #JavaDayTokyoSpring Framework 5.0による Reactive Web Application #JavaDayTokyo
Spring Framework 5.0による Reactive Web Application #JavaDayTokyo
 
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
実例で学ぶ、明日から使えるSpring Boot Tips #jsug実例で学ぶ、明日から使えるSpring Boot Tips #jsug
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
 
Spring ❤️ Kotlin #jjug
Spring ❤️ Kotlin #jjugSpring ❤️ Kotlin #jjug
Spring ❤️ Kotlin #jjug
 
Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3
Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3
Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3
 
Managing your Docker image continuously with Concourse CI
Managing your Docker image continuously with Concourse CIManaging your Docker image continuously with Concourse CI
Managing your Docker image continuously with Concourse CI
 
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
Data Microservices with Spring Cloud Stream, Task,  and Data Flow #jsug #spri...Data Microservices with Spring Cloud Stream, Task,  and Data Flow #jsug #spri...
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
 
Short Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyoShort Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyo
 

Último

Último (10)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

どこよりも早い Spring Boot 1.2 解説 #渋谷Java