С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
-2 / 0 / 1
Регистрация: 01.11.2015
Сообщений: 120
1

Как сделать связи между таблицами, используя Hibernate

18.01.2018, 02:12. Показов 1266. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сделал проект, Maven пользуюсь Hibernate, как сказать пользуюсь учусь. Я не могу понять правельно ли связал 2 таблицы. И как мне связать больше таблиць.
У меня есть одна основная таблица "Guests" которою нужно связать еще с 6-ю таблица. Я решил попробывать и связал пока что только основную "Guests" с другой таблицей. Можете посмотреть правельно ли. И подсказать как связать остальные. Буду очень благодарен. Заранее Благодарю.
Код с таблицами ниже вставлю.

Первая таблица основная "Guests" к которой мне нужно подсоеденить еще 6. Пока попробывал связать одну маленькую.

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
package com.honchar.springmvc.model;
 
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;
import javax.validation.constraints.NotNull;
 
 
@Entity
@Table(name="GUESTS", catalog = "springmvc", uniqueConstraints = {
        @UniqueConstraint(columnNames = "Surname"),
        @UniqueConstraint(columnNames = "Name")})
public class Guests{
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "GUEST_ID")
    private long id;
    
    @Column(name = "SURNAME")
    private String surname;
    
    @Column(name = "NAME")
    private String name;
    
    /*@Column(name = "TYPE_ROOM")
    private String type_rooms;*/
    
    @Column(name = "NUMBER_ROOM")
    private int number_room;
    
    @Column(name = "ADDITIONA_SERVICES")
    private String additionalServices;
    
    @Column(name = "SPENDING_TYPES")
    private String spendingTypes;
    
    @Column(name = "NUMBER_PHONE")
    private int number_phone;
    
    @Temporal(TemporalType.DATE)
    @Column(name = "DATE" )
    private Date date;
    
    @ManyToOne(optional = false)
    @JoinColumn(name ="TYPE_ROOMS")
    private types_of_rooms type_rooms;
    
    public Guests() {
        
    }
    
    public Guests(String surname, String name, int number_room, 
            String additionalServices, String spendingTypes, int number_phone, Date date) {
        this.surname = surname;
        this.name = name;
        this.number_room = number_room;
        this.additionalServices = additionalServices; 
        this.spendingTypes = spendingTypes;
        this.number_phone = number_phone;
        this.date = date;
    }
    
    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    
    public String getSurname() {
        return surname;
    }
    public void setSurname(String surname) {
        this.surname = surname;
    }
    
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name =  name;
    }
    
    public int getNumber_room() {
        return number_room;
    }
    public void setNumber_room(int number_room) {
        this.number_room = number_room;
    }
    
    public String getAdditionalServices() {
        return additionalServices;
    }
    public void setAdditionalServices(String additionalServices) {
        this.additionalServices = additionalServices;
    }
        
    public String getSpendingTypes() {
        return spendingTypes;
    }
    public void setSpendingType(String spendingTypes) {
        this.spendingTypes =  spendingTypes;
    }
    
    public Date getDate() {
        return date;
    }
    public void setDate(Date date) {
        this.date =  date;
    }
    
    public types_of_rooms getType_rooms() {
        return type_rooms;
    }
    public void setType_rooms(types_of_rooms type_rooms) {
        this.type_rooms = type_rooms;
    }
    
    @Override
    public String toString(){
        return "Guests [id=" + id +", surname=" + surname + ", name=" + name + 
                ", number_room=" + number_room + ",additionalServices=" + additionalServices + 
                ", spendingTypes=" + spendingTypes+ ", date=" + date + "]";
    }
    
}

Второя таблица доп которую я хочу связать с основной "type_of_rooms"


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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package com.honchar.springmvc.model;
 
import java.util.List;
import javax.persistence.*;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
 
 
@Entity
@Table(name = "TYPES_OF_ROOMS",catalog = "springmvc")
public class types_of_rooms {
    
    @Id
    @GeneratedValue (strategy = GenerationType.AUTO)
    @Column(name = "ROOMS_ID")
    private long id;
    
    @Column(name = "TYPE_ROOMS")
    private String type_rooms;
 
    @OneToMany(mappedBy = "types_of_rooms", cascade = CascadeType.ALL)
    private List<Guests> guests;
 
    public types_of_rooms() {
        
    }
    
    public types_of_rooms(String type_rooms) {
        this.type_rooms = type_rooms;
    }
    
    public long getId() {
        return id;
    }
    
    public void setID (long id) {
        this.id =  id;
    }
    
    public String getType_rooms() {
        return type_rooms;
    }
    
    public void setType_rooms(String type_rooms) {
        this.type_rooms = type_rooms;
    }
 
    public List<Guests> getGuests(){
        return guests;
    }
    public void setGuests(List<Guests> guests) {
           this.guests = guests;
        }
    
    @Override
    public String toString() {
        return "types_of_rooms [id=" + id + ", type_rooms = " + type_rooms +"]";
    }
}
Посмотрите правильно ли я связать даные таблицы. Если неправильно, подскажите где нужно исправить. Спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.01.2018, 02:12
Ответы с готовыми решениями:

Создание связи между двумя таблицами MS Access, используя ADOQuery
Здравствуйте! У меня в Access есть две связанные между собой таблицы. Я в Delphi вставила три...

Наладить связи между практически одинаковыми таблицами таблицами
Помогите пожалуйста со следующей затыкой. Выбираю &quot;Схема данных&quot;. Там открыты три таблицы. Одна...

Как устанавливать связи между таблицами
У меня есть три таблицы: autor, bibl, izdanie. на картинках показываю их структуры, но я непонимаю...

Связи между таблицами, как настроить ?
Создал 2 таблицы. Задание - Таблица Места Работы содержит данные о послужном списке людей из...

2
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
18.01.2018, 06:21 2
А запустить и посмотреть, как это работает никак?
0
-2 / 0 / 1
Регистрация: 01.11.2015
Сообщений: 120
18.01.2018, 16:05  [ТС] 3
Я просто использовал вот эту сборку http://websystique.com/springm... notations/ которую мне преподаватель скинул переделал под себя немного. И когда я запускаю сервер у меня одна и таже странице с теми же данными.
Как сделать связи между таблицами, используя Hibernate


Вот поэтому я и немогу понять.
Вот моя БД фото

Название: 1212.JPG
Просмотров: 17

Размер: 20.5 Кб

Вот весь мой проект
SpringHibernateExample1.rar
0
18.01.2018, 16:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2018, 16:05
Помогаю со студенческими работами здесь

Как расставить связи между таблицами
Как расставить связи между таблицами, с этим что-то вообще ни как. Описание БД: База, на нее...

Как установить связи между InnoDB таблицами?
1) Как установить связи между InnoDB таблицами с помощью sql запроса? Допустим у есть два поля...

Как создать запрос на создание связи 1:1 между таблицами?
Задание такое, нужно сделать так, чтобы между табл Сотрудник и МатОтветственный была связь 1:1 А...

Как создать связи между таблицами и вывести их RedBean
Доброго времени суток, форумчане. Прошу Вас оказать помощь, объясните мне, на примере: Имеется БД...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru