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
100
Hello Spring(202109社内勉強会)
月一で実施している社内勉強会の資料です(2021.09)
shimadamiyuki
September 16, 2021
Tweet
Share
More Decks by shimadamiyuki
See All by shimadamiyuki
20240912 JJUGナイトセミナー
mii1004
0
250
STORES決済の裏側のはなし(Code Polaris 色んなエンジニアLT大会)
mii1004
0
280
オブジェクト指向がわからない(202201社内勉強会)
mii1004
0
150
たのしい情報収集(202112社内勉強会)
mii1004
0
110
リファクタリング?(202111社内勉強会)
mii1004
0
95
OpenAPI Generator使ってみる(Java女子部ハロウィンLT)
mii1004
0
79
ビルドツールの話(202110社内勉強会)
mii1004
0
120
StreamAPI, Lambdaと仲良くなる(202108社内勉強会)
mii1004
0
120
Javaはじめのいっぽ(202107社内勉強会)
mii1004
0
130
Featured
See All Featured
Being A Developer After 40
akosma
90
590k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
780
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
RailsConf 2023
tenderlove
30
1.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
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/