我的Web服务中有方法,每次调用时都会将相同的mySQL数据加载到数组中。这是一个相当大量的数据,如果可以在服务启动时执行一次,而不是每个请求都会更有效。
我已经四处寻找,但看不到任何如何实现这一目标的例子,是否有可能,如果是这样 - 怎么样?
谢谢!
答案 0 :(得分:0)
你应该这样做
private static List<Items> data;
public static List<Items> getData() {
if(data==null) {
//get from db
}
return data;
}
这样,您只需要一次数据库来填充数据。或者,因为您正在使用Jersey,所以可以扩展Application
并在注册类时以这种方式填充数据
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.foo.MyApplication</param-value>
</init-param>