IDE : IntelliJ Ultimate
사용 이유 : 무료 버전에선 안되는 다양한 기능 제공, html, css, js도 바로 개발 가능
프로젝트명 : BlogProject
빌드툴 : Maven
Group : com
Artifact : blog
JDK : jbr-17
java : 17
package : Jar
스프링 부트 버전 3.3.1
Dependencies

간단한 설명
Spring Boot DevTools : 설정과 관련 편하게 설정
Lombok : getter setter tostring 등 편하게 만들 수 있음
Spring Web : 웹 페이지 만들려면 필요
Spring Security : 로그인 로그아웃 관련
OAuth2 Client : 카카오 네이버 구글 로그인
JDBC API : DB 관련 자동 추가됨, 사용 안함 Mybatis JPA 사용 예정
MyBatis Framewrok, Spring Data JPA : DB 관리 프레임워크
MySQL Driver : Mysql 사용
WebSocket : 채팅 기능 구현을 위한 웹 소켓
Java Mail Sender : 메일 보내기
CycloneDx SBOM support : 시큐리티 관련 자동 추가됨
1. 디렉토리 구조

2. MySQL 및 Mybatis 세팅
:처음 프로젝트를 생성하고 Run 하면 sql 관련 설정으로 인해 실행 되지 않음
게시판을 만들 예정이니 다음과 같이 DB 생성하고 DB 정보 입력
Run 은 되나 MyBatis 관련 Warn이 생김
플러그인으로 MyBatis X를 다운 받으면 좋음 Mybatis의 SQL을 빠르게 작성 가능 (아래는 관련 사이트)
https://plugins.jetbrains.com/plugin/10119-mybatisx
MyBatisX - IntelliJ IDEs Plugin | Marketplace
MybatisX plugin Features: mapper and xml can jump back and forth mybatis.xml,mapper.xml prompt mapper and xml support auto prompt like jpa (reference...
plugins.jetbrains.com
관련 세팅은 apllication.properties에 작성하면 된다.
#@@@@@@@@@@@@@@@@@@@@@@@@@@mysql@@@@@@@@@@@@@@@@@@@@@@@@@@#
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/blog
# 본인 mysql id, password 입력
spring.datasource.username=root
spring.datasource.password=root
#@@@@@@@@@@@@@@@@@@@@@@@@@@mybatis@@@@@@@@@@@@@@@@@@@@@@@@@@#
# 매퍼에 있는 모든 파일에 대하여 매퍼 설정
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
# 해당 경로에 있는 파일을 mybatis config로 설정
mybatis.config-location=classpath:mybatis/configuration.xml
그리고 각 xml 파일에 다음과 같이 적고 실행하면 정상 실행된다.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.blog.mapper.mapper">
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="jdbcTypeForNull" value="NULL"/>
<setting name="cacheEnabled" value="true"/>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="defaultFetchSize" value="100"/>
<setting name="defaultStatementTimeout" value="25"/>
</settings>
<typeAliases>
</typeAliases>
</configuration>
다음으론 DB를 만들고 GET, POST 매핑을 해볼까 한다.
'웹 페이지 개발' 카테고리의 다른 글
| 3. 웹 페이지 HTML Fragment (0) | 2024.07.14 |
|---|---|
| 2. 스프링부트 mybatis 사용 Get, Post mapping (0) | 2024.07.13 |