Skip to content

XenonAbe/dbflute-play-guice-java-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DBFlute Play Framework 2 Example

DBFlutePlay Framework 2.6.x 上で 使用するサンプルです。

Overview

  • O/RマッパーにDBFluteを使用
  • Web FrameworkにPlay Frameworkを使用
  • Spring FrameworkTransaction Managementを使用。メソッドへの@Transactionalアノテーション(see Reference)の付加や、TransactionTemplate(see Reference)を使用したトランザクション制御を行うことができる。混在も可能。基本的な、通常実行時にはCommit、例外発生時にRollbackする動作の他、柔軟なトランザクション制御(e.g. Transaction propagation)が可能
  • コネクションプールにPlay Framework組み込みのHikariCPを使用
  • Dependency InjectionライブラリにPlay Framework組み込みのGoogle Guiceを使用

How to run

Run this using sbt. (see Installing sbt)

Start the Play app:

sbt run

And open http://localhost:9000/

How to test

テストを実行します

sbt test

test.functional.TransactionTestServiceクラスに多様なトランザクション処理の記述例があります

その他

サブプロジェクト

DBFlute関係(DBFluteクライアント、エンジン、生成ソース)をサブプロジェクトとしてメインプロジェクトと分離しています (dbfluteディレクトリ)

ログ出力

Play Framework デフォルトのログ出力は非常にシンプルですが、このサンプルではActionやTransactionの開始・終了、実行SQLがログで確認出来るよう設定しています

非同期処理

データベース処理用のカスタムExecutionContextを使用した非同期処理のサンプルがあります

参考リンク

謝辞

サンプルの動作は play-java-forms-example および play-java-starter-example を参考にさせていただきました。