나중에 어디서쓰냐면..
Dto를 나중에 만들게된다면
private final String TCId;
getTCId(){
대충 반환한다는내용
}
이러한 파트를 롬복을 설정을한다면
@Getter
@RequiredArgsConstructor
class {
private final String TCId;
}
하면 끝이다.
인텔리j lombok 플러그인을 추가하고
build.gradle에 dependecies 에 추가해준다..
implementation('org.projectlombok:lombok')
1.com.tc.springbookt package 생성후 거기에 관리를 해야겠다.
그안에 application class생성후 SpringBootannotation을 이용해 기본 메인을 생성한다.
package com.tc.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
Ctrl + Shift + F10 을눌러 이제 확인하자
자 그럼 이제 주의사항에 대해 알아보자
이 메인 파일은 최상단에 위치해야됨 여기서부터 설정을 읽기때문 또한 스프링부트 자동설정 및 Bean등 자동으로 설정을 해줌
이제 메인을 설정했으니 MVVM 구조를 이용하여 개발할 예정이니 이제 컨트롤러와 서비스를 설정해주고 프론트와 번갈아가면서 개발을 할 예정이다.
간단한 프로젝트로 진행할 예정이므로 로그인과 회원가입 그리고 자유게시판 까지 구현할 예정이다.
기존의 방법에서 ORM 과 인텔리J사용 및 VUE를 이용한 프론트 연동 까지 익숙해지기 위해서 진행한다고 의의를 둔다.
그럼 개발 및 설계 파트를 뛰어 넘을꺼니 간단히 설계를 하자면
ERD는 다음과같이 할수있고 MYSQL을 이용할 예정이다 .
CREATE TABLE IF NOT EXISTS `tekiescommunity`.`TC_User` (
`TC_Num` INT NOT NULL AUTO_INCREMENT,
`TC_Id` VARCHAR(45) NULL,
`TC_Password` VARCHAR(45) NULL,
`TC_Email` VARCHAR(45) NULL,
PRIMARY KEY (`TC_Num`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `mydb`.`TC_Comment`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `tekiescommunity`.`TC_Comment` (
`Comment_Num` INT NOT NULL,
`Comment_Content` VARCHAR(45) NULL,
`Comment_TCNum` INT NULL,
PRIMARY KEY (`Comment_Num`),
INDEX `ForeignKey_CommentTCNum_idx` (`Comment_TCNum` ASC) VISIBLE,
CONSTRAINT `ForeignKey_CommentTCNum`
FOREIGN KEY (`Comment_TCNum`)
REFERENCES `tekiescommunity`.`TC_User` (`TC_Num`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `mydb`.`TC_Board`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `tekiescommunity`.`TC_Board` (
`Board_Num` INT NOT NULL,
`Board_Title` VARCHAR(45) NULL,
`Board_Content` VARCHAR(200) NULL,
`Board_TCNum` INT NULL,
`Board_CommentNum` INT NULL,
PRIMARY KEY (`Board_Num`),
INDEX `ForeignKey_TCNum_idx` (`Board_TCNum` ASC) VISIBLE,
INDEX `ForeignKey_BoardCommentNum_idx` (`Board_CommentNum` ASC) VISIBLE,
CONSTRAINT `ForeignKey_BoardTCNum`
FOREIGN KEY (`Board_TCNum`)
REFERENCES `tekiescommunity`.`TC_User` (`TC_Num`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `ForeignKey_BoardCommentNum`
FOREIGN KEY (`Board_CommentNum`)
REFERENCES `tekiescommunity`.`TC_Comment` (`Comment_Num`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
다음 파트에서는 DTO를 만들고 JPA를 이용해서 연결해줄예정이다.