powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Инжектить коннект к базе в контроллер Spring
8 сообщений из 8, страница 1 из 1
Инжектить коннект к базе в контроллер Spring
    #38554809
Фотография многоразовый клон 26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Друзья, использую Active JDBC. Кто знает, подскажите, как можно в контроллер Спринга инжектить соединение, созданное в отдельном классе?

То есть я хочу получить внутри метода контроллера уже приготовленный для использования объект. Возможно ли это ?
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38554835
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
многоразовый клон 26,
Покажи как создал
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38554850
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вероятно bean scope protototype надо использовать. А какие сложности возникли?
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38555059
Фотография многоразовый клон 26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВероятно bean scope protototype надо использовать. А какие сложности возникли?

спасибо ответившим, я просто не знаю, где найти пример
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38555115
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
многоразовый клон 26,
15541865
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38565473
Фотография многоразовый клон 26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возникла проблема с инжектом, заключающаяся в том, что в член класса спрингового контроллера инжектился объект activejdbc. Затем в @PostConstruct открывался коннект к базе.

Так вот, при вызове метода контроллера по запросу браузера, коннект, почему-то, оказывался пустой, хотя в методе с @PostConstruct он открыт - я проверил, выполнив запрос к БД.

Мучился-мучился, так и не нашел решение, конверчу проект для работы с хибернейтом.
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38565479
Фотография многоразовый клон 26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
инжектил таким образом:


Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
package com.shogol.core.db;

import org.javalite.activejdbc.Base;
import org.springframework.stereotype.Repository;

@Repository
public class Connection implements IConnection {

    @Override
    public void open()
    {
        Base.open("com.mysql.jdbc.Driver", "jdbc:mysql://localhost/shogol_angular", "root", "");
    }

    @Override
    public void close()
    {
        Base.close();
    }

}




Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
package com.shogol.web.backend.controller;

import com.shogol.core.db.Connection;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import org.javalite.activejdbc.LazyList;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;

@Controller("User")
public class User {
    
    @Autowired
    protected Connection dbConnection;

    protected int perPage = 30;

    @RequestMapping("/backend/com.shogol.web.backend.controller.User/list/page/{page}")
    @ResponseBody
    public String list(@PathVariable("page") long page)
    {

        // вот здесь возникала ошибка, что коннекта нет //////////////////////////////////////
        LazyList<com.shogol.core.model.User> users = com.shogol.core.model.User.findAll().limit(perPage).offset(perPage * page);
    
        String json = users.toJson(true);

        return json;
    }

    @PostConstruct
    public void openConnection()
    {
        dbConnection.open();
    }

    @PreDestroy
    public void closeConnection()
    {
        dbConnection.close();
    }

}
...
Рейтинг: 0 / 0
Инжектить коннект к базе в контроллер Spring
    #38565482
Фотография многоразовый клон 26
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, если вот так написать, то все работает

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
        
    @PostConstruct
    public void openConnection()
    {
        dbConnection.open();
        
        LazyList<com.shogol.core.model.User> users = com.shogol.core.model.User.findAll().limit(perPage).offset(perPage * page);
    }
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Инжектить коннект к базе в контроллер Spring
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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