티스토리 뷰
STS (이클립스)와 MariaDB를 이용해 스프링 부트 프로젝트를 생성하는 과정입니다.
사전 준비
- HeidiSQL - 설치과정을 보려면 클릭
- Lombok
1. 환경설정
1.1. STS와 Lombok 연동하기
lombok.jar 파일을 실행시켜 Lombok에 STS.exe파일을 포함시킨다.
만약 jar파일이 실행되지 않는다면 window의 cmd 창으로 실행 가능하다. 다음과 같이 입력하자.
cd명령어로 lombok이 위치한 곳으로 이동 후 실행한다. jar 파일 실행을 위해선 java가 존재해야 하므로 미리 체크한다.
>java -version
>cd C:\springBoot\sts
>java -jar lombok.jar
2. 프로젝트 생성
[File] - [New] - [Spring Starter Project] 혹은 Package Explorer에서 우클릭 - [New] - [Spring Starter Project] 시작한다.
우측의 Project Dependencies에선 웹 개발에 필요한 Dependency를 추가 할 수 있다.
3. 구현
MVC 패턴 및 코드에 대한 설명은 여기를 참조.
● Controller/HomeController.java
package com.example.ex1.controller;
@Controller
public class HomeController {
@RequestMapping("/home")
public String home() {
return "home";
}
}
● templates/home.html
<html xmlns:th="http://www.thymeleaf.org">
<body>
<h1>Home</h1>
</body>
</html>
4. Maria DB 연동
# datasource
spring.datasource.driverClassName=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://127.0.0.1:3306/bootex
spring.datasource.username=계정
spring.datasource.password=패스워드
# jpa
spring.jpa.hibernate.ddl-auto=create
spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.globally_quoted_identifiers=true
application.properties에 입력한다. DB와 STS 간 연동만을 위한다면 jpa 주석이 있는 부분은 입력할 필요 없다. jpa 부분의 첫번째 줄은 테스트를 위해 create로 설정했으며, 최초 실행 후, update로 변경할 것을 권장한다.
● Model/Test.java
@Data
@Entity
public class Test {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
private String userId;
}
(Data, Entity, Id, GeneratedValue 까지)4개의 어노테이션은 DB 생성시 거의 필수적으로 들어간다. 여기서 생성한 Model의 변수이름이 MariaDB의 속성으로 생성되며 userId 같이 카멜 표기법으로 만든 변수명은 DB에서 user_id로 생성된다.
● Repository/TestRepository.java
public interface TestRepository extends JpaRepository<Test, Long>{
}
인터페이스로 선언하며 <테이블명, 기본키 자료형> 으로 Repository를 생성한다. JPA를 이용하기 위해 상속해준다.
● Console창 출력
Hibernate: drop table if exists `test`
Hibernate: drop table if exists `hibernate_sequence`
Hibernate: create table `test` (`id` bigint not null, `name` varchar(255), `user_id` varchar(255),
primary key (`id`)) engine=InnoDB
Hibernate: create table `hibernate_sequence` (`next_val` bigint) engine=InnoDB
Hibernate: insert into `hibernate_sequence` values ( 1 )
STS를 실행하면 콘솔창에 다음과 같이 출력되며 MariaDB를 보면 test 테이블이 생성된 것을 확인할 수 있다. 실행하는 방법은 [컨트롤] + [F11] > Spring Boot App 을 선택해준다
'Programming > Spring' 카테고리의 다른 글
[스프링부트] 이클립스에 환경설정 - MariaDB 연동 (2) | 2021.08.16 |
---|---|
[스프링부트] Thymeleaf 사용법 (0) | 2021.08.08 |
[스프링부트] OPEN API 와 DB 연동하기 (0) | 2021.07.25 |
[스프링부트] Open API (0) | 2021.07.19 |
[스프링부트] 로그 출력 (0) | 2021.07.15 |
- Total
- Today
- Yesterday
- 네트워크
- 넥사크로
- Thymeleaf
- 스프링부트
- 오라클
- 프로그래머스
- C
- 인턴
- JVM
- 부트스트랩
- 오류
- Open API
- 국비교육
- 백준
- CSS
- 환경설정
- 데이터베이스
- CS
- 개발용어
- 스프링
- SQL
- Java
- 이클립스
- HeidiSQL
- JSP
- C++
- svn
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |