Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
15 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 34 additions & 9 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ description = 'Spring_Boot_A'

java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
languageVersion = JavaLanguageVersion.of(21)
}
}

Expand All @@ -25,20 +25,45 @@ repositories {
}

dependencies {
// --- Jakarta Validation ---
implementation 'jakarta.validation:jakarta.validation-api:3.0.2'
implementation 'org.hibernate.validator:hibernate-validator:8.0.1.Final'

// --- QueryDSL ---
/* ---------------------------------------------------------------
* Spring Boot Core
* --------------------------------------------------------------- */
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

/* ---------------------------------------------------------------
* Validation (Boot starter로 교체)
* --------------------------------------------------------------- */
implementation 'org.springframework.boot:spring-boot-starter-validation'

/* ---------------------------------------------------------------
* MySQL
* --------------------------------------------------------------- */
runtimeOnly 'com.mysql:mysql-connector-j'

/* ---------------------------------------------------------------
* QueryDSL (Jakarta 버전)
* --------------------------------------------------------------- */
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
annotationProcessor 'com.querydsl:querydsl-apt:5.0.0:jakarta'
annotationProcessor 'jakarta.annotation:jakarta.annotation-api:2.1.1'
annotationProcessor 'jakarta.persistence:jakarta.persistence-api:3.1.0'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
annotationProcessor 'jakarta.annotation:jakarta.annotation-api:2.1.1'

/* ---------------------------------------------------------------
* Lombok
* --------------------------------------------------------------- */
compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.mysql:mysql-connector-j'
annotationProcessor 'org.projectlombok:lombok'

/* ---------------------------------------------------------------
* Swagger (SpringDoc)
* --------------------------------------------------------------- */
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.13'

/* ---------------------------------------------------------------
* Test
* --------------------------------------------------------------- */
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
package com.example.spring_boot_a.domain.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.example.spring_boot_a.domain.entity.mission.Mission;
import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QStore is a Querydsl query type for Store
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QStore extends EntityPathBase<Store> {

private static final long serialVersionUID = 1205412615L;

private static final PathInits INITS = PathInits.DIRECT2;

public static final QStore store = new QStore("store");

public final StringPath detailAddress = createString("detailAddress");

public final com.example.spring_boot_a.domain.entity.etc.QLocation location;

public final NumberPath<Long> managerNumber = createNumber("managerNumber", Long.class);

public final SetPath<Mission, com.example.spring_boot_a.domain.entity.etc.QMission> missions = this.<Mission, com.example.spring_boot_a.domain.entity.etc.QMission>createSet("missions", Mission.class, com.example.spring_boot_a.domain.entity.etc.QMission.class, PathInits.DIRECT2);

public final StringPath name = createString("name");

public final SetPath<com.example.spring_boot_a.domain.entity.review.Review, com.example.spring_boot_a.domain.entity.review.QReview> reviews = this.<com.example.spring_boot_a.domain.entity.review.Review, com.example.spring_boot_a.domain.entity.review.QReview>createSet("reviews", com.example.spring_boot_a.domain.entity.review.Review.class, com.example.spring_boot_a.domain.entity.review.QReview.class, PathInits.DIRECT2);

public final NumberPath<Long> storeId = createNumber("storeId", Long.class);

public QStore(String variable) {
this(Store.class, forVariable(variable), INITS);
}

public QStore(Path<? extends Store> path) {
this(path.getType(), path.getMetadata(), PathInits.getFor(path.getMetadata(), INITS));
}

public QStore(PathMetadata metadata) {
this(metadata, PathInits.getFor(metadata, INITS));
}

public QStore(PathMetadata metadata, PathInits inits) {
this(Store.class, metadata, inits);
}

public QStore(Class<? extends Store> type, PathMetadata metadata, PathInits inits) {
super(type, metadata, inits);
this.location = inits.isInitialized("location") ? new com.example.spring_boot_a.domain.entity.etc.QLocation(forProperty("location")) : null;
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package com.example.spring_boot_a.domain.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QTerm is a Querydsl query type for Term
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QTerm extends EntityPathBase<Term> {

private static final long serialVersionUID = -653836922L;

public static final QTerm term = new QTerm("term");

public final EnumPath<com.example.spring_boot_a.domain.entity.enums.TermType> name = createEnum("name", com.example.spring_boot_a.domain.entity.enums.TermType.class);

public final NumberPath<Long> termId = createNumber("termId", Long.class);

public final SetPath<com.example.spring_boot_a.domain.entity.user.UserTerm, com.example.spring_boot_a.domain.entity.user.QUserTerm> userTerms = this.<com.example.spring_boot_a.domain.entity.user.UserTerm, com.example.spring_boot_a.domain.entity.user.QUserTerm>createSet("userTerms", com.example.spring_boot_a.domain.entity.user.UserTerm.class, com.example.spring_boot_a.domain.entity.user.QUserTerm.class, PathInits.DIRECT2);

public QTerm(String variable) {
super(Term.class, forVariable(variable));
}

public QTerm(Path<? extends Term> path) {
super(path.getType(), path.getMetadata());
}

public QTerm(PathMetadata metadata) {
super(Term.class, metadata);
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package com.example.spring_boot_a.domain.entity.etc;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QFood is a Querydsl query type for Food
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QFood extends EntityPathBase<Food> {

private static final long serialVersionUID = 1124304018L;

public static final QFood food = new QFood("food");

public final NumberPath<Long> foodId = createNumber("foodId", Long.class);

public final EnumPath<com.example.spring_boot_a.domain.entity.enums.FoodType> name = createEnum("name", com.example.spring_boot_a.domain.entity.enums.FoodType.class);

public final SetPath<com.example.spring_boot_a.domain.entity.user.UserFood, com.example.spring_boot_a.domain.entity.user.QUserFood> userFoods = this.<com.example.spring_boot_a.domain.entity.user.UserFood, com.example.spring_boot_a.domain.entity.user.QUserFood>createSet("userFoods", com.example.spring_boot_a.domain.entity.user.UserFood.class, com.example.spring_boot_a.domain.entity.user.QUserFood.class, PathInits.DIRECT2);

public QFood(String variable) {
super(Food.class, forVariable(variable));
}

public QFood(Path<? extends Food> path) {
super(path.getType(), path.getMetadata());
}

public QFood(PathMetadata metadata) {
super(Food.class, metadata);
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package com.example.spring_boot_a.domain.entity.etc;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QLocation is a Querydsl query type for Location
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QLocation extends EntityPathBase<Location> {

private static final long serialVersionUID = -1333535255L;

public static final QLocation location = new QLocation("location");

public final NumberPath<Long> locationId = createNumber("locationId", Long.class);

public final StringPath name = createString("name");

public final SetPath<com.example.spring_boot_a.domain.entity.Store, com.example.spring_boot_a.domain.entity.QStore> stores = this.<com.example.spring_boot_a.domain.entity.Store, com.example.spring_boot_a.domain.entity.QStore>createSet("stores", com.example.spring_boot_a.domain.entity.Store.class, com.example.spring_boot_a.domain.entity.QStore.class, PathInits.DIRECT2);

public QLocation(String variable) {
super(Location.class, forVariable(variable));
}

public QLocation(Path<? extends Location> path) {
super(path.getType(), path.getMetadata());
}

public QLocation(PathMetadata metadata) {
super(Location.class, metadata);
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
package com.example.spring_boot_a.domain.entity.etc;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.example.spring_boot_a.domain.entity.mission.Mission;
import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QMission is a Querydsl query type for Mission
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QMission extends EntityPathBase<Mission> {

private static final long serialVersionUID = -558912296L;

private static final PathInits INITS = PathInits.DIRECT2;

public static final QMission mission = new QMission("mission");

public final StringPath conditional = createString("conditional");

public final DateTimePath<java.time.Instant> createdAt = createDateTime("createdAt", java.time.Instant.class);

public final DatePath<java.time.LocalDate> deadline = createDate("deadline", java.time.LocalDate.class);

public final NumberPath<Long> missionId = createNumber("missionId", Long.class);

public final NumberPath<Integer> point = createNumber("point", Integer.class);

public final com.example.spring_boot_a.domain.entity.QStore store;

public final SetPath<com.example.spring_boot_a.domain.entity.user.UserMission, com.example.spring_boot_a.domain.entity.user.QUserMission> userMissions = this.<com.example.spring_boot_a.domain.entity.user.UserMission, com.example.spring_boot_a.domain.entity.user.QUserMission>createSet("userMissions", com.example.spring_boot_a.domain.entity.user.UserMission.class, com.example.spring_boot_a.domain.entity.user.QUserMission.class, PathInits.DIRECT2);

public QMission(String variable) {
this(Mission.class, forVariable(variable), INITS);
}

public QMission(Path<? extends Mission> path) {
this(path.getType(), path.getMetadata(), PathInits.getFor(path.getMetadata(), INITS));
}

public QMission(PathMetadata metadata) {
this(metadata, PathInits.getFor(metadata, INITS));
}

public QMission(PathMetadata metadata, PathInits inits) {
this(Mission.class, metadata, inits);
}

public QMission(Class<? extends Mission> type, PathMetadata metadata, PathInits inits) {
super(type, metadata, inits);
this.store = inits.isInitialized("store") ? new com.example.spring_boot_a.domain.entity.QStore(forProperty("store"), inits.get("store")) : null;
}

}

Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
package com.example.spring_boot_a.domain.entity.etc;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.dsl.*;

import com.querydsl.core.types.PathMetadata;
import javax.annotation.processing.Generated;
import com.querydsl.core.types.Path;
import com.querydsl.core.types.dsl.PathInits;


/**
* QReply is a Querydsl query type for Reply
*/
@Generated("com.querydsl.codegen.DefaultEntitySerializer")
public class QReply extends EntityPathBase<Reply> {

private static final long serialVersionUID = 504471862L;

private static final PathInits INITS = PathInits.DIRECT2;

public static final QReply reply = new QReply("reply");

public final StringPath content = createString("content");

public final NumberPath<Long> replyId = createNumber("replyId", Long.class);

public final com.example.spring_boot_a.domain.entity.review.QReview review;

public QReply(String variable) {
this(Reply.class, forVariable(variable), INITS);
}

public QReply(Path<? extends Reply> path) {
this(path.getType(), path.getMetadata(), PathInits.getFor(path.getMetadata(), INITS));
}

public QReply(PathMetadata metadata) {
this(metadata, PathInits.getFor(metadata, INITS));
}

public QReply(PathMetadata metadata, PathInits inits) {
this(Reply.class, metadata, inits);
}

public QReply(Class<? extends Reply> type, PathMetadata metadata, PathInits inits) {
super(type, metadata, inits);
this.review = inits.isInitialized("review") ? new com.example.spring_boot_a.domain.entity.review.QReview(forProperty("review"), inits.get("review")) : null;
}

}

Loading