Skip to content

Commit 949d3d9

Browse files
authored
refactor: 잘못 설정되었던 테이블 간 연관 관계 재설정 (#622)
* refactor: home_university와 university_info_for_apply가 FK 관계를 가지도록 * chore: FK 변경에 따른 목데이터 수정 * test: 테스트 픽스터 수정
1 parent 151dacf commit 949d3d9

6 files changed

Lines changed: 36 additions & 27 deletions

File tree

src/main/java/com/example/solidconnection/university/domain/HostUniversity.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,7 @@
88
import jakarta.persistence.GeneratedValue;
99
import jakarta.persistence.GenerationType;
1010
import jakarta.persistence.Id;
11-
import jakarta.persistence.FetchType;
1211
import jakarta.persistence.ManyToOne;
13-
import jakarta.persistence.Table;
1412
import lombok.AccessLevel;
1513
import lombok.AllArgsConstructor;
1614
import lombok.Getter;
@@ -58,7 +56,4 @@ public class HostUniversity extends BaseEntity {
5856

5957
@ManyToOne
6058
private Region region;
61-
62-
@ManyToOne(fetch = FetchType.LAZY)
63-
private HomeUniversity homeUniversity;
6459
}

src/main/java/com/example/solidconnection/university/domain/UnivApplyInfo.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ public class UnivApplyInfo extends BaseEntity {
3636
@Column(nullable = false, name = "term_id")
3737
private long termId;
3838

39+
@Column(name = "home_university_id")
40+
private Long homeUniversityId;
41+
3942
@Column(nullable = false, length = 100)
4043
private String koreanName;
4144

src/main/resources/data.sql

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -50,100 +50,100 @@ VALUES ('test@test.email', 'yonso', 'https://github.com/nayonsoso.png',
5050

5151
INSERT INTO home_university (id, name) VALUES (1, '인하대학교');
5252

53-
INSERT INTO host_university(id, home_university_id, country_code, region_code, english_name, format_name, korean_name,
53+
INSERT INTO host_university(id, country_code, region_code, english_name, format_name, korean_name,
5454
accommodation_url, english_course_url, homepage_url,
5555
details_for_local, logo_image_url, background_image_url)
56-
VALUES (1, 1, 'US', 'AMERICAS', 'University of Guam', 'university_of_guam', '괌대학',
56+
VALUES (1, 'US', 'AMERICAS', 'University of Guam', 'university_of_guam', '괌대학',
5757
'https://www.uog.edu/life-at-uog/residence-halls/', 'https://www.uog.edu/admissions/course-schedule',
5858
'https://www.uog.edu/admissions/international-students', NULL,
5959
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_guam/logo.png',
6060
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_guam/1.png'),
61-
(2, 1, 'US', 'AMERICAS', 'University of Nevada, Las Vegas', 'university_of_nevada_las_vegas', '네바다주립대학 라스베이거스',
61+
(2, 'US', 'AMERICAS', 'University of Nevada, Las Vegas', 'university_of_nevada_las_vegas', '네바다주립대학 라스베이거스',
6262
'https://www.unlv.edu/housing', 'https://www.unlv.edu/engineering/academic-programs',
6363
'https://www.unlv.edu/engineering/eip', NULL,
6464
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_nevada_las_vegas/logo.png',
6565
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_nevada_las_vegas/1.png'),
66-
(3, 1, 'CA', 'AMERICAS', 'Memorial University of Newfoundland St. John''s',
66+
(3, 'CA', 'AMERICAS', 'Memorial University of Newfoundland St. John''s',
6767
'memorial_university_of_newfoundland_st_johns', '메모리얼 대학 세인트존스', 'https://www.mun.ca/residences/',
6868
'https://www.mun.ca/regoff/registration-and-final-exams/course-offerings/',
6969
'https://mun.ca/goabroad/visiting-students-inbound/', NULL,
7070
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/memorial_university_of_newfoundland_st_johns/logo.png',
7171
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/memorial_university_of_newfoundland_st_johns/1.png'),
72-
(4, 1, 'AU', 'AMERICAS', 'University of Southern Queensland', 'university_of_southern_queensland', '서던퀸스랜드대학',
72+
(4, 'AU', 'AMERICAS', 'University of Southern Queensland', 'university_of_southern_queensland', '서던퀸스랜드대학',
7373
'https://www.unisq.edu.au/current-students/support/accommodation',
7474
'https://www.unisq.edu.au/course/specification/current/',
7575
'https://www.unisq.edu.au/international/partnerships/study-abroad-exchange', NULL,
7676
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_southern_queensland/logo.png',
7777
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_southern_queensland/1.png'),
78-
(5, 1, 'AU', 'AMERICAS', 'University of Sydney', 'university_of_sydney', '시드니대학',
78+
(5, 'AU', 'AMERICAS', 'University of Sydney', 'university_of_sydney', '시드니대학',
7979
'https://www.sydney.edu.au/study/accommodation.html', 'www.sydney.edu.au/sydney-abroad-units',
8080
'https://www.sydney.edu.au/', NULL,
8181
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_sydney/logo.png',
8282
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_sydney/1.png'),
83-
(6, 1, 'AU', 'AMERICAS', 'Curtin University', 'curtin_university', '커틴대학',
83+
(6, 'AU', 'AMERICAS', 'Curtin University', 'curtin_university', '커틴대학',
8484
'https://www.curtin.edu.au/study/campus-life/accommodation/#perth', 'https://handbook.curtin.edu.au/',
8585
'https://www.curtin.edu.au/', NULL,
8686
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/curtin_university/logo.png',
8787
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/curtin_university/1.png'),
88-
(7, 1, 'DK', 'EUROPE', 'University of Southern Denmark', 'university_of_southern_denmark', '서던덴마크대학교',
88+
(7, 'DK', 'EUROPE', 'University of Southern Denmark', 'university_of_southern_denmark', '서던덴마크대학교',
8989
'https://www.sdu.dk/en/uddannelse/information_for_international_students/studenthousing',
9090
'https://www.sdu.dk/en/uddannelse/exchange_programmes', 'https://www.sdu.dk/en', NULL,
9191
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_southern_denmark/logo.png',
9292
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_southern_denmark/1.png'),
93-
(8, 1, 'DK', 'EUROPE', 'IT University of Copenhagen', 'it_university_of_copenhagen', '코펜하겐 IT대학',
93+
(8, 'DK', 'EUROPE', 'IT University of Copenhagen', 'it_university_of_copenhagen', '코펜하겐 IT대학',
9494
'https://en.itu.dk/Programmes/Student-Life/Practical-information-for-international-students',
9595
'https://en.itu.dk/Programmes/Exchange-students/Become-an-exchange-student-at-ITU',
9696
'https://en.itu.dk/programmes/exchange-students/become-an-exchange-student-at-itu', NULL,
9797
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/it_university_of_copenhagen/logo.png',
9898
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/it_university_of_copenhagen/1.png'),
99-
(9, 1, 'DE', 'EUROPE', 'Neu-Ulm University of Applied Sciences', 'neu-ulm_university_of_applied_sciences',
99+
(9, 'DE', 'EUROPE', 'Neu-Ulm University of Applied Sciences', 'neu-ulm_university_of_applied_sciences',
100100
'노이울름 대학',
101101
'https://www.hnu.de/fileadmin/user_upload/5_Internationales/International_Incomings/Bewerbung/Housing_Broschure.pdf',
102102
'https://www.hnu.de/en/international/international-exchange-students/courses-taught-in-english',
103103
'https://www.hnu.de/en/international', NULL,
104104
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/neu-ulm_university_of_applied_sciences/logo.png',
105105
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/neu-ulm_university_of_applied_sciences/1.png'),
106-
(10, 1, 'GB', 'EUROPE', 'University of Hull', 'university_of_hull', '헐대학',
106+
(10, 'GB', 'EUROPE', 'University of Hull', 'university_of_hull', '헐대학',
107107
'https://www.hull.ac.uk/Choose-Hull/Student-life/Accommodation/accommodation.aspx',
108108
'https://universityofhull.app.box.com/s/mpvulz3yz0uijdt68rybce19nek0d8eh',
109109
'https://www.hull.ac.uk/choose-hull/study-at-hull/need-to-know/key-dates', NULL,
110110
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_hull/logo.png',
111111
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_hull/1.png'),
112-
(11, 1, 'AT', 'EUROPE', 'University of Graz', 'university_of_graz', '그라츠 대학',
112+
(11, 'AT', 'EUROPE', 'University of Graz', 'university_of_graz', '그라츠 대학',
113113
'https://orientation.uni-graz.at/de/planning-the-arrival/accommodation/',
114114
'https://static.uni-graz.at/fileadmin/veranstaltungen/orientation/documents/incstud_application-courses.pdf',
115115
'https://www.uni-graz.at/en/', NULL,
116116
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_graz/logo.png',
117117
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_graz/1.png'),
118-
(12, 1, 'AT', 'EUROPE', 'Graz University of Technology', 'graz_university_of_technology', '그라츠공과대학',
118+
(12, 'AT', 'EUROPE', 'Graz University of Technology', 'graz_university_of_technology', '그라츠공과대학',
119119
'https://www.tugraz.at/en/studying-and-teaching/studying-internationally/incoming-students-exchange-at-tu-graz/your-stay-at-tu-graz/preparation#c75033',
120120
'https://tugraz.at/go/search-courses', 'https://www.tugraz.at/en/home', NULL,
121121
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/graz_university_of_technology/logo.png',
122122
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/graz_university_of_technology/1.png'),
123-
(13, 1, 'AT', 'EUROPE', 'Catholic Private University Linz', 'catholic_private_university_linz', '린츠 카톨릭 대학교', NULL,
123+
(13, 'AT', 'EUROPE', 'Catholic Private University Linz', 'catholic_private_university_linz', '린츠 카톨릭 대학교', NULL,
124124
'https://ku-linz.at/en/ku_international/incomings/kulis', 'https://ku-linz.at/en', NULL,
125125
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/catholic_private_university_linz/logo.png',
126126
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/catholic_private_university_linz/1.png'),
127-
(14, 1, 'AT', 'EUROPE', 'University of Applied Sciences Technikum Wien',
127+
(14, 'AT', 'EUROPE', 'University of Applied Sciences Technikum Wien',
128128
'university_of_applied_sciences_technikum_wien', '빈 공과대학교', NULL,
129129
'https://www.technikum-wien.at/en/international/student-mobility/',
130130
'https://www.technikum-wien.at/international/studierendenmobilitaet-2/', NULL,
131131
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_applied_sciences_technikum_wien/logo.png',
132132
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/university_of_applied_sciences_technikum_wien/1.png'),
133-
(15, 1, 'FR', 'EUROPE', 'IPSA', 'ipsa', 'IPSA', 'https://www.ipsa.fr/en/student-life/pratical-information/', NULL,
133+
(15, 'FR', 'EUROPE', 'IPSA', 'ipsa', 'IPSA', 'https://www.ipsa.fr/en/student-life/pratical-information/', NULL,
134134
'https://www.ipsa.fr/en/engineering-school/aeronautical-space', NULL,
135135
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/ipsa/logo.png',
136136
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/ipsa/1.png'),
137-
(16, 1, 'JP', 'ASIA', 'Meiji University', 'meiji_university', '메이지대학',
137+
(16, 'JP', 'ASIA', 'Meiji University', 'meiji_university', '메이지대학',
138138
'https://www.meiji.ac.jp/cip/english/admissions/co7mm90000000461-att/co7mm900000004fa.pdf', NULL,
139139
'https://www.meiji.ac.jp/cip/english/admissions/co7mm90000000461-att/co7mm900000004fa.pdf', NULL,
140140
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/meiji_university/logo.png',
141141
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/meiji_university/1.png'),
142-
(17, 1, 'JP', 'ASIA', 'BAIKA Women''s University', 'baika_womens_university', '바이카여자대학',
142+
(17, 'JP', 'ASIA', 'BAIKA Women''s University', 'baika_womens_university', '바이카여자대학',
143143
'https://dormy-ac.com/page/baika/', NULL, 'https://www.baika.ac.jp/english/', NULL,
144144
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/baika_womens_university/logo.png',
145145
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/baika_womens_university/1.png'),
146-
(18, 1, 'JP', 'ASIA', 'Bunkyo Gakuin University', 'bunkyo_gakuin_university', '분쿄가쿠인대학', NULL, NULL,
146+
(18, 'JP', 'ASIA', 'Bunkyo Gakuin University', 'bunkyo_gakuin_university', '분쿄가쿠인대학', NULL, NULL,
147147
'https://www.bgu.ac.jp/', NULL,
148148
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/bunkyo_gakuin_university/logo.png',
149149
'https://solid-connection.s3.ap-northeast-2.amazonaws.com/original/bunkyo_gakuin_university/1.png');
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
ALTER TABLE host_university
2+
DROP FOREIGN KEY fk_host_university_home_university;
3+
4+
ALTER TABLE host_university
5+
DROP COLUMN home_university_id;
6+
7+
ALTER TABLE university_info_for_apply
8+
ADD COLUMN home_university_id BIGINT NULL;
9+
10+
ALTER TABLE university_info_for_apply
11+
ADD CONSTRAINT fk_university_info_for_apply_home_university
12+
FOREIGN KEY (home_university_id) REFERENCES home_university (id) ON DELETE NO ACTION;

src/test/java/com/example/solidconnection/university/fixture/UnivApplyInfoFixtureBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public UnivApplyInfoFixtureBuilder university(HostUniversity university) {
4141

4242
public UnivApplyInfo create() {
4343
UnivApplyInfo univApplyInfo = new UnivApplyInfo(
44-
null, termId, koreanName, 1, HOME_UNIVERSITY_PAYMENT, ONE_SEMESTER,
44+
null, termId, null, koreanName, 1, HOME_UNIVERSITY_PAYMENT, ONE_SEMESTER,
4545
"1", "detailsForLanguage", "gpaRequirement",
4646
"gpaRequirementCriteria", "detailsForApply", "detailsForMajor",
4747
"detailsForAccommodation", "detailsForEnglishCourse", "details",

src/test/java/com/example/solidconnection/university/fixture/UniversityFixtureBuilder.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,7 @@ public HostUniversity create() {
5151
"https://accommodation-url",
5252
"https://logo-image-url",
5353
"https://background-image-url",
54-
null, country, region,
55-
null
54+
null, country, region
5655
);
5756
return hostUniversityRepository.save(university);
5857
}

0 commit comments

Comments
 (0)