|
|
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
Хочу инициализировать одну переменную типа DataSource в области видимости приложения, что бы каждый раз при получении соединения не создавать его заново, а использовать уже имеющийся. Нижеследующий код пишу на странице index.jsp Код: plaintext 1. 2. 3. Как получить доступ к этой переменной из классов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 11:56:29 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
а зачем у тебя бизнеслогика в JSP? сделай это в классе, а не в JSP, а потом используй в бинах, как тебе надо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 12:10:03 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
TuralКак получить доступ к этой переменной из классов? Через JNDI-контекст :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 12:20:27 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
Как сделать так чтобы переменная была создана один раз на одном месте, а потом из других мест к ней был доступ? Я поэтому это начал делать на странице index.jsp. Но сейчас сделал так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 13:38:55 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
почти... во-первых методы надо с маленькой буквы называть... во-вторых, филд ds надо делать приватным, в-третьих, вместо return DBHelper.ds.getConnection(); надо написать просто return ds; в-четвертых, лично я бы не стал делать метод throwable, и обернул внутри него все try catch, и в кетче бы бросал какой-нибудь RuntimeException, т.к. это глобальная проблема, что нет датасоурса, а не локальная... в-пятых, у тебя не threadsafe метод, нужна синхронизация где-нибудь. в-шестых, это все называется паттерном проектирования Lazy Initialization - можешь поискать как его правильно надо писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 14:27:51 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
y3u спасибо. учту все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 14:35:37 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
Вопрос на счет 3-го пункта. Мой метод GetConnection возвращает Connection, а ds это DataSource. Мне в этом методе и нужен Connection, зачем тогда возвращать DataSource? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 14:38:54 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
TuralВопрос на счет 3-го пункта. Мой метод GetConnection возвращает Connection, а ds это DataSource. Мне в этом методе и нужен Connection, зачем тогда возвращать DataSource? Конечно, возвращать надо ds.getConnection(). А вот явное указание класса DBHelper можно выкинуть - метод и так внутри находится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 15:23:28 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
А, да - присваивать полю класса null не обязательно, все поля-референсы и так им инициализируются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 15:24:53 |
|
||
|
доступ к переменной из класса
|
|||
|---|---|---|---|
|
#18+
TuralВопрос на счет 3-го пункта. Мой метод GetConnection возвращает Connection, а ds это DataSource. Мне в этом методе и нужен Connection, зачем тогда возвращать DataSource? а... это я очепятался...с кем не бывает ЗашедшийА, да - присваивать полю класса null не обязательно, все поля-референсы и так им инициализируются. точно, не заметил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 16:27:18 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34440584&tid=2146157]: |
0ms |
get settings: |
15ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 283ms |
| total: | 404ms |

| 0 / 0 |
