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
サブ資料⑥FictPAYプロジェクトについての補足
Search
Recruit
PRO
August 10, 2023
Technology
1
620
サブ資料⑥FictPAYプロジェクトについての補足
2023年度リクルート エンジニアコース新人研修の講義資料です
Recruit
PRO
August 10, 2023
Tweet
Share
More Decks by Recruit
See All by Recruit
あなたの知らない Linuxカーネル脆弱性の世界
recruitengineers
PRO
3
190
dbtとBigQuery MLで実現する リクルートの営業支援基盤のモデル開発と保守運用
recruitengineers
PRO
3
180
『ホットペッパービューティー』のiOSアプリをUIKitからSwiftUIへ段階的に移行するためにやったこと
recruitengineers
PRO
4
1.7k
経営の意思決定を加速する 「事業KPIダッシュボード」構築の全貌
recruitengineers
PRO
4
310
Browser
recruitengineers
PRO
12
3.7k
JavaScript 研修
recruitengineers
PRO
8
2.1k
TypeScript入門
recruitengineers
PRO
37
15k
モダンフロントエンド 開発研修
recruitengineers
PRO
13
7.9k
Webアクセシビリティ入門
recruitengineers
PRO
4
2.2k
Other Decks in Technology
See All in Technology
3年ぶりの re:Invent 今年の意気込みと前回の振り返り
kazzpapa3
0
170
The Twin Mandate of Observability
charity
1
860
よくわからない人向けの IAM Identity Center とちょっとした落とし穴
kazzpapa3
2
470
Data & AIの未来とLakeHouse
ishikawa_satoru
0
600
MCP サーバーの基礎から実践レベルの知識まで
azukiazusa1
25
12k
Digitization部 紹介資料
sansan33
PRO
1
5.8k
こんな時代だからこそ! 想定しておきたいアクセスキー漏洩後のムーブ
takuyay0ne
3
350
AI時代におけるドメイン駆動設計 入門 / Introduction to Domain-Driven Design in the AI Era
fendo181
0
500
Beyond Prompts: Building Intelligent Applications with Genkit and the Model Context Protocol
peterfriese
0
110
Data Engineering Guide 2025 #data_summit_findy by @Kazaneya_PR / 20251106
kazaneya
PRO
10
1.9k
LINE公式アカウントの技術スタックと開発の裏側
lycorptech_jp
PRO
0
210
ソフトウェアエンジニアとデータエンジニアの違い・キャリアチェンジ
mtpooh
1
660
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
How GitHub (no longer) Works
holman
315
140k
It's Worth the Effort
3n
187
28k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
A better future with KSS
kneath
239
18k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Transcript
1 ページ サブ資料⑥:Fict PAYプロジェクトについての補⾜ 今回の使⽤フレームワークJerseyについて Spring Frameworkは機能が豊富で様々な要素を包括しているため、それらを簡略化し、今回はシン プルな実装を⾏えるようにJerseyを選択 Jerseyについて JerseyはJAX-RS(JavaにおけるRESTfulなWebサービスの実装に必要な機能やルールを定めたAPIの仕
様)に従って実装された代表的なフレームワークの1つ Jerseyの特徴は、リソースクラス(Controller)の設計がシンプルで、HTTPリクエストとJavaオブジェ クトの変換に注⼒しており、Spring Frameworkに⽐べて機能が少ない分、シンプルでわかりやすい設 計になっている プロジェクトの構成 今回はAPIのため、Viewは無し。モデルとコントローラは以下 JAX-RSとは RESTful APIをJavaで実現するために提唱された仕様で、それに基づいて実装されたフレーム ワークがJersey(※JAX-RSに基づいたフレームワークはJersey以外にも存在する)
2 ページ DB PostgreSQL14.6を使⽤ OBM(MyBatis) ObjectMapperとしてMyBatisを使⽤ その他の主な使⽤ライブラリ DBのトランザクションについて Jerseyでトランザクション管理をするためにpom.xmlにspring-txを追加 <!--
Transaction管理 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>6.0.6</version> </dependency> JavaBeanの管理 JavaBeanの管理のためにpom.xmlにspring-contextを追加 <!-- https://mvnrepository.com/artifact/org.springframework/spring-context --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>6.0.5</version> </dependency> JWTサポートのためのjjwt-apiをpom.xmlに追加 <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt --> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.1</version> </dependency> JWTのサポート コントローラ(Controller)について 今回のフレームワークではResourceという名でクラスを作成するのが、作法であるため、コ ントローラのクラス名は「〇〇Controller」ではなく、「〇〇Resource」となるようにする