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
590
サブ資料⑥FictPAYプロジェクトについての補足
2023年度リクルート エンジニアコース新人研修の講義資料です
Recruit
PRO
August 10, 2023
Tweet
Share
More Decks by Recruit
See All by Recruit
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
100
問題解決に役立つ数理工学
recruitengineers
PRO
11
2.8k
Curiosity & Persistence
recruitengineers
PRO
2
190
結果的にこうなった。から見える メカニズムのようなもの。
recruitengineers
PRO
1
410
成長実感と伸び悩みからふりかえる キャリアグラフ
recruitengineers
PRO
1
180
リクルートの オンプレ環境の未来を語る
recruitengineers
PRO
3
340
LLMのプロダクト装着と独自モデル開発
recruitengineers
PRO
1
350
新規検索基盤でマッチング精度向上に挑む! ~『ホットペッパーグルメ』の開発事例 ビジネス編
recruitengineers
PRO
3
190
新規検索基盤でマッチング精度向上に挑む! ~『ホットペッパーグルメ』の開発事例 技術編
recruitengineers
PRO
2
250
Other Decks in Technology
See All in Technology
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
390
rubygem開発で鍛える設計力
joker1007
2
190
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
350
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
330
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
330
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
240
AIのAIによるAIのための出力評価と改善
chocoyama
2
540
ひとり情シスなCTOがLLMと始めるオペレーション最適化 / CTO's LLM-Powered Ops
yamitzky
0
420
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
1k
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
110
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
2
200
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Six Lessons from altMBA
skipperchong
28
3.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
It's Worth the Effort
3n
185
28k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
790
Statistics for Hackers
jakevdp
799
220k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
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」となるようにする