Bueno, con Java recomendaría API SqlQuery de Ebean por hacer esto (tal vez porque lo prefiero;)).
En proyecto/plugins.sbt descomente la línea (la última):
addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "1.0.0")
En construido.sbt modifique la línea y agregue el PlayEbean a complementos habilitados, como:
lazy val root = (project in file(".")).enablePlugins(PlayJava, PlayEbean)
En su conf/application.conf agregue esta línea después de las configuraciones de base de datos:
ebean.default = ["models.*"]
Entonces puede usarlo, es decir, en su acción como (muestra de c):
SqlQuery query = Ebean.createSqlQuery("SELECT * FROM users WHERE username LIKE :username");
query.setParameter("username", "%200ok%");
List<SqlRow> rows = query.findList();
for (SqlRow row : rows) {
play.Logger.debug("Found user: " + row.getString("username") + " with ID: " + row.getInteger("id"));
}