我正在使用java on play 2.2构建一个应用程序.
我有一个java枚举作为我在路由中使用的函数中的参数.
这是我的enum课程.我四处搜索,发现我需要实现QueryStringBindable才能在路由中使用它.
public enum Something implements QueryStringBindable<Something> {
a,
b,
c;
@Override
public F.Option<ClientStatus> bind(String key, Map<String, String[]> params) {
String[] arr = params.get(key);
if (arr == null || arr.length == 0) {
return F.Option.None();
} else {
Something status = Something.valueOf(arr[0]);
return F.Option.Some(status);
}
}
@Override
public String unbind(String key) {
return null;
}
@Override
public String javascriptUnbind() {
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
然而我尝试了我的路线:
GET /someurl controllers.Application.function(status: util.enums.Something)
Run Code Online (Sandbox Code Playgroud)
但它返回错误消息的错误请求:
要求'GET/someurl'[util.enums.Something]
我用谷歌搜索,并没有找到任何答案在我的情况下工作.我错过了什么或玩不支持绑定枚举?
我正在学习Play Framework.我创建了一些Form并将相应的对象保存到我的数据库中:
object.save();
Run Code Online (Sandbox Code Playgroud)
我想获得刚刚保存的对象.我检查了文档,发现save()没有返回类型.
那么无论如何我能得到那个对象吗?(对象表的id列设置为自动递增,如果这可能有帮助)
我有一个项目在玩!框架.我使用了mysql 5.1并添加了mysql-connector-java依赖项,它运行得很好.
但是现在我需要将mysql升级到5.6,但是我找不到用于5.6的mysql-connector-java.
在这种情况下,任何人都可以提供一些随身听吗?是否有可能有2个版本的mysql,其中一个用于项目,一个用于我的其他需要,例如与db备份集成,而两个版本共享相同的db?
非常感谢.