SlideShare a Scribd company logo
Jakarta EE 10でのCDI
Jakarta CDI 4.0
レッドハット株式会社
2022.09.16
スペシャリストソリューションアーキテクト
瀬戸 智
1
JakartaOne Livestream – Japan 2022
CDIとは
2
3
▸ オブジェクトの生成をDIコンテナ(アプリケーションサーバー)に任せることで、プ
ログラムを疎結合にする。
▸ テストをしやすくなる、プログラムの修正をしやすくなる等の効果が見込まれ
る。
DI:Dependency Injection(依存性の注入)とは
4
▸ Jakarta EE Context And Dependency Injection
▸ Jakarta EEで標準化されたDIの仕組み
▸ Context(=スコープ)を持つのが特徴
CDIとは
5
CDIの例 CDIのアノテーション(ApplicationScoped)を
付けてクラスを定義する。
CDIのアノテーション(Inject)を付けるとオ
ブジェクトが使えるようになる。
(new演算子を使う必要はない )
6
▸ CDIコンテナはアプリケーションの実行時にアノテーションを
走査して依存性解決をする。
・ いわゆる動的DI
CDIの依存性解決のタイミング(4.0より前の場合)
CDI Lite
7
8
画像は
https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/CDI-Full-vs-CDI-Lite-What-changed-in-Contexts-and-Dependency-Injection-40
▸ Quarkusをベースに検討されたCDIのサブセット
・ いくつかの仕様が削られている
▸ MicroProfile+コンパイル時DI向けに策定
▸ 既存のCDI仕様はCDI Fullと呼ばれることに
CDI Lite仕様の新設
9
▸ Red Hatが出しているMicroProfileの実装
▸ WildFly、EAPに比べると高速で起動、動作することが特徴
・ その分機能は少ない(拡張機能を追加することは可能)
Quarkusとは
10
▸ Javaのネイティブコンパイルの仕組み
GraalVMとは
11
https://quarkus.io/
Quarkus + GraalVMのパフォーマンス
12
▸ 〇実行時のメモリ使用量が削減できる
▸ 〇起動時間が早い
▸ ×コンパイルに時間がかかる
▸ ×スループットはごくわずかに落ちる
▸ ×リフレクションに弱い
・ リフレクションを使う場合は追加設定が必要
JVMと比べた場合のGraalVMの特徴
13
▸ CDIは実行時に動的にオブジェクトを生成するためリフレクションを多用してい
る。
▸ MicroProfile(主にQuarkus)はGraalVMを使って高速化を行いたいが、
GraalVMのために設定が増えるのはよろしくない。
CDI仕様とGraalVMの相性の悪さ
14
▸ アプリケーションサーバーの起動時にアノテーションを走査して依存関係が正
しいかを確認していたのが、コンパイル時に依存性解決を行ってもよいことに
なった。 ※実装依存
・ アプリケーションの実行時のDI=動的DI
・ Java等ではこちらが主流
・ コンパイル時のDI=静的DI
・ Scala等ではこちらが主流
CDIの依存性解決のタイミングの変更(追加)
15
▸ いくつかの仕様が削られてます。
・ コンパイル時DIは実行時DIに比べると制約が多い
・ コンパイル時に実行されるすべてのクラスが必要になる等
▸ MicroProfile+コンパイル時DI向け
・ Jakarta EEサーバーではCDI Full(CDIの全機能)が利用できる。
CDI Lite仕様の注意
16
▸ @SessionScoped、@ConversationScoped
・ MicroProfile実装ではセッションが使えないものもある
▸ Decolator
▸ スペシャライゼーション(特殊化)
▸ ポータブルエクステンション
▸ BeanManagerのいくつかのAPI
▸ その他、細かいものが多数・・・・
CDI FullにあってCDI Liteにない仕様(抜粋)
17
CDI Liteの仕様はQuarkusの実装(Arc)をもとに検討されているので、
大雑把にはQuarkusのドキュメントを読むと良いです。
・コンテキストと依存性インジェクション
https://ja.quarkus.io/guides/cdi-reference#supported_features
https://ja.quarkus.io/guides/cdi-reference#limitations
CDI FullにあってCDI Liteにない仕様(抜粋)
18
▸ Jakarta EEの仕様は実装しなければいけない仕様しか記載されていないた
め、CDI Liteは最低限実装しつつCDI Fullの機能も一部使える状況が考えら
れる。
・ どこまで使えるかは実装に依存する。
・ すでにQuarkusでもCDI Liteと差異がある。
CDI Liteを使う場合の注意
19
▸ Jakarta EEサーバーはCDI Fullサポートが必須のため、Liteの注意点を考
慮する必要はない。
・ 全機能が使える。
CDI Fullを使う場合の注意
CDI 変更点
20
21
▸ 非推奨(deprecated)のAPIの削除
▸ bean.xmlでbean-discovery-mode=”annotated” がデフォルトに
・ CDI2.0(EE8)までの複雑怪奇なルールが削除
CDIの非互換(抜粋)
22
▸ CDI組み込みのStartup、Shutdownイベントのイベントリスナーが追加
・ コンパイル時DI(+GraalVM)の場合、beanの初期化処理をコンパイル時
DIで行えるため
▸ ポータブル拡張機能の追加。
・ リフレクションを使用しないCDI機能拡張の方法の提供
▸ ステレオタイプに@Priorityを混ぜ込むことが可能に。
・ テスト用の@Mockとかを定義して入れておくと便利
CDIの追加機能(抜粋)
23
▸ Jakarta EE Spec
https://jakarta.ee/specifications/cdi/4.0/jakarta-cdi-spec-4.0.html
▸ CDI Full vs CDI Lite: What's new in Contexts and Dependency Injection 4.0
https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/CDI-Full-vs-CDI-Lit
e-What-changed-in-Contexts-and-Dependency-Injection-40
▸ Weld Documentation(CDIのRI)
https://weld.cdi-spec.org/documentation/
▸ ja.quarkus.io
https://quarkus.io/
参考資料
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHat
Red Hat is the world’s leading provider of enterprise
open source software solutions. Award-winning
support, training, and consulting services make
Red Hat a trusted adviser to the Fortune 500.
Thank you
24
25
MVC欲しいとか
gRPCはやくくれとか
リリース頻度上げてほしいとか
アンケートのお願い

More Related Content

What's hot

JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニングJVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
佑哉 廣岡
 
Spring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装するSpring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装する
Rakuten Group, Inc.
 
基礎からのOAuth 2.0とSpring Security 5.1による実装
基礎からのOAuth 2.0とSpring Security 5.1による実装基礎からのOAuth 2.0とSpring Security 5.1による実装
基礎からのOAuth 2.0とSpring Security 5.1による実装
Masatoshi Tada
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
Hiroyuki Wada
 
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
Takahiro YAMADA
 
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall ) LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
Hironobu Isoda
 
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
Akihiro Suda
 
Vue.js で XSS
Vue.js で XSSVue.js で XSS
Vue.js で XSS
tobaru_yuta
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate
Takanori Suzuki
 
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。 【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
NTT DATA Technology & Innovation
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本
kazuki kumagai
 
JDKの選択肢とサーバーサイドでの選び方
JDKの選択肢とサーバーサイドでの選び方JDKの選択肢とサーバーサイドでの選び方
JDKの選択肢とサーバーサイドでの選び方
Takahiro YAMADA
 
ブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデルブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデル
Yuta Hiroto
 
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャJJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
Kaname Motoyama
 
Spring Bootをはじめる時にやるべき10のこと
Spring Bootをはじめる時にやるべき10のことSpring Bootをはじめる時にやるべき10のこと
Spring Bootをはじめる時にやるべき10のこと
心 谷本
 
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM Logging
Yuji Kubota
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
 
2022_sakura-yube_ddd.pdf
2022_sakura-yube_ddd.pdf2022_sakura-yube_ddd.pdf
2022_sakura-yube_ddd.pdf
toshiki kawai
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021
Yusuke Suzuki
 

What's hot (20)

JVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニングJVMのGCアルゴリズムとチューニング
JVMのGCアルゴリズムとチューニング
 
Spring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装するSpring Social でソーシャルログインを実装する
Spring Social でソーシャルログインを実装する
 
基礎からのOAuth 2.0とSpring Security 5.1による実装
基礎からのOAuth 2.0とSpring Security 5.1による実装基礎からのOAuth 2.0とSpring Security 5.1による実装
基礎からのOAuth 2.0とSpring Security 5.1による実装
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
これからのJDK 何を選ぶ?どう選ぶ? (v1.2) in 熊本
 
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall ) LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
 
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 
Vue.js で XSS
Vue.js で XSSVue.js で XSS
Vue.js で XSS
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate
 
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。 【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本
 
JDKの選択肢とサーバーサイドでの選び方
JDKの選択肢とサーバーサイドでの選び方JDKの選択肢とサーバーサイドでの選び方
JDKの選択肢とサーバーサイドでの選び方
 
ブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデルブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデル
 
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャJJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
JJUGCCC2022spring_連続画像処理による位置情報計算を支えるマイクロサービスアーキテクチャ
 
Spring Bootをはじめる時にやるべき10のこと
Spring Bootをはじめる時にやるべき10のことSpring Bootをはじめる時にやるべき10のこと
Spring Bootをはじめる時にやるべき10のこと
 
Unified JVM Logging
Unified JVM LoggingUnified JVM Logging
Unified JVM Logging
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
 
2022_sakura-yube_ddd.pdf
2022_sakura-yube_ddd.pdf2022_sakura-yube_ddd.pdf
2022_sakura-yube_ddd.pdf
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021
 

Similar to Jakarta CDI 4.0

CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4cCDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
Norito Agetsuma
 
DevOps with Dynatrace
DevOps with DynatraceDevOps with Dynatrace
DevOps with Dynatrace
Harry Hiyoshi
 
Open Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdfOpen Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdf
Masahiko Umeno
 
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
Hideaki Tokida
 
Docker Enterprise Editionで実践するCaaS
Docker Enterprise Editionで実践するCaaSDocker Enterprise Editionで実践するCaaS
Docker Enterprise Editionで実践するCaaS
DevOps Hub
 
Ti dd force09
Ti dd force09Ti dd force09
Ti dd force09
Makoto SAKAI
 
テスト駆動開発の進化
テスト駆動開発の進化テスト駆動開発の進化
テスト駆動開発の進化
Yukei Wachi
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中
Takako Miyagawa
 
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料][G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
Trainocate Japan, Ltd.
 
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
Masaya Tahara
 
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Takeshi Hirosue
 
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
オラクルエンジニア通信
 
Spring Cloud Data Flow で構成される IIJ IoTサービス
Spring Cloud Data Flow で構成される IIJ IoTサービスSpring Cloud Data Flow で構成される IIJ IoTサービス
Spring Cloud Data Flow で構成される IIJ IoTサービス
Kenji Kondo
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android Studio
Soichiro Kashima
 
220523JS7.pdf
220523JS7.pdf220523JS7.pdf
220523JS7.pdf
OSSラボ株式会社
 
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えようクラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えよう
NTT Communications Technology Development
 
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
NTT DATA Technology & Innovation
 

Similar to Jakarta CDI 4.0 (20)

CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4cCDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
CDI2.0アップデート&クックブック #JavaDayTokyo #jdt2016_4c
 
DevOps with Dynatrace
DevOps with DynatraceDevOps with Dynatrace
DevOps with Dynatrace
 
Open Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdfOpen Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdf
 
AndroidでDIxAOP
AndroidでDIxAOPAndroidでDIxAOP
AndroidでDIxAOP
 
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
OpenShift Ansbile 活用法 アプリケーションライフサイクルからみる導入効果
 
Docker Enterprise Editionで実践するCaaS
Docker Enterprise Editionで実践するCaaSDocker Enterprise Editionで実践するCaaS
Docker Enterprise Editionで実践するCaaS
 
Ti dd force09
Ti dd force09Ti dd force09
Ti dd force09
 
テスト駆動開発の進化
テスト駆動開発の進化テスト駆動開発の進化
テスト駆動開発の進化
 
Devguide 9911j
Devguide 9911jDevguide 9911j
Devguide 9911j
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中
 
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料][G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
[G-Tech2015]シスコのデーターセンター向けSDN最前線_シスコシステムズ様[講演資料]
 
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
なぜあなたのプロジェクトのDevSecOpsは形骸化するのか(CloudNative Security Conference 2022)
 
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
Spring Fest 2017 「エンタープライズで利用するSpring Boot」#jsug #sf_h1
 
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
OCHaCafe Season 2 #4 - Cloud Native時代のモダンJavaの世界
 
Spring Cloud Data Flow で構成される IIJ IoTサービス
Spring Cloud Data Flow で構成される IIJ IoTサービスSpring Cloud Data Flow で構成される IIJ IoTサービス
Spring Cloud Data Flow で構成される IIJ IoTサービス
 
Android App Development with Gradle & Android Studio
Android App Development with Gradle & Android StudioAndroid App Development with Gradle & Android Studio
Android App Development with Gradle & Android Studio
 
220523JS7.pdf
220523JS7.pdf220523JS7.pdf
220523JS7.pdf
 
Android0422
Android0422Android0422
Android0422
 
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えようクラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えよう
 
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
脅威へ、しなやかかつ持続可能に対応するためのIaC環境 ~循環型IaC~ (CloudNative Security Conference 2022 プレ...
 

More from Satoshi Kubo

Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Satoshi Kubo
 
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
Satoshi Kubo
 
今のJava
今のJava今のJava
今のJava
Satoshi Kubo
 
できる!Pmdカスタマイズ
できる!Pmdカスタマイズできる!Pmdカスタマイズ
できる!Pmdカスタマイズ
Satoshi Kubo
 
Javaの速度比較
Javaの速度比較Javaの速度比較
Javaの速度比較
Satoshi Kubo
 
Java EEの話(仮)
Java EEの話(仮)Java EEの話(仮)
Java EEの話(仮)
Satoshi Kubo
 
テストって何がしたいんですか?
テストって何がしたいんですか?テストって何がしたいんですか?
テストって何がしたいんですか?Satoshi Kubo
 
Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎
Satoshi Kubo
 
泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUG泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUGSatoshi Kubo
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Satoshi Kubo
 
Advent calendarを作ってみた
Advent calendarを作ってみたAdvent calendarを作ってみた
Advent calendarを作ってみた
Satoshi Kubo
 
Java ee6 with scala
Java ee6 with scalaJava ee6 with scala
Java ee6 with scala
Satoshi Kubo
 
Glass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみたGlass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみた
Satoshi Kubo
 
金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjp金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjpSatoshi Kubo
 
JavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjpJavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjp
Satoshi Kubo
 

More from Satoshi Kubo (15)

Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
 
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
 
今のJava
今のJava今のJava
今のJava
 
できる!Pmdカスタマイズ
できる!Pmdカスタマイズできる!Pmdカスタマイズ
できる!Pmdカスタマイズ
 
Javaの速度比較
Javaの速度比較Javaの速度比較
Javaの速度比較
 
Java EEの話(仮)
Java EEの話(仮)Java EEの話(仮)
Java EEの話(仮)
 
テストって何がしたいんですか?
テストって何がしたいんですか?テストって何がしたいんですか?
テストって何がしたいんですか?
 
Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎
 
泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUG泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUG
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
 
Advent calendarを作ってみた
Advent calendarを作ってみたAdvent calendarを作ってみた
Advent calendarを作ってみた
 
Java ee6 with scala
Java ee6 with scalaJava ee6 with scala
Java ee6 with scala
 
Glass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみたGlass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみた
 
金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjp金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjp
 
JavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjpJavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjp
 

Recently uploaded

なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDDなぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
ssuserfcafd1
 
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
OSgeo Japan
 
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
Hideo Kashioka
 
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
Osaka University
 
iMacwoSu_Gong_de_barabaranishitaHua_.pptx
iMacwoSu_Gong_de_barabaranishitaHua_.pptxiMacwoSu_Gong_de_barabaranishitaHua_.pptx
iMacwoSu_Gong_de_barabaranishitaHua_.pptx
kitamisetagayaxxx
 
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT  vol112 発表資料)ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT  vol112 発表資料)
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
Takuya Minagawa
 
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
Yuki Miyazaki
 
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
Shinichi Hirauchi
 
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
ARISE analytics
 
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
Seiya Shimabukuro
 
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
sugiuralab
 
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
Osaka University
 
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
iPride Co., Ltd.
 
Kotest を使って 快適にテストを書こう - KotlinFest 2024
Kotest を使って 快適にテストを書こう - KotlinFest 2024Kotest を使って 快適にテストを書こう - KotlinFest 2024
Kotest を使って 快適にテストを書こう - KotlinFest 2024
Hirotaka Kawata
 

Recently uploaded (14)

なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDDなぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
なぜそのDDDは効果が薄いのか?名ばかりDX案件での経験を踏まえて培った他の思考を交えた現代風?のDDD
 
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
一般社団法人OSGeo日本支部団体紹介用スライド2024年版。OSGeo日本支部とFOSS4Gの紹介
 
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
実体験に基づく、成功するスクラム vs 失敗するスクラム 何が違う? 2024年6月22日
 
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
生成AIの実利用に必要なこと-Practical Requirements for the Deployment of Generative AI
 
iMacwoSu_Gong_de_barabaranishitaHua_.pptx
iMacwoSu_Gong_de_barabaranishitaHua_.pptxiMacwoSu_Gong_de_barabaranishitaHua_.pptx
iMacwoSu_Gong_de_barabaranishitaHua_.pptx
 
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT  vol112 発表資料)ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT  vol112 発表資料)
ろくに電子工作もしたことない人間がIoT用ミドルウェアを作った話(IoTLT vol112 発表資料)
 
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
無形価値を守り育てる社会における「デー タ」の責務について - Atlas, Inc.
 
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
気ままなLLMをAgents for Amazon Bedrockでちょっとだけ飼いならす
 
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
【JSAI2024】LLMエージェントの人間との対話における反芻的返答の親近感向上効果_v1.1.pdf
 
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
20240621_AI事業者ガイドライン_セキュリティパートの紹介_SeiyaShimabukuro
 
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
ヒアラブルへの入力を想定したユーザ定義型ジェスチャ調査と IMUセンサによる耳タッチジェスチャの認識
 
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
協働AIがもたらす業務効率革命 -日本企業が押さえるべきポイント-Collaborative AI Revolutionizing Busines...
 
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
Microsoft Azureで生成AIを使ってみた話 2024/6/14の勉強会で発表されたものです。
 
Kotest を使って 快適にテストを書こう - KotlinFest 2024
Kotest を使って 快適にテストを書こう - KotlinFest 2024Kotest を使って 快適にテストを書こう - KotlinFest 2024
Kotest を使って 快適にテストを書こう - KotlinFest 2024
 

Jakarta CDI 4.0