diff --git a/.gitignore b/.gitignore index 3e3f4c3..d47bc92 100644 --- a/.gitignore +++ b/.gitignore @@ -33,10 +33,6 @@ out/ /nbdist/ /.nb-gradle/ -### VS Code ### -.vscode/ - ### 설정 파일 src/main/resources/profiles src/main/resources/application* - diff --git a/build.gradle b/build.gradle index 000f33e..2ca4767 100644 --- a/build.gradle +++ b/build.gradle @@ -1,11 +1,3 @@ -/** - * build.gradle - * - * @author jy - * @version 1.0, dependency 추가 - * @see None - */ - plugins { id 'org.springframework.boot' version '2.4.3' id 'io.spring.dependency-management' version '1.0.11.RELEASE' @@ -27,11 +19,19 @@ repositories { } ext.profile = (!project.hasProperty('profile') || !profile) ? 'local' : profile + sourceSets { main { resources { srcDirs("src/main/resources", "src/main/resources/profiles") } + java { + exclude 'com/sriracha/ChuibboServer/common/config/AmazonS3Config.java' + exclude 'com/sriracha/ChuibboServer/service/resumePhoto/S3Uploader.java' + exclude 'com/sriracha/ChuibboServer/service/resumePhoto/ResumePhotoService.java' + exclude 'com/sriracha/ChuibboServer/controller/resumePhoto/ResumePhotoApiController.java' + exclude 'com/' + } } } @@ -81,7 +81,7 @@ dependencies { implementation 'io.springfox:springfox-swagger-ui:2.9.2' // jy: AmazonS3 - compile 'org.springframework.cloud:spring-cloud-starter-aws:2.0.1.RELEASE' +// compile 'org.springframework.cloud:spring-cloud-starter-aws:2.0.1.RELEASE' // jy: multipart file compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/Area.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/Area.java index 5d53ad5..9350c5f 100644 --- a/src/main/java/com/sriracha/ChuibboServer/model/entity/Area.java +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/Area.java @@ -1,8 +1,12 @@ package com.sriracha.ChuibboServer.model.entity; -import lombok.*; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; import javax.persistence.*; +import java.util.List; @Getter @AllArgsConstructor @@ -17,4 +21,7 @@ public class Area { private Long id; private String area; + + @OneToMany(mappedBy = "area") + private List jobPostHasAreas; } \ No newline at end of file diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/CareerType.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/CareerType.java index 4df1420..0d51794 100644 --- a/src/main/java/com/sriracha/ChuibboServer/model/entity/CareerType.java +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/CareerType.java @@ -6,6 +6,7 @@ import lombok.NoArgsConstructor; import javax.persistence.*; +import java.util.List; @Getter @AllArgsConstructor @@ -20,4 +21,7 @@ public class CareerType { private Long id; private String career_type; + + @OneToMany(mappedBy = "careerType") + private List jobPostHasCareerTypes; } \ No newline at end of file diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/Job.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/Job.java index 344ad76..dce1f0a 100644 --- a/src/main/java/com/sriracha/ChuibboServer/model/entity/Job.java +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/Job.java @@ -6,6 +6,7 @@ import lombok.NoArgsConstructor; import javax.persistence.*; +import java.util.List; @Getter @AllArgsConstructor @@ -21,4 +22,7 @@ public class Job { private String jobType; + @OneToMany(mappedBy = "job") + private List jobPostHasJobs; + } diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPost.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPost.java index 66ba324..7349caf 100644 --- a/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPost.java +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPost.java @@ -12,7 +12,6 @@ import javax.persistence.*; import java.time.LocalDateTime; -import java.util.ArrayList; import java.util.List; @Getter @@ -38,30 +37,21 @@ public class JobPost { private String descriptionUrl; + @OneToMany(mappedBy = "jobPost") + private List jobPostHasAreas; + + @OneToMany(mappedBy = "jobPost") + private List jobPostHasJobs; + + @OneToMany(mappedBy = "jobPost") + private List jobPostHasCareerTypes; + @Column(name = "startdate") private LocalDateTime startDate; @Column(name = "enddate") private LocalDateTime endDate; - @ManyToMany - @JoinTable(name = "job_post_has_area", - joinColumns = @JoinColumn(name="job_post_id"), - inverseJoinColumns = @JoinColumn(name = "area_id")) - private List areas = new ArrayList(); - - @ManyToMany - @JoinTable(name = "job_post_has_job", - joinColumns = @JoinColumn(name="job_post_id"), - inverseJoinColumns = @JoinColumn(name = "job_id")) - private List jobs = new ArrayList(); - - @ManyToMany - @JoinTable(name = "job_post_has_career_type", - joinColumns = @JoinColumn(name="job_post_id"), - inverseJoinColumns = @JoinColumn(name = "career_type_id")) - private List careerTypes = new ArrayList(); - @CreatedDate private LocalDateTime createdAt; diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasArea.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasArea.java new file mode 100644 index 0000000..8ecee1e --- /dev/null +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasArea.java @@ -0,0 +1,27 @@ +package com.sriracha.ChuibboServer.model.entity; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@AllArgsConstructor +@NoArgsConstructor +@Entity +@Builder +public class JobPostHasArea implements Serializable { + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "job_post_id") + private JobPost jobPost; + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "area_id") + private Area area; +} diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasCareerType.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasCareerType.java new file mode 100644 index 0000000..ff742a8 --- /dev/null +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasCareerType.java @@ -0,0 +1,28 @@ +package com.sriracha.ChuibboServer.model.entity; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@AllArgsConstructor +@NoArgsConstructor +@Entity +@Builder +public class JobPostHasCareerType implements Serializable { + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "job_post_id") + private JobPost jobPost; + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "career_type_id") + private CareerType careerType; + +} diff --git a/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasJob.java b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasJob.java new file mode 100644 index 0000000..59dde64 --- /dev/null +++ b/src/main/java/com/sriracha/ChuibboServer/model/entity/JobPostHasJob.java @@ -0,0 +1,27 @@ +package com.sriracha.ChuibboServer.model.entity; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@AllArgsConstructor +@NoArgsConstructor +@Entity +@Builder +public class JobPostHasJob implements Serializable { + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "job_post_id") + private JobPost jobPost; + + @Id + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "job_id") + private Job job; +}