如何在Java REST Web服务启动时构建数组

时间:2012-03-09 16:40:30

标签: java web-services rest jersey

我的Web服务中有方法,每次调用时都会将相同的mySQL数据加载到数组中。这是一个相当大量的数据,如果可以在服务启动时执行一次,而不是每个请求都会更有效。

我已经四处寻找,但看不到任何如何实现这一目标的例子,是否有可能,如果是这样 - 怎么样?

谢谢!

1 个答案:

答案 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>