你知道如何在不使用弹簧的情况下将对象设置为resteasy框架
例如,我有服务:
@Path("/customers")
public class CustomerResource {
private MyDBconnection db = new MyDBconnection();
...
}
如何将db连接对象保存到所有Web服务器的应用程序范围?
答案 0 :(得分:2)
我不会保存一个数据库连接以在多个物理服务器之间共享。我不确定这是不是你问的问题。我建议在每台服务器上共享连接/池。你能做的最简单的事就是简单的单身人士。但是,我建议你使用Guice https://code.google.com/p/google-guice/,这样你就可以在任何需要的地方做这样的事情。
@Path("/customers")
public class CustomerResource {
@Inject
private Connection db;
...
}
然后你可以定义一个类似于
的guice模块public class DatabaseModule extends AbstractModule {
@Override
protected void configure() {
...
}
@Provides
@Singleton
Connection provideConnection() {
MyDBConnection connection = new MyDBConnection("jdbc:mysql....");
connection.setSomeCustomStuff(someCustomStuff);
return connection;
}
}
我知道目前,resteasy只支持Guice 2.0。如果你可以忍受这种酷,如果没有,我可以帮助你将Guice 3.0与resteasy集成,因为我自己完成了它并且它运作良好。