powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / DBCP и не только
12 сообщений из 12, страница 1 из 1
DBCP и не только
    #34766068
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация.

Есть сервлет в котором есть инициализированный датасорс. Есть некоторое количество классов методы в которых должны пользовать коннекции от этого датасорса.

Как сие правильно реализовать?
...
Рейтинг: 0 / 0
DBCP и не только
    #34766071
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А так не пробовал?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
     public  Connection getConnection()  throws  Exception {
        Context initContext =  new  InitialContext();
        Context envContext = (Context) initContext.lookup("java:/comp/env");
        DataSource ds = (DataSource) envContext.lookup("jdbc/YOUR_DEF");
        Connection conn = ds.getConnection();
         return  conn;
    }
...
Рейтинг: 0 / 0
DBCP и не только
    #34766080
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в каждом классе?

Такая бадяга торчит в сервлете - там всё нормально. Хотелось не городить лишнего кода и использовать то, что написано в сервлете. Впрочем, если вариантов нет, мож но и метод реализовать отдельно для каждого класса.
...
Рейтинг: 0 / 0
DBCP и не только
    #34766081
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vincent FROSTв каждом классе?

Такая бадяга торчит в сервлете - там всё нормально. Хотелось не городить лишнего кода и использовать то, что написано в сервлете. Впрочем, если вариантов нет, мож но и метод реализовать отдельно для каждого класса.
Здрасьте, приехали.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 package  com.mycompany;

 public   class  MySuperUtils{
   public  Connection getConnection()  throws  Exception {
        Context initContext =  new  InitialContext();
        Context envContext = (Context) initContext.lookup("java:/comp/env");
        DataSource ds = (DataSource) envContext.lookup("jdbc/YOUR_DEF");
        Connection conn = ds.getConnection();
         return  conn;
    }
}


вызываешь

Код: plaintext
1.
2.
3.
function....() ...{
   Connection conn =  new  MySuperUtils().getConnection();
}

P.S. Сервлеты — говно.
...
Рейтинг: 0 / 0
DBCP и не только
    #34766098
Хрюхрюшкин.
P.S. Сервлеты — говно.
...
Рейтинг: 0 / 0
DBCP и не только
    #34766117
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хрюхрюшкин. Vincent FROSTв каждом классе?

Такая бадяга торчит в сервлете - там всё нормально. Хотелось не городить лишнего кода и использовать то, что написано в сервлете. Впрочем, если вариантов нет, мож но и метод реализовать отдельно для каждого класса.
Здрасьте, приехали.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 package  com.mycompany;

 public   class  MySuperUtils{
   public  Connection getConnection()  throws  Exception {
        Context initContext =  new  InitialContext();
        Context envContext = (Context) initContext.lookup("java:/comp/env");
        DataSource ds = (DataSource) envContext.lookup("jdbc/YOUR_DEF");
        Connection conn = ds.getConnection();
         return  conn;
    }
}


вызываешь

Код: plaintext
1.
2.
3.
function....() ...{
   Connection conn =  new  MySuperUtils().getConnection();
}

P.S. Сервлеты — говно.

а в пул экзостед оно не упрётся?
...
Рейтинг: 0 / 0
DBCP и не только
    #34766118
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vincent FROST
а в пул экзостед оно не упрётся?
А ты не собираешься эти коннекты освобождать?
...
Рейтинг: 0 / 0
DBCP и не только
    #34766124
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хрюхрюшкин.P.S. Сервлеты — говно.
Чем не устроили и что в замен?
...
Рейтинг: 0 / 0
DBCP и не только
    #34766125
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
закрываю всё перед выходом из метода. Была примерно такаяже реализация - уперся. даж с закрывалками. но мож нам шо накосячил... щас проверю
...
Рейтинг: 0 / 0
DBCP и не только
    #34766162
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
"Data source rejected establishment of connection,  message from server: \"Too many connections\"

а так вроде работает. хз правда шо будет при большой нагрузке и шо лепить в настройки датасорса шоб держало.
...
Рейтинг: 0 / 0
DBCP и не только
    #34766178
unicornmirage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vincent FROST
а в пул экзостед оно не упрётся?

Ну чтобы не заморачиваться на закрытии соединений можно использовать Spring JDBC. В частности JdbcTemplate. Он автоматом всё закрывает.
...
Рейтинг: 0 / 0
DBCP и не только
    #34766188
Vincent FROST
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
unicornmirage Vincent FROST
а в пул экзостед оно не упрётся?

Ну чтобы не заморачиваться на закрытии соединений можно использовать Spring JDBC. В частности JdbcTemplate. Он автоматом всё закрывает.

на данный момент эт ужо не принципиально. Оно как бы всё работает. Единственное шо непонятно - резалтсет иногда закрывается раньше чем с него снимаются данные. Мож кто подскажет настройки датасорца шоб нормально тянуло порядка 200 юзеров активно работающих? Сейчас стоит вот так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
    <Resource
      name="jdbc/TestDB"
      type="javax.sql.DataSource"
      factory="org.apache.commons.dbcp.BasicDataSourceFactory"
      password="pass"
      driverClassName="com.mysql.jdbc.Driver"
      removeAbandoned="true"
      removeAbandonedTimeout="60"
      logAbandoned="true"
      maxIdle="300"
      maxWait="10000"
      initialSize="10"
      validationQuery="select * from foo"
      username="user"
      url="jdbc:mysql://localhost:3306/testDB"
      maxActive="1400"/>
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / DBCP и не только
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]