create user 'cos'@'%' identified by 'cos1234';
GRANT ALL PRIVILEGES ON *.* TO 'cos'@'%';
create database security;
use security;
server:
port: 8080
servlet:
context-path: /
encoding:
charset: UTF-8
enabled: true
force: true
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/security?serverTimezone=Asia/Seoul
username: cos
password: cos1234
jpa:
hibernate:
ddl-auto: create #create update none
naming:
physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
show-sql: true
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>인덱스 페이지</title>
</head>
<body>
<h1>인덱스 페이지 입니다.</h1>
</body>
</html>
package com.cos.securiy1.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller // View Return
public class IndexController {
@GetMapping({"","/"})
public String index(){
// 머스테치 기본폴더 src/main/resources/
// ViewResolver 설정 : templates (prefix) , mustache(suffix) - 생략 가능.
return "index"; // src/main/resources/templates/index.mustache 를 찾게된다.
}
}
기본화면을 테스트하기 위한 IndexController를 생성한다.
"", "/" 를 GetMapping으로 받게되면 index 파일의 View를 return
Mustache의 기본폴더는 src/main/resources/ 이다.
Mustache는 index.mustache 파일을 찾게되는데 우리가 저장한것은 html파일이기 때문에 설정을 해줘야한다.
따라서 다음과 같이 설정을 한다.
package com.cos.securiy1.config;
import org.springframework.boot.web.servlet.view.MustacheViewResolver;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ViewResolverRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
MustacheViewResolver resolver = new MustacheViewResolver();
resolver.setCharset("UTF-8");
resolver.setContentType("text/html; charset=UTF-8");
resolver.setPrefix("classpath:/templates/");
resolver.setSuffix(".html");
registry.viewResolver(resolver);
}
}
@Configuration 애노테이션 ( 설정파일을 만들기위한 )
WebMvcConfigurer 를 implements 하여 메소드를 오버라이드한다.
다음과 같이 설정하여 html 파일을 기본으로 설정할 수 있다.
index.html 화면이 아닌 다음과 같은 화면으로 넘어가게된다.
Spring Security를 설정하였기 때문.
로그인을 하면 기본설정한 index.html View 로 넘어가게 된다.
실행을 하게 되면 다음과 같이 비밀번호가 생성된다.
아이디는 user를 입력하고 비밀번호는 다음 코드를 복사한다.