Ibatis + j2ee + уровень веб-сервиса + bean-компонент без статистики

У меня есть проект j2ee, использующий ibatis для подключения к базе данных и bean-компонент без сохранения состояния для создания веб-сервиса, и он работает, но у меня есть сомнения

каждый раз, когда я звоню в службу:

  1. проанализируйте файл конфигурации ibatis xml.
  2. ibatis подключиться к базе данных
  3. и сгенерировать запрос.

Можно ли избежать 1 и 2? или хотя бы 1?

Как правильно это сделать?

Я думаю, может быть, можно один раз вызвать ibatis xml в ejb с отслеживанием состояния?

Спасибо.


person magallanes    schedule 16.12.2010    source источник
comment
Пожалуйста, подробнее. Какая версия iBatis? Любая другая структура, кроме стандартных EJB без сохранения состояния?   -  person Sanjay T. Sharma    schedule 16.12.2010
comment
я не использую никакой другой фреймворк, но попробую с spring.   -  person magallanes    schedule 16.12.2010
comment
Если вы используете Spring, это значительно упростит использование iBatis в вашем приложении.   -  person Sanjay T. Sharma    schedule 16.12.2010


Ответы (1)


  1. Логически говоря, файл конфигурации должен быть проанализирован только один раз, а полученный объект должен быть сохранен в переменной области приложения. Самым простым, но не одобряемым способом для этого было бы использование синглтонов. Предпочтительным способом было бы использование какой-либо среды внедрения зависимостей, такой как Guice или Spring.
  2. iBatis потребует объект подключения для подключения к базе данных, поэтому этого нельзя избежать. Как вы сейчас обрабатываете управление соединениями в своем коде?
person Sanjay T. Sharma    schedule 16.12.2010
comment
Я не понимаю второй момент, соединение настраивается в xml (оракуле) ибатиса и хранится в SqlMapClient. - person magallanes; 16.12.2010
comment
@magallanes: существует несколько способов подключения источника данных к iBatis. Если вы используете конфигурацию POOLED, будет создан пул соединений, и при поступлении запроса вместо создания соединения будет выбрано одно соединение из пула, что значительно улучшит время отклика. - person Sanjay T. Sharma; 16.12.2010
comment
не сейчас, но я буду подключаться через jndi (объединенный), так что проблема не только в том, чтобы разобрать xml. В Jboss мне удалось сделать синглтон, так что, видимо, я буду его придерживаться. А насчет весны, я привязан к ejb. - person magallanes; 16.12.2010