sqlMapConfig.xml
bookSqlMapper.xml
BookBean.java
BookDao.java
BookDaoImpl.java
IbatisSessionFactory.java
IbatisTest.java
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd">
<configuration>
<properties resource="com/ibatis3/conf/jdbc.properties" />
<settings>
<setting name="cacheEnabled" value="true"/>
<setting name="lazyLoadingEnabled" value="true"/>
<setting name="multipleResultSetsEnabled" value="true"/>
<setting name="useColumnLabel" value="true"/>
<setting name="useGeneratedKeys" value="false"/>
<!-- <setting name="enhancementEnabled" value="false"/> -->
<setting name="defaultExecutorType" value="SIMPLE"/>
<setting name="defaultStatementTimeout" value="25000"/>
</settings>
<typeAliases>
<typeAlias type="com.ibatis3.bean.BookBean" alias="bookBean"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="UNPOOLED">
<property name="driver" value="${oracle.driver}"/>
<property name="url" value="${oracle.url}"/>
<property name="username" value="${oracle.username}"/>
<property name="password" value="${oracle.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/ibatis3/dao/sql/bookSqlMapper.xml"/>
</mappers>
</configuration>
bookSqlMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="book">
<select id="selectBook" resultType="bookBean">
select
BOOKID AS book_id,
BOOKNAME AS book_name,
BOOKAUTHER AS book_author
from BOOKS
</select>
</mapper>
BookBean.java
package com.ibatis3.bean;
import java.io.Serializable;
public class BookBean implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private String book_id;
private String book_name;
private String book_author;
public String getBook_id() {
return book_id;
}
public void setBook_id(String book_id) {
this.book_id = book_id;
}
public String getBook_name() {
return book_name;
}
public void setBook_name(String book_name) {
this.book_name = book_name;
}
public String getBook_author() {
return book_author;
}
public void setBook_author(String book_author) {
this.book_author = book_author;
}
}
BookDao.java
package com.ibatis3.dao;
import java.util.List;
import com.ibatis3.bean.BookBean;
public interface BookDao {
public BookBean selectBook(String id);
public List<BookBean> queryBook();
}
BookDaoImpl.java
package com.ibatis3.dao.impl;
import java.util.List;
import com.ibatis3.bean.BookBean;
import com.ibatis3.dao.BookDao;
import com.ibatis3.utils.IbatisSessionFactory;
public class BookDaoImpl extends IbatisSessionFactory implements BookDao{
@Override
public List<BookBean> queryBook() {
return this.getSession().selectList("book.selectBook");
}
@Override
public BookBean selectBook(String id) {
// TODO Auto-generated method stub
return null;
}
}
IbatisSessionFactory.java
package com.ibatis3.utils;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class IbatisSessionFactory {
public SqlSessionFactory buildSqlSessionFactory() {
try {
String resource = "com/ibatis3/conf/sqlMapConfig.xml";
Reader reader = Resources.getResourceAsReader(resource);
return new SqlSessionFactoryBuilder().build(reader);
} catch (Exception e) {
logger.warn("failed to build SqlSessionFactory: ", e);
e.printStackTrace();
return null;
}
}
public SqlSession getSession(){
return buildSqlSessionFactory().openSession();
}
private static Logger logger = LoggerFactory.getLogger(IbatisSessionFactory.class);
}
IbatisTest.java
package com.ibatis3.test;
import java.util.Iterator;
import java.util.List;
import com.ibatis3.bean.BookBean;
import com.ibatis3.dao.BookDao;
import com.ibatis3.dao.impl.BookDaoImpl;
public class IbatisTest {
/**
* @param args
*/
public static void main(String[] args) {
BookDao bookDao = new BookDaoImpl();
List<BookBean> list = bookDao.queryBook();
for(Iterator<BookBean> it = list.iterator();it.hasNext();){
BookBean bean = it.next();
System.out.print(bean.getBook_id()+" , ");
System.out.print(bean.getBook_name()+" , ");
System.out.println(bean.getBook_author()+" , ");
}
}
}