Как построить массив при запуске Java REST Web Service - PullRequest
0 голосов
/ 09 марта 2012

У меня есть метод в моем веб-сервисе, который загружает одни и те же данные mySQL в массив каждый раз, когда он вызывается.Это довольно большой объем данных, и было бы гораздо эффективнее, если бы это можно было сделать один раз при запуске службы, а не для каждого отдельного запроса.

Я искал, но не вижу ничегопримеры того, как этого добиться, возможно ли и если да - как?

Спасибо!

1 Ответ

0 голосов
/ 09 марта 2012

Вы должны сделать что-то вроде

private static List<Items> data;

public static List<Items> getData() {
   if(data==null) {
        //get from db
   }
   return data;
}

, чтобы у вас была всего одна поездка в базу данных для заполнения данными.В качестве альтернативы, поскольку вы используете Джерси, вы можете расширить Application и заполнить ваши данные таким образом при регистрации классов

   <init-param>
       <param-name>javax.ws.rs.Application</param-name>
       <param-value>com.foo.MyApplication</param-value>
   </init-param> 
...