Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- dart
- int와 integer
- React
- 생성자
- Pug
- 깃허브
- 다형성
- 추상클래스
- 콘솔게임
- Spring
- app.use
- Sort()
- mybatis
- 자바
- Middleware
- 배열
- java
- 코딩테스트
- qqOperater
- js
- DB
- 자바스크립트
- git
- 리액트
- push함수
- 오류
- Node.js
- Oracle
- 네임드생성자
- 삼항연산자
Archives
- Today
- Total
평행코드
<Spring legacy> Mybatis DB연결하기 본문
root-context.xml 파일
3개의 DB연결에 필요한 bean을 등록함
1. Data연결정보를 저장하는 클래스 -> BasicDataSource클래스
2. SqlSession을 생성해주는 클래스 -> SqlSessionFactoryBean클래스
3. SqlSession 클래스 -> SqlSessionTemplate클래스
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/>
<property name="username" value="spring"/> <property name="password" value="spring"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="configLocation" value="classpath:mybatis-config.xml"/>
<property name="mapperLocations" value="classpath:mappers//*.xml"/>
</bean>
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory"/>
</bean>
src/main/resources에 mappers폴더, mybatis-config.xml파일을 생성해준다.
생성시 템플릿이 없을경우,
Preferences → XML Catalog → Add → Location, key에 입력
Location : http://mybatis.org/dtd/mybatis-3-config.dtd
key : //mybatis.org/DTD Config 3.0//EN
Location : http://mybatis.org/dtd/mybatis-3-mapper.dtd
key : //mybatis.org/DTD Mapper 3.0//EN
위에서 템플릿을 만들어 준 후 mybatis-config.xml, ~mapper.xml파일을
알맞은위치에 생성해준다.
mybatis-config.xml 파일에 아래 예시처럼 입력해 준다.
<configuration>
<settings>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
<typeAliases>
<typeAlias type="com.bs.spring.demo.model.dto.Demo" alias="demo"/>
<typeAlias type="com.bs.spring.common.StringArrayTypeHandler" alias="strArr"/>
<typeAlias type="com.bs.spring.common.StringListTypeHandler" alias="strList"/>
<typeAlias type="com.bs.spring.member.model.dto.Member" alias="member"/>
</typeAliases>
</configuration>
~mapper.xml파일 예시
<mapper namespace="demo">
<resultMap id="demoMap" type="demo">
<!-- <id column="devno" property=""/>
<result column="devname" property="devName"/>
<result column="devage" property="devAge"/>
<result column="devemail" property="devEmail"/>
<result column="devgender" property="devGender"/> -->
<result column="devlang" property="devLang" typeHandler="strArr"/>
</resultMap>
<insert id="insertDemo" parameterType="demo">
INSERT INTO DEV VALUES(SEQ_DEV_NO.NEXTVAL, #{devName}, #{devAge},
#{devEmail}, #{devGender},
<foreach item="lang" collection="devLang" open="'" close="'" separator=",">${lang}</foreach>)
</insert>
<select id="selectDemoList" resultMap="demoMap">
SELECT * FROM DEV
</select>
<select id="selectDemoByNo" parameterType="_int"
resultMap="demoMap">
SELECT * FROM DEV WHERE DEVNO=${devNo}
</select>
<update id="updateDemo" parameterType="demo">
UPDATE DEV SET DEVNAME=#{devName},
DEVAGE=#{devAge}, DEVEMAIL=#{devEmail},
DEVGENDER=#{devGender},
DEVLANG=#{devLang, typeHandler=strArr}
WHERE DEVNO=${devNo}
</update>
</mapper>
'Spring' 카테고리의 다른 글
<Spring> bean validator 구현하는 방법 (1) | 2023.12.11 |
---|---|
<Spring> 로그 남기기 (2) | 2023.12.11 |
<Spring legacy> Model (2) | 2023.12.07 |
스프링 맵핑메소드와 매개변수 (2) | 2023.12.05 |
<Spring legacy> 개발환경구축 (0) | 2023.12.05 |