생각하는 감쟈
[JAVA] Mybatis-confing / mapper . xml 설정 코드 파일 본문
MyBatis
데이터베이스를 쉽게 다룰 수 있는 프레임워크
preparedstatement같은 쿼리문을 입력하지 않고 실제 쿼리문과 유사하게 작성
사용 방법 순서 : 의존성 설정 >> DB설정 >> MyBatis 설정 >> Mapper 인터페이스 작성 >> XML작성
Mybatis-confing.xml
mybatis 실행시 초기 환경 설정 / 프로젝트에서 가장 기본적인 설정 코드 파일
<?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>
<properties resource ="kr/or/ddit/mybatis/config/dbinfo.properties"/>
<settings>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
<typeAliases>
<typeAlias type="kr.or.ddit.member.vo.MemberVO" alias ="memberVo"/>
</typeAliases>
<environments default="oracleDB">
<environment id="oracleDB">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${pass}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="kr/or/ddit/mybatis/mappers/member-mapper.xml"/>
</mappers>
</configuration>
DB연결 정보가 있는 properties 파일 설정
<properties resource ="kr/or/ddit/mybatis/config/dbinfo.properties"/>
>> properties 파일
driver = oracle.jdbc.driver.OracleDriver
url = jdbc:oracle:thin:@localhost:1521:xe
user = SB
pass = java
Mybatis의 기본 설정 값 셋팅
<settings>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
: 데이터가 null로 전달되었으면 빈칸으로 인지 말고 null로 인식해라
typeAliases 별칭(alias)울 설정하는 태그
<typeAliases>
<typeAlias type="kr.or.ddit.member.vo.MemberVO" alias ="memberVo"/>
</typeAliases>
: MyBatis에서 사용되는 클래스들은 사용할 때 패키지명이 포함된 전체 이름을 사용해야 되는데 이것을 대신해서
짧은 이름으로 사용하기 위한 별칭으로 등록한다.
형식) <typeAlias type = "패키지명을 포함한 전체이름" alias="별칭이름"/>
type : 뒤 이름 잘 가져오기!!
DB에 연결할 정보 설정하기
<environments default="oracleDB">
<environment id="oracleDB">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${pass}"/>
</dataSource>
</environment>
</environments>
DB에서 사용되는 SQL문들이 작성된 mepper파일 등록
<mappers>
<mapper resource="kr/or/ddit/mybatis/mappers/member-mapper.xml"/>
</mappers>
: 형식) <mapper resource = "경로명/파일명.xml"/>
MyBatisUtil 설정 코드 파일
package kr.or.ddit.mybatis.config;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MyBatisUtil {
private static SqlSessionFactory sqlSessionFactory = null;
static {
InputStream in = null;
try {
in = Resources.getResourceAsStream(
"kr/or/ddit/mybatis/config/mybatis-config.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
} catch (Exception e) {
System.out.println("myBatis 초기화 실패 ..");
e.printStackTrace();
}finally {
if(in!=null) try {in.close();} catch(IOException e) {}
}
}
// SqlSession 객체를 반환하는 메서드
public static SqlSession getSqlSession() {
return sqlSessionFactory.openSession();
}
}
mapper 설정 코드 파일
<?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="member">
<select id ="getAllMember" resultType="memberVo">
select * from member
</select>
</mapper>
'Language > Java' 카테고리의 다른 글
[JAVA] $.ajax - jsonTest 코드 (0) | 2024.06.04 |
---|---|
[JAVA] Cookie 생성, 조회 ,삭제 (0) | 2024.06.04 |
[Java] eclipse_단축키 (0) | 2024.03.18 |
[JAVA] 2차원 배열_02 (0) | 2024.03.15 |
[JAVA] Stack_heap, 배열 복사, 2차원 배열_01 (2) | 2024.03.15 |
Comments