build.gradle
plugins {
id 'java'
id 'org.springframework.boot' version '2.7.13'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
}
group = 'com.boot'
version = '0.0.1-SNAPSHOT'
java {
sourceCompatibility = '1.8'
}
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.3.1'
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
implementation 'org.apache.tomcat.embed:tomcat-embed-jasper'
implementation 'javax.servlet:jstl:1.2'
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation files('libs/ojdbc6.jar')
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter-test:2.3.1'
}
tasks.named('test') {
useJUnitPlatform()
}
OJDBC6.jar 추가
application.properties
#Server
server.port=8083
server.servlet.session.timeout=360000
#Spring MVC
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
#Database config
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:XE
spring.datasource.username=scott
spring.datasource.password=tiger
spring.datasource.driverClassName=oracle.jdbc.driver.OracleDriver
#mybatis config
mybatis.config-location=classpath:mybatis-config.xml
mybatis.config
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"<http://mybatis.org/dtd/mybatis-3-config.dtd>">
<configuration>
<mappers>
<!-- SQL 저장파일(+경로) -->
<mapper resource = "mybatis/mapper/member.xml"/>
</mappers>
</configuration>
src/main/resources 에 mybatis.mappers추가
member.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"<https://mybatis.org/dtd/mybatis-3-mapper.dtd>">
<mapper namespace="com.boot.dao.IMemDao">
<select id="getPwd" parameterType="hashmap" resultType="com.boot.dto.MemDto">
select
MEM_UID,
MEM_PWD,
MEM_NAME
from mvc_member
WHERE MEM_UID='${MEM_UID,jdbcType = VARCHAR}'
</select>
<insert id="signUp" parameterType="hashmap">
insert into
MVC_MEMBER(MEM_UID,MEM_PWD,MEM_NAME) values
(#{MEM_UID}, #{MEM_PWD}, #{MEM_NAME})
</insert>
</mapper>
DTO
package com.boot.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class MemDto {
public String MEM_UID;
public String MEM_PWD;
public String MEM_NAME;
}
DAO
package com.boot.dao;
import java.util.HashMap;
import org.apache.ibatis.annotations.Mapper;
import com.boot.dto.MemDto;
@Mapper
public interface IMemDao {
public MemDto getPwd(String U_ID);
public void signUp(HashMap<String, String> param);
}