Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hello Spring(202109社内勉強会)
Search
shimadamiyuki
September 16, 2021
0
73
Hello Spring(202109社内勉強会)
月一で実施している社内勉強会の資料です(2021.09)
shimadamiyuki
September 16, 2021
Tweet
Share
More Decks by shimadamiyuki
See All by shimadamiyuki
20240912 JJUGナイトセミナー
mii1004
0
200
STORES決済の裏側のはなし(Code Polaris 色んなエンジニアLT大会)
mii1004
0
230
オブジェクト指向がわからない(202201社内勉強会)
mii1004
0
96
たのしい情報収集(202112社内勉強会)
mii1004
0
67
リファクタリング?(202111社内勉強会)
mii1004
0
58
OpenAPI Generator使ってみる(Java女子部ハロウィンLT)
mii1004
0
56
ビルドツールの話(202110社内勉強会)
mii1004
0
77
StreamAPI, Lambdaと仲良くなる(202108社内勉強会)
mii1004
0
82
Javaはじめのいっぽ(202107社内勉強会)
mii1004
0
81
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Making Projects Easy
brettharned
116
5.9k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The Cult of Friendly URLs
andyhume
78
6.1k
Speed Design
sergeychernyshev
25
670
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Become a Pro
speakerdeck
PRO
26
5k
Docker and Python
trallard
41
3.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Typedesign – Prime Four
hannesfritz
40
2.4k
Transcript
Hello Spring 9⽉チーム会
Springってなんだっけ • Pivotal社が中⼼となってオープンソースで開発されているJavaフレー ムワーク https://spring.io/ https://github.com/spring-projects • Spring Frameworkを中⼼に、⾊々なプロジェクトが集まっている
Springのプロジェクト https://spring.io/projects ・Spring Core(Spring Framework) ・Spring Boot ・Spring Web ・Spring
Data ・Spring Security ・・・など
Spring Framework(Spring Core) Springの⼀番基本的な(コアの 機能を提供する)プロジェクト Springのコア機能で Dependency Injectionが 最初に挙げられている
Springの特徴 Springといえば・・・「DI」と「AOP」 DI(Dependency Injection) ︓依存性の注⼊ AOP(Aspect Oriented Programming) ︓アスペクト指向プログラミング
Dependency Injection クラスが必要とするインスタンスを⾃分でnewするのでは なく、あらかじめ⽤意したインスタンスを注⼊する →クラス間の依存が低くなり、差し替えが容易になる クラスA クラスB DIコンテナ B B
アプリケーションの起動時に、 指定したクラスのインスタンスをDIコンテナに準備 (@Beanや@Componentとか) DIコンテナに準備されているインスタンスを コンストラクタインジェクションや @Autowiredで呼び出して使う
AOP 各コードに散在する共通的な処理を“Aspect”というモジュールとして 別のコードに分離する (ロギング、キャッシング、トランザクション管理など) →共通的な処理を毎回実装する必要がなくなり、Bean⾃体の実装は 本質的なことに集中できる 参考︓ SpringのDIコンテナの動作イメージ(雰囲気)を掴もう https://qiita.com/kazuki43zoo/items/7a0e96573e930ac934ed はじめるSpring
Boot2(有償/⼀部執筆中) https://ik.am/notes Spring 5 & Spring Boot 2ハンズオン https://qiita.com/suke_masa/items/44463518fdbbc13e0087
SpringのProject を作るには Spring initializerを使うのが便利 https://start.spring.io/