Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Java EE (J2EE)

Войти
Регистрация
Восстановить пароль
 
Alradalion
96 / 96 / 44
Регистрация: 13.09.2013
Сообщений: 385
#1

Hibernate - Java EE

16.12.2016, 14:49. Просмотров 258. Ответов 7
Метки нет (Все метки)

Написал я конфигурацию, написал Entity Book и Author и Repository к ним.
И решил написать класс Library

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Component
public class LibraryImpl implements Library {
 
ConfigurableApplicationContext ctx = new AnnotationConfigApplicationContext(MainConfig.class);
 
final AuthorRepo authorRepo = ctx.getBean(AuthorRepo.class);
final BookRepo authorRepo = ctx.getBean(BookRepo.class);
 
//    @Autowired
//    private BookRepo bookRepo;
 
public void addBook(Book book) {
Book savedBook = bookRepo.saveAndFlush(book);
}
И все бы хорошо, но как-то
Java
1
2
3
4
ConfigurableApplicationContext ctx = new AnnotationConfigApplicationContext(MainConfig.class);
 
final AuthorRepo authorRepo = ctx.getBean(AuthorRepo.class);
final Book Repo authorRepo = ctx.getBean(Book Repo.class);
Сильно смущает в классе. А если вынести в бин, он его не подхватывает. И вообще не уверен, что можно вынести в бин

И можно ли это вообще будет в майне запустить, как
Library library = new LibraryImpl();
library.saveBook(new Book());
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2016, 14:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Hibernate (Java EE):

Hibernate Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister - Java EE
Доброго времени суток. Сталкиваюсь со всякими ошибками при добавлении данных в свою mysql бд. Вот код ошибки Exception in thread...

Hibernate - Java EE
Здравствуйте Только начал изучать hibernate но уже столкнулся со шквалом ошибок конфигурации, то библиотека не та,то c конфигурацией...

hibernate - Java EE
погуглил в нете, а тоолковой статьи так и не нашел м.б. подскажете чтонить с примерами и описанием для нубов?) тестовые задачи были бы...

Spring + Hibernate - Java EE
Во многих статьях, где описывается пример Spring MVC + Hibernate описывается @Service На пример: public interface ContactDAO { ...

ManyToOne in Hibernate - Java EE
Здравствуйте. Помогите решить проблему... Я питаюсь реализовать связь в своем проект "ManytoOne". Коротко опишу функционал: есть...

Hibernate транзакции - Java EE
Всем привет. Пытаюсь сделать транзакцию для своего сервера, но что-то не получается. Перелопатил кучу примеров и документации и всеравно не...

7
neske
1499 / 866 / 84
Регистрация: 26.03.2010
Сообщений: 2,974
16.12.2016, 15:01 #2
Цитата Сообщение от Alradalion Посмотреть сообщение
И можно ли это вообще будет в майне запустить, как
Library library = new LibraryImpl();
Такие вопросы появляются от непонимания того, что вы используете. Прочтите подробнее про аннотацию Component. А заодно и про dependency inejction.

Добавлено через 3 минуты
Цитата Сообщение от Alradalion Посмотреть сообщение
@Component
Этим самым вы сказали контейнеру, чтобы он управлял жизненным циклом этого класса. Так что вы не вправе создавать новый инстанс сами, но зато вы вполне можете запросить у контейнера нужный инстанс.
0
Alradalion
96 / 96 / 44
Регистрация: 13.09.2013
Сообщений: 385
16.12.2016, 16:09  [ТС] #3
neske, да, для меня это пока легкая магия...
Я правильно понимаю, что мне надо написать что-то вроде:
Java
1
2
3
4
5
6
7
8
9
10
11
12
@Component
public class LibraryImpl implements Library {
 
@Autowired
private BookRepo bookRepo;
 
@Autowired
private AuthorRepo authorRepo;
 
public void addBook(Book book) {
Book savedBook = bookRepo.saveAndFlush(book);
}
А в main
Java
1
2
3
4
5
6
public class Application {
    public static void main(String[] args) {
    ConfigurableApplicationContext ctx = new AnnotationConfigApplicationContext(MainConfig.class);
    Library a= ctx.getBean(Library.class);
    }
}
0
neske
1499 / 866 / 84
Регистрация: 26.03.2010
Сообщений: 2,974
16.12.2016, 16:39 #4
Цитата Сообщение от Alradalion Посмотреть сообщение
мне надо написать что-то вроде:
да, именно так.

Почитайте "Spring 4 для профессионалов". Там уже в начале разбирается, как работать с контекстом в standalone приложениях.
0
Alradalion
96 / 96 / 44
Регистрация: 13.09.2013
Сообщений: 385
16.12.2016, 17:03  [ТС] #5
Цитата Сообщение от neske Посмотреть сообщение
Почитайте "Spring 4 для профессионалов". Там уже в начале разбирается, как работать с контекстом в standalone приложениях.
Спасибо, почитаю.
Еще вопрос, мне, получается, надо создать бин
Java
1
2
3
4
  @Bean
    Library library() {
        return new LibraryImpl();
    }
И проблема в том, что LibraryImpl имеет конструктор, в который передается id
0
neske
1499 / 866 / 84
Регистрация: 26.03.2010
Сообщений: 2,974
16.12.2016, 17:09 #6
Цитата Сообщение от Alradalion Посмотреть сообщение
Еще вопрос, мне, получается, надо создать бин
не нужно, его созданием займется контейнер

Цитата Сообщение от Alradalion Посмотреть сообщение
И проблема в том, что LibraryImpl имеет конструктор, в который передается id
это уже вы неправильно спроектировали)
0
Alradalion
96 / 96 / 44
Регистрация: 13.09.2013
Сообщений: 385
16.12.2016, 17:18  [ТС] #7
Цитата Сообщение от neske Посмотреть сообщение
не нужно, его созданием займется контейнер
У меня тогда возникает ошибка No qualifying bean of type [com.my.Library] is defined
0
neske
1499 / 866 / 84
Регистрация: 26.03.2010
Сообщений: 2,974
16.12.2016, 17:25 #8
Цитата Сообщение от Alradalion Посмотреть сообщение
У меня тогда возникает ошибка No qualifying bean of type [com.my.Library] is defined
Очевидно какая-то ошибка в конфигурации. Гляньте аналогичные примеры в интернете, их море
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2016, 17:25
Привет! Вот еще темы с ответами:

Hibernate validator - Java EE
Доброе время суток!) можно ли на Hibernate validator делать валидацию сразу 2-вух моделей? есть модели для валидации User и UserAdd, ...

Косяк с hibernate - Java EE
Добрый день,сейчас появилась очень странная ошибка(а может и нет). Собственно,сделал небольшую программу,использующую hibernate. Всего...

GlassFish + Hibernate - Java EE
Доброго времени суток. Такая проблема, есть проект на jsf используя PrimeFaces. Для работы с базой использую Hibernate. Проблем в том,...

Hibernate и коллекции - Java EE
Разбираюсь с Hibernate. Возникла сложность : есть у меня Task и TaskList . Мне нужно с TaskList-а получить список Task-ов . Не могу понять...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
16.12.2016, 17:25
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru