小编Ber*_* B.的帖子

使用Play Framework 2.1.x的多个数据库

我有2个需要连接的数据库.我可以在application.conf文件中轻松连接到它们,如下所示:

db.default.driver=org.postgresql.Driver
db.default.url="jdbc:postgresql://localhost/db1"
db.default.user=postgres
db.default.password="password"

db.secondary.driver=org.postgresql.Driver
db.secondary.url="jdbc:postgresql://localhost/db2"
db.secondary.user=postgres
db.secondary.password="password"

ebean.default="models.db1.*"
ebean.secondary="models.db2.*"
Run Code Online (Sandbox Code Playgroud)

我在这些包中有我的模型类,并且DDL正确生成表.

问题在于实际使用这些实体.任何不在"默认"包中的内容都会抛出此错误(使用辅助数据库中的Users表作为示例)

如果我尝试查询表的所有行:

List<Users> users = Users.find.all();
Run Code Online (Sandbox Code Playgroud)

它抛出此错误:

[PersistenceException: models.db2.Users is NOT an Entity Bean registered with this server?]
Run Code Online (Sandbox Code Playgroud)

即使我100%确定后端有Users表,它是DDL工作的注册表,并使该表正常,我正在导入正确的类.

我是否需要某种方式来查询不在默认包中的模型类?

编辑:我意识到堆栈跟踪显示它正在尝试使用DefaultServer.如何让它使用辅助服务器?

    at com.avaje.ebeaninternal.server.core.DefaultServer.createQuery(DefaultServer.java:989) ~[avaje-ebeanorm-server.jar:na]
    at com.avaje.ebeaninternal.server.core.DefaultServer.createQuery(DefaultServer.java:946) ~[avaje-ebeanorm-server.jar:na]
    at com.avaje.ebeaninternal.server.core.DefaultServer.find(DefaultServer.java:982) ~[avaje-ebeanorm-server.jar:na]
    at play.db.ebean.Model$Finder.all(Model.java:254) ~[play-java-ebean_2.10.jar:2.1.3]
Run Code Online (Sandbox Code Playgroud)

java database playframework ebean playframework-2.1

16
推荐指数
2
解决办法
6679
查看次数

Play Framework Routes无效

我只是想跟随Play框架的ZenTasks教程(http://www.playframework.com/documentation/2.1.0/JavaGuide4).我似乎无法让登录页面工作.

我正在使用该play ~run命令运行此项目.导航到http://localhost:9000/login错误时是

Action not found For request 'GET /login'
These routes have been tried, in this order:
1 GET/controllers.Application.index()
2 GET/assets/$file<.+>controllers.Assets.at(path:String = "/public", file:String)`
Run Code Online (Sandbox Code Playgroud)

我的路线文件看起来像

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

# Home page
GET     /                           controllers.Application.index()

# User athentication
GET     /login                      controllers.Application.login()
POST    /login                      controllers.Application.authenticate()
GET     /logout                     controllers.Application.logout()

# Map static resources from the /public folder to the /assets URL path
GET     /assets/*file …
Run Code Online (Sandbox Code Playgroud)

java playframework playframework-2.0

6
推荐指数
1
解决办法
1万
查看次数

减少Android应用程序中的内存使用量

我有一个非常简单的游戏,现在在市场上.这是一个简单的基于文本的游戏,不涉及2D或3D图形.它使用适当大小的png作为背景.除此之外,它纯粹是基于文本的.

关于游戏没有任何cpu或图形密集,但平均大约25mb的内存使用量.相比之下,大多数cpu密集型应用平均大约为18mb.

在移动应用程序中,每兆字节都很重要,那么我可以做些什么来正确减少应用程序中的内存使用量?我知道这可能是一个模糊的问题,但我很乐意详细说明是否需要.

谢谢

android

3
推荐指数
1
解决办法
1万
查看次数

在Objective-C中定义全局常量

我有一个constants.h文件,看起来像

#ifndef constants_h
#define constants_h

#define MyAdUnitID @"XXXXXXX"
#define GoogleAnalyticsID = @"XXXXX"

#endif
Run Code Online (Sandbox Code Playgroud)

并希望在我的其他实现文件中引用它.这些只是我想要的整个程序中的NSString实例的简单字符串值,但似乎无法使其工作.

如果有更好的做法,请告诉我!

xcode objective-c ios

2
推荐指数
1
解决办法
2200
查看次数

在一段时间后设置Android按钮可见?

我有一个按钮,我不希望可以点击直到一定的时间运行(比如5秒?)我尝试创建这样的线程

    continueButtonThread =  new Thread()
    {
        @Override
        public void run()
        {
            try {
                synchronized(this){
                    wait(5000);
                }
            }
            catch(InterruptedException ex){                    
            }

            continueButton.setVisibility(0);                
        }
    };

    continueButtonThread.start();
Run Code Online (Sandbox Code Playgroud)

但是我不能在不同的线程中修改按钮的setVisibility属性.这是LogCat的错误:

10-02 14:35:05.908:ERROR/AndroidRuntime(14400):android.view.ViewRoot $ CalledFromWrongThreadException:只有创建视图层次结构的原始线程才能触及其视图.

还有其他方法来解决这个问题吗?

java android button

1
推荐指数
1
解决办法
2670
查看次数