티스토리 뷰
1단계 gradle 설정 *****************************
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
|
plugins {
id 'org.springframework.boot' version '2.2.5.RELEASE'
id 'io.spring.dependency-management' version '1.0.9.RELEASE'
id 'java'
id 'war'
id 'com.ewerk.gradle.plugins.querydsl' version '1.0.10'
}
group = 'com.chatbot'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
compile group: 'org.springframework.boot', name: 'spring-boot-starter', version: '2.2.5.RELEASE'
compile group: 'org.springframework.boot', name: 'spring-boot-devtools', version: '2.2.5.RELEASE'
compile group: 'org.springframework.boot', name: 'spring-boot-starter-web-services', version: '2.2.5.RELEASE'
providedCompile group: 'org.projectlombok', name: 'lombok', version: '1.18.12'
compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.5.4'
compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.2.5.RELEASE'
compile group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
compile group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'
compile group: 'com.querydsl', name: 'querydsl-jpa', version: '4.3.0'
compile group: 'com.querydsl', name: 'querydsl-apt', version: '4.3.0'
compile group: 'com.amazonaws', name: 'aws-java-sdk', version: '1.11.744'
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
}
}
test {
useJUnitPlatform()
}
def querydslSrcDir = 'src/main/generated'
querydsl{
library = 'com.querydsl:querydsl-apt'
jpa = true
querydslSourcesDir = querydslSrcDir
}
compileQuerydsl{
options.annotationProcessorPath = configurations.querydsl
}
configurations {
querydsl.extendsFrom compileClasspath
}
sourceSets{
main{
java{
srcDirs = ['src/main/java', querydslSrcDir]
}
}
}
|
cs |
수정하고 우측 그래들 리셋 클릭 !!
인텔리제이 우측 Gradle 클릭
other > compileQuerydsl 클릭
콘솔에 반응 발생합니다.
잠시후 아래와 같은 화면을 출력하며 멈춥니다.
좌측을 보면 아래와 같은 패키지와 파일이 생성됩니다.
QMember.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
|
package com.chatbot.web.member;
import static com.querydsl.core.types.PathMetadataFactory.*;
import com.querydsl.core.types.dsl.*;
import com.querydsl.core.types.PathMetadata;
import javax.annotation.Generated;
import com.querydsl.core.types.Path;
/**
* QMember is a Querydsl query type for Member
*/
@Generated("com.querydsl.codegen.EntitySerializer")
public class QMember extends EntityPathBase<Member> {
private static final long serialVersionUID = 1014359176L;
public static final QMember member = new QMember("member1");
public final StringPath addr = createString("addr");
public final StringPath email = createString("email");
public final NumberPath<Long> id = createNumber("id", Long.class);
public final StringPath passwd = createString("passwd");
public final StringPath userid = createString("userid");
public QMember(String variable) {
super(Member.class, forVariable(variable));
}
public QMember(Path<? extends Member> path) {
super(path.getType(), path.getMetadata());
}
public QMember(PathMetadata metadata) {
super(Member.class, metadata);
}
}
|
cs |
프로젝트 구성은 [덕 - 타이핑] 구조로 하겠습니다.
구성의 근거는 다음과 같습니다.
이 페이지에서 해당 사항은 아래에 별도로 캡쳐했습니다.
가장 중요한 점은 클래스이름을 인터페이스 이름 + Impl 로 작성하라는 정보입니다. Syntax 로 인지하셔야 합니다.
다만 CustomizedUserRepository 부분은 사용자 정의가 가능하므로 해당 인터페이스는 기존에 익숙한 이름인 service 로 정의합니다.
class Member
class MemberRepositoryImpl (interface MemberService , MemberRepository , QuerydslRepositorySupport)
class MemberController
이런 형태로 구성이 되겠습니다.
2 단계 *************************************
Database 연결하기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
spring:
mvc:
view:
suffix: .html
jpa:
show-sql: true
database: mysql
hibernate:
ddl-auto: create
datasource:
driver-class-name: org.mariadb.jdbc.Driver
url: jdbc:mariadb://127.0.0.1:3306/mariadb
username: mariadb
password: mariadb
|
cs |
'9. 데브옵스' 카테고리의 다른 글
[인텔리제이] 익스프레스JS Project 생성 (0) | 2020.05.08 |
---|---|
Setup VScode for Node.js (0) | 2020.05.07 |
React-Native VSCode Setup (0) | 2020.05.04 |
Pycharm 개발환경 설정하기 (0) | 2020.05.04 |
Eclipse Debugging on Other Blog (0) | 2020.05.03 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- maven
- Eclipse
- intellij
- FLASK
- springMVC
- Python
- JPA
- Mlearn
- terms
- Django
- JUnit
- Git
- mariadb
- COLAB
- Java
- ERD
- SQLAlchemy
- React
- Oracle
- SpringBoot
- Mongo
- database
- AWS
- jQuery
- Algorithm
- KAFKA
- vscode
- nodejs
- tensorflow
- docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함