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
はじめてのSpringBoot
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ふるてつ
April 01, 2019
Technology
0
480
はじめてのSpringBoot
【福岡】読んだ内容まとめてLT会#7 の発表資料です。
ふるてつ
April 01, 2019
Tweet
Share
More Decks by ふるてつ
See All by ふるてつ
ユニットテストとE2Eテストをdemoしたい件
furutetsu
0
280
Angularで簡単な画面を単体テストまで一通り作った件
furutetsu
1
1.3k
AngularとBootstrapを使った業務システムの設計について考えた。
furutetsu
1
2.4k
Other Decks in Technology
See All in Technology
Context Engineeringの取り組み
nutslove
0
340
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
340
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
160
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
OpenShiftでllm-dを動かそう!
jpishikawa
0
100
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
570
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
Tebiki Engineering Team Deck
tebiki
0
24k
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
260
Cosmos World Foundation Model Platform for Physical AI
takmin
0
870
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
74
5k
Statistics for Hackers
jakevdp
799
230k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
54
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
74
Typedesign – Prime Four
hannesfritz
42
2.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Why Our Code Smells
bkeepers
PRO
340
58k
Tell your own story through comics
letsgokoyo
1
810
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
Transcript
はじめてのSpring Boot 【福岡】読んだ内容まとめてLT会#7 2019.4.16
自己紹介 福岡のエンジニアです。 客先常駐するタイプです。 COBOL → VB6.0 → VB.net → Spring
BootなIT人生。 他 jQuery → AngularJS → Angular 定年後の夢は、年金をもらいながら自称IT発明家になることです。 ふるてつ@tetsufuru19681 https://tetsufuru.hatenablog.com/ ちょくちょく参加するコミュニティ
誰に紹介したいか 新人教育担当に この本を使って実習させると良いと思います。 1ヶ月もあれば終わります。 薄い本なので飽きないと思います。 Java経験者だが実は不安だという方に 業務部分のみ開発していてそれ以外の事が実はあまりよくわかっていない方。 昔
Struts とか Caesar は経験したけど Springはちょっと…という方。 普段、他の言語で開発しているがJavaも一応知っておきたい方に
内容 1章 「Spring Boot」とは 2章 速習「Spring Framework」 「Spring
Framework」によるDI 「Spring JDBC」によるDBアクセス 「Spring Data JPA」によるDBアクセス 3章 「Spring Boot」による「Webアプリ開発」 「Rest Webサービス」の開発 「Thymeleaf」を使った、「画面のあるWebアプリ」の開発 「Flyway」で「DBマイグレーション」 「Spring Security」で「認証」「認可」を追加 4章 Paas 「Cloud Foundry」にデプロイ 5章 「Spring Boot」におけるテスト
1章 「Spring Boot」とは 「Spring Framework 」の歴史 「Spring Framework」は、2003年に登場したJava
Framework 「DI」「AOP」で注目された。 「Spring Bootとは」 あらかじめおすすめのプロジェクトの組み合わせが含まれている。 自動で設定が有効になる。 組み込みサーバが同梱される。 「Spring Initializr」によるひな形プロジェクト作成 ひな形生成Webサービス(http://start.spring.io)でプロジェクト作成 ⇒ 勉強以外では使いません多分… Mavenの依存関係定義ファイル(pom.xml)の解説 「Hello World!」を出力するWebアプリケーションの作成 実行可能な「Jarファイル」の作成 「Spring Tool Suite」を利用した「Spring Boot」アプリケーションの開発 ⇒ EclipseにSTSプラグインを入れたほうが良い。 「Spring Dev Tools」(アプリケーションを起動したまま、Javaクラスの変更を動的に反映)
2章 速習「Spring Framework」 「Spring Framework」によるDI メリット インスタンスの「スコープ」を制御できる。
インスタンスの「ライフ・サイクル」をイベント制御できる。 共通的な処理を埋め込める。 オブジェクト間が疎結合になるため「ユニット・テスト」がしやすくなる。 「レイヤー化」した「コンポーネント」の「インジェクション」 アノテーション(@Component、@Controller、@Service、@Repository)を使用してプロジェクトを作成 Lombokを使用 「Spring JDBC」によるDBアクセス JDBC、H2、Lombokを使用してプロジェクトを作成 SQLログの設定(Log4JDBCの設定) 「Spring Data JPA」によるDBアクセス JPA、H2、Lombokを使用してプロジェクトを作成 ページング処理
3章 「Spring Boot」による「Webアプリ開発」 「REST Webサービス」の開発 「全件取得」「1件取得」APIを作成する(GET) 「新規作成」「1件更新」「1件削除」APIを作成する(POST、PUT、DELETE) 「「Thymeleaf」を使った、「画面のあるWebアプリ」の開発 Thymeleaf、JPA、H2、Lombokを使用してプロジェクトを作成(顧客情報のメンテナンス)
Flywayの設定方法(DBのバージョン管理) 「Spring Security」で「認証」「認可」 SecurityConfig、LoginUserDetail、LoginUserDetailsServiceクラスの使い方
作成するコードの例(Repository、Entity)
作成するコードの例(RestController、Service)
Spring Security
Flyway
「Thymeleaf」を使用したWebアプリの例 ログインと一覧画面、詳細画面 月並みな画面ですが勉強なので 多くは求めないでください
注意点 本の内容が少し古くなってきているので注意してください。 「STS」は使用しないほうが良い。 Eclipseに「STS」pluginをバージョン指定(1.4.0.RELEASE)して取り込んだほうが良い。 @AutoWiredは非推奨。いまはコンストラクターインジェクション。 Spring Securityも仕様が現在若干変わっている。
Basic認証の外し方がいまは違うなど。 本と同じバージョンを指定して取り込んだほうが良い(4.1.1.RELEASE) 「Spring Initializr」は正直使わなくてよい。 Eclipseのメニューから「新規」 ⇒ 「その他」 ⇒ 「Spring Boot 」 ⇒ 「Spring Bootスターター・プロジェクト」で新規作成 したほうがい良い。 「Spring Data JPA」は複雑なSQLを書くときにちょっと大変。 個人的にはMavenよりもGradleの方が使いやすい。
終わりに https://techacademy.jp/magazine/8735
ありがとうございました。