RammusXu / rammusxu.github.io

My profile
https://rammusxu.github.io/
2 stars 0 forks source link

Play Framework - Note #50

Closed RammusXu closed 7 years ago

RammusXu commented 7 years ago

Libraries

各種 Library : https://www.playframework.com/documentation/2.5.x/ModuleDirectory

    private static CacheApi cacheApi = Play.current().injector().instanceOf(CacheApi.class);
    private static Configuration configuration = Play.current().injector().instanceOf(Configuration.class);
    public static final String prefix_cache_name = configuration.getString("memcached.prefix");

build.sbt

fork in run := true
# 指定 activitor run 的 port
javaOptions in run += "-Dhttp.port=<port>"

activator test 沒有出現 report

activator clean
activator cleanFiles
activator run

Test

# " 是必要的, TestCase 要代入完整的 package name
activator "test-only controllers.AdminControllerTest"

# 只執行上一次失敗的 test
activator testQuick

Deploy

docker run -it --name webapp -v /my/activator/app/directory:/home/app -p 9000:9000 jeroenminnaert/activator run

DB

# Flyway
play.modules.enabled += "org.flywaydb.play.PlayModule"
db.default.migration.initOnMigrate=true
db.default.migration.outOfOrder=true # 不管順序,都要執行sql

# Evolutions
play.evolutions.enabled=false # 預設的evelution
RammusXu commented 7 years ago

Swagger - API doc

routes

# Routes
# This file defines all application routes (Higher priority routes first)
# ~~~~

-> /                web.Routes
-> /employee        employee.Routes

web.routes

### NoDocs ###
# Map static resources from the /public folder to the /assets URL path
GET     /assets/*file               controllers.Assets.versioned(path="/public", file: Asset)

### NoDocs ###
GET   /docs/swagger-ui/*file        controllers.Assets.at(path:String="/public/lib/swagger-ui", file:String)
RammusXu commented 7 years ago

Create Project Note

  1. Ebean - ORM Library
  2. Memcached - a cache module
  3. Database

    • application.conf
    # Default database configuration using MySQL database engine
    # Connect to playdb as playdbuser
    db.default.driver=com.mysql.jdbc.Driver
    db.default.url="jdbc:mysql://localhost/playdb"
    db.default.username=playdbuser
    db.default.password="a strong password"
    • build.sbt
    libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.36"
  4. test