티스토리 뷰

Programming/Spring

[스프링부트] 이클립스 환경설정

감성적인 개발자 2021. 8. 2. 22:23

STS (이클립스)와 MariaDB를 이용해 스프링 부트 프로젝트를 생성하는 과정입니다.

 

사전 준비

- Eclipse(STS)

- 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 연동

HeidiSQL 실행화면

# 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 을 선택해준다

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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
글 보관함