一、创建工程和数据库
1.工程名:ibatisdemo1
数据库名:ibatis
创建表:student
CREATE TABLE `student` (
`sid` int(11) NOT NULL,
`sname` varchar(30) DEFAULT NULL,
`major` varchar(30) DEFAULT NULL,
`birth` date DEFAULT NULL,
`score` decimal(10,0) DEFAULT NULL,
PRIMARY KEY (`sid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
添加测试数据
insert into
`student`(`sid`,`sname`,`major`,`birth`,`score`)
values (1,'ss','ff','2014-03-06','22');
insert into
`student`(`sid`,`sname`,`major`,`birth`,`score`)
values (2,'vv','ee','2014-03-05','33');
二、添加相关jar
1.在项目中创建lib目录
/lib
2.在lib目录下添加jar包
mysql-connector-java.jar
ibatis-2.3.3.720.jar
junit-4.4.jar
三、添加配置文件
1.在项目中创建conf目录
/conf
2.在conf目录添加属性文件
属性文件名称:SqlMap.properties
内容:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/ibatis
username=root
password=root
3.在conf目录添加配置文件
配置文件名称:SqlMapConfig.xml
内容:
/p>
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
四、创建与数据库表中相关的javabean和映射文件
1.在src下创建包
cn.jbit.domain
2.在包下创建类
类名:Student.java
内容:
public class Student {
private Integer sid;
private String sname;
private String major;//主修专业
private Date birth;
private float socre;
// get and set 省略
}
3.在包下创建映射文件
映射文件名:Student.xml
内容:
/p>
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
SELECT
*
FROM
Student
4.在核心配置文件中添加引用映射文件
五、设计DAO层
接口:IStudentDao.java
public interface IStudentDao {
/**
* map方式查询
*/
public List selectallbymap();
}
实现类:StudentDaoImpl.java
public class StudentDaoImpl implements IStudentDao{
private static SqlMapClient sqlMapClient;
static{
try {
//加载配置文件
Reader reader = Resources.getResourceAsReader("SqlMapConfig.xml");
//实例化SqlMapClient
sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
//关闭
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public List selectallbymap() {
List students=null;
try {
students = sqlMapClient.queryForList("selectallbymap");
} catch (SQLException e) {
e.printStackTrace();
}
return students;
}
}
六、设计SERVICE层
接口:IStudentService.java
public interface IStudentService {
public List selectallbymap();
}
实现类:StudentServiceImpl.java
public class StudentServiceImpl implements IStudentService {
private IStudentDao studentDao = new StudentDaoImpl();
@Override
public List selectallbymap() {
return studentDao.selectallbymap();
}
}
七、测试
1.在项目中创建test目录
/test
2.在test目录下创建包
cn.jbit.junit
3.在包下创建测试类
类名:StudentTest.java
内容:
public class StudentTest {
IStudentService studentService = new StudentServiceImpl();
/**
* map查询
*/
@Test
public void selectallbymap(){
List students =studentService.selectallbymap();
for (Student student : students) {
System.out.println(student.getSid());
}
}
}