| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 복습
- 서블릿기초 #servlet #java #webprogramming
- WEB
- 동적sql
- JavaScript #예제 #복습 #Web #웹 #개발자가되고파ㅜㅜ
- Java #자바 #인터페이스 #implements #다형성 #interface #복습 #정리 #나만의공부
- 데이터조회예제
- JavaScript #자바스크립트 #선택자 #HTML태그접근 #JS
- 스프링
- 예제
- 특징및기본구조
- JavaScript #선언적함수 #익명함수 #화살표함수 #함수선언방법 #복습
- JavaScript #자바스크립트 #복습 #배열 #Array
- fremework
- 페이징처리예제
- Java #자바 #초보개발자 #다형성 #동적바인딩 #instanceof #학습 #요약정리 #복습
- mybatis
- JavaScript #인라인 #인터널 #익스터널 #데이터입출력
- 데이터베이스 #DataBase #Oracle #DB #DataBase개요
- 어노테이션
- List데이터조회
- Java #Web #공부 #복습 #Servlet #서블릿 #포워드 #sendRedirect #dispatcher
- mybatis자료형 #참고자료
- 정리
- Spring
- Java #JDBC #Mybatis #동적SQL
- 프레임워크
- 데이터매핑
- Java
- springframework
- Today
- Total
개발군싹
1) mybatis Setting(환경설정) 본문
프로젝트 생성 후 인코딩 작업
➡️ General → Editor → Text Editors → Seplling ⇒ “UTF-8” 설정
➡️ WEB → JSP FILES, CSS FILES, HTML FILES ⇒ 각각 “UTF-8” 설정
⭐ 2개의 설정 파일 생성하기 (
➡️ 통상적으로 mybatis-config.xml 1개와 다수의 mybatis-mapper.xml 파일 생성해서 사용
Mybatis DTD 설정하기
➡️ Window → preferences → XML → XML Catalog → User Specified Entries 클릭 후 Add
<config 설정 >
- Location : http://mybatis.org/dtd/mybatis-3-config.dtd
- key : -//mybatis.org//DTD config 3.0//EN

<mapper 설정>
- Location : http://mybatis.org/dtd/mybatis-3-mapper.dtd
- key : -//mybatis.org//DTD Mapper 3.0//EN

mybatis jar api 파일 다운로드
➡️ https://blog.mybatis.org/ 접속 → release → Maven Central → jar파일 다운로드 (mybatis-3.5.11.jar) ⇒ WEB-INF → lib에 jar 추가 (ojdbc, lombok, taglibs, mybatis 등)
➡️ sources폴더 생성 (src/main/resources)

➡️ src/main/resources 우클릭 → new → Other → XML File → Next → -config.xml 이름 명명 → Next → Create file using a DTD or XML Schema file 선택 후 Next → Select XML Catalog entry 선택 → User Specified Entries 중 위에서 설정 한 Config 선택 후 Next (🔥 Next 클릭 후 Root element에 configuration 태그가 나와야 정상적으로 설정된 것) → Finish
- 파일 생성 위치와 xml Editor설정 후 확인 (XML Editor 설정❓ .xml 파일 우클릭 → open with 선택 → other → xml Editor 설정 )

if) xml파일에서 에러가 발생 할 시 Preferences에 들어가서 Maven 검색 후 Download Artifact Javadoc에 체크가 되어 있지 않으면 체크 후 Apply !!!

mybatis-config.xml 환경설정(environments, mappers는 필수)
➡️ environments → 다수의 접속 환경 설정 가능 (default - 기본으로 연결된 환경을 설정 가능)
- DB계정 정보를 설정

- <environments default=””> ⇒ 다수의 접속 환경 설정 가능. default⇒ 다수의 접속 환경 중 기본으로 접속할 환경을 선택할 수 있다.
- <environment id=””></environment> ⇒ 기본적으로 세션을 생성 시 접속할 session id값 설정
- <transactionManager type=””/> ⇒ 트랜잭션을 처리하는 관련정보 설정 ( “JDBC” )
- <dataSource type=””></dataSource> ⇒ type은 connection pool 설정 (POOLED, UNPOOLED)
➡️ POOLED : 자원 생성 후 저장 시켜두고 접근 시 저장된 자원으로 이용 ( 선호 )
➡️ UNPOOLED : 자원 생성 후 저장 시키지 않고 한번 이용 후 자원 삭제, 재접근 시 새롭게 생성
- <property> 태그 내 ‘name’과 ‘value’를 이용하여 JDBC 설정과 같이 DB연결 정보를 저장한다.
<environments> 태그에 DB접속에 대한 환경설정 후 <mappers> 등록
➡️ mappers 태그를 이용해서 sql문을 작성한 xml파일의 경로를 알려주는 태그

<?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>
<environments default="mybatis">
<!-- DB접속에 대한 환경정보를 태그로 설정
environment태그를 이용
-->
<environment id="mybatis">
<!-- 트랜잭션, connectionpool, 접속정보(DB정보, URL, 계정, 비밀번호) -->
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/>
<property name="username" value="mybatis"/>
<property name="password" value="mybatis"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- sql문을 작성한 xml파일의 경로를 알려주는 태그 -->
<mapper resource="/mappers/student-mapper.xml"/>
</mappers>
</configuration>
student-mapper.xml (예제)
🔥 -mapper.xml 또한 위 -config.xml 설정과 같다.
➡️ 실질적으로 sql문을 작성하고 dto에 대한 설정을 하는 파일

DBC Template과 같은 역할의 SqlSessionTemplate 생성
➡️ com.mybatis.common pakage 생성
🧑💻 JDBC Template 이용 시 commit, rollback, close 등에 대한 공용 메소드를 선언하고 사용했어야 하지만 SqlSessionTemplate(mybatis) 이용 시 session객체에 자동으로 생성되어 있기 때문에 편리하게 이용할 수 있다.
public class SqlSessionTemplate {
public static SqlSession getSession() {
SqlSession session = null;
String filename = "mybatis-config.xml";
try {
//SqlSession객체 생성하기
//1. SqlSessionFactoryBuilder클래스의 build()메소드를 호출
//build()호출하면 SqlSessionFactory객체를 생성한다.
//build() 매개변수로 config.xml파일을 받는다.
InputStream is = Resources.getResourceAsStream(filename);
SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(is);
session = ssf.openSession(false); //transaction 관리 -> true:자동 / false:직접
}catch(IOException e) {
e.printStackTrace();
}
return session;
}
}'Mybatis' 카테고리의 다른 글
| 3-2) mybatis에서 페이징 처리 (1) | 2023.12.04 |
|---|---|
| 3-1) mybatis 데이터 조회(Map / DTO를 이용하지 않고 조회하기) (0) | 2023.12.04 |
| 3) mybatis 데이터 조회(List) (0) | 2023.12.04 |
| 2) mybatis 예제(INSERT) (1) | 2023.12.04 |
| 참고) Mybatis 자료형 (1) | 2023.12.04 |