클론 코딩만 하다가 도저히 이해를 못할 것 같아서 다시 처음부터(관리자페이지만) 만들어보고자 한다.
Lombok, Dev Tool, Java MailSend(admin page 이외 rootpage에서 회원가입 인증 메일 발송하려고) , SpringData Jpa, MariaDB Driver, Spring Security 기본적으로 설치하고 시작했다.
이렇게 test connection 진행하고 추가하는 것이 application.yml 파일에서 아래와 같다.
spring:
datasource:
url: jdbc:mariadb://ip주소:43306/admin_example
driver-class-name: org.mariadb.jdbc.Driver
username: admin_test
password: 비밀번호 입력
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<scope>runtime</scope>
</dependency>
위와 같이 사용하려면 pom 파일에 위와 같이 dependency 를 추가해주어야 한다.
@Controller
public class AdminMainController {
@RequestMapping("/admin/main.do")
public String admin_index(){
return "/admin/main";
}
}
원래 회원페이지 먼저 구현해야하지만.
admin 페이지 먼저 구현해서 "/" root 주소 대신 "/admin/main.do"에 먼저 매핑해줬다.
+Controller는 반드시 어노테이션이 필요하다.
templates > admin > main.html 을 추가해서 return 값과 일치시켜준다.
제대로 홈페이지가 나온 것을 확인하고 만들고자 하는 메뉴를 만들 것이다.
<html lang="en" xmlns:th="http://www.thymeleaf.org">
상단에 고정시켜줘야 thymeleaf를 이용할 수 있다.
<div th:replace="/admin/admin_layout.html :: fragment-body-menu">
admin 디렉토리 -> admin_layout.html 파일에 원하는 메뉴 모양을 넣어주면 자동으로 매칭된다.
<div>
<a href="/admin/main.do">관리자 홈</a>
|
<a href="/admin/member/list.do">회원 관리</a>
|
<a href="#">카테고리 관리</a>
|
<a href="#">강의 관리</a>
|
<a href="/admin/member/manage_emailForm.do">이메일 템플릿 관리</a>
|
<a href="/member/logout">로그아웃</a>
</div>
6개의 메뉴 만들기 성공