SPRING의 MYBATIS를 XML이 아닌 INTERFACE를 이용하여 사용하기
1. Sqlfactory 셋팅
<!-- mybatis factory bean -->
<beans:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<beans:property name="dataSource" ref="logDataSource"></beans:property>
<beans:property name="configLocation" value="/WEB-INF/mybatis/mybatis-config.xml"></beans:property>
<beans:property name="mapperLocations" value="/WEB-INF/mybatis/mapper/*.xml"></beans:property>
</beans:bean>
2. Mapper로 사용할 interface 코딩
public interface TestDao {
@Select("select * from board2")
@Results(value={
@Result(property="seq", column="seq"),
@Result(property="title", column="title"),
@Result(property="regName", column="reg_name"),
@Result(property="regId", column="reg_id")
})
public List<Board> selectBoardList();
@Insert("insert into board2(seq, title, reg_name, reg_id) values (#{seq}, #{title}, #{regName}, #{regId})")
public void insertBoard(Board board);
@Update("update board2 set title=#{title}, reg_name=#{regName}, reg_id=#{regId} where seq=#{seq}")
public void updateBoard(@Param("seq")long seq, @Param("title")String title, @Param("regName")String regName, @Param("regId")String regId);
@Delete("delete from board2 wehre seq = #{seq}")
public void deleteBoard(@Param("seq") long seq);
}
3. Mapper 셋팅
<beans:bean id="testMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<beans:property name="mapperInterface" value="com.lskworld.app.common.dao.TestDao"></beans:property>
<beans:property name="sqlSessionFactory" ref="sqlSessionFactory"></beans:property>
</beans:bean>
참고url