Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Ликбез Hibernate / 11 сообщений из 11, страница 1 из 1
07.10.2015, 20:39
    #39071235
slavik_msc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
Имеется таблица Book с полями
Id,author_id,name
И таблица Author с полями
id,name

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


Заранее всем спасибо!
...
Рейтинг: 0 / 0
07.10.2015, 22:03
    #39071304
no56892
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
@ManyToMany, самому можно не создавать 3ю таблицу - хибернейт сгенерит (хотя я создаю сам всегда)))
...
Рейтинг: 0 / 0
08.10.2015, 08:29
    #39071461
slavik_msc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
no56892,

А по конкретнее с параметрами можно а то весь запутался.

Заранее спасибо
...
Рейтинг: 0 / 0
08.10.2015, 09:04
    #39071480
slavik_msc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
Класс Book
Код: 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.
@Entity
@Table(name="book")
public class Book implements Serializable {
	@Id
	@Column(name="id")
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int id;
	
	@Column(name="name")
	private String name;
	
	
	private Author author;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@ManyToOne(cascade=CascadeType.ALL)
	@JoinTable(name="author",joinColumns=@JoinColumn(name="id"),inverseJoinColumns=@JoinColumn(name="author_id"))
	public Author getAuthor() {
		return author;
	}

	public void setAuthor(Author author) {
		this.author = author;
	}

}



Класс Author
Код: 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.
@Entity
@Table(name="author")
public class Author {

	@Id
	@Column(name="id")
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int id;
	
	@Column(name="name")
	private String name;


	
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}



Выскакивает ошибка Could not determine type for: dao.objects.Author, at table: book, for columns: [org.hibernate.mapping.Column(author)]
...
Рейтинг: 0 / 0
08.10.2015, 09:26
    #39071503
wvetal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
slavik_msc,

А у каждой книги предполагается только один автор?
...
Рейтинг: 0 / 0
08.10.2015, 09:39
    #39071530
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
slavik_mscА по конкретнее с параметрами можно а то весь запутался.
советую 3 отношений изучать не методом тыка, а взятьготовый работающий пример и его разобрать.
Тут их есть.
...
Рейтинг: 0 / 0
08.10.2015, 09:42
    #39071535
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
slavik_msc,

Вы бы мануал осилили для начала. Во-первых там есть всё. Во-вторых оно даже с примерами.
https://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html/ch08.html
...
Рейтинг: 0 / 0
08.10.2015, 09:52
    #39071549
slavik_msc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
wvetal,

Здесь такое допущение.
...
Рейтинг: 0 / 0
08.10.2015, 11:21
    #39071692
wvetal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
slavik_mscwvetal,

Здесь такое допущение.
YouTube Video
...
Рейтинг: 0 / 0
15.10.2015, 15:28
    #39077762
slavik_msc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
Еще такой вопрос а все поля таблицы нужно описывать в классе сущности или как?

а то есть допустим в таблице 70 полей половина из них обновляется по триггерам,
и как то класс из 70 полей не охота делать
...
Рейтинг: 0 / 0
15.10.2015, 15:37
    #39077776
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ликбез Hibernate
slavik_mscЕще такой вопрос а все поля таблицы нужно описывать в классе сущности или как?
Нет, не обязательно.

slavik_mscа то есть допустим в таблице 70 полей половина из них обновляется по триггерам,
и как то класс из 70 полей не охота делать
Триггеры бывают разные. Если эти поля вычисляются из остальных полей записи, то без проблем.
А если триггеры срабатвают по другим событиям, то возникает неоднозначность.

Можно не мапить, можно разбить и замапить на Embedded сущность, можно объявить поля высисляемыми и т.п.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Ликбез Hibernate / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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