本文將闡述SqlSession的使用型凳。
1引谜、環(huán)境約束
- win10 64位操作系統(tǒng)
- idea2018.1.5
- jdk-8u162-windows-x64
- mybatis3.2.8
- mysql 6.5
2挚歧、前提約束
- 完成idea中創(chuàng)建mybatis項目 http://www.reibang.com/p/86db0901156f
請讀者注意自己數(shù)據(jù)庫賬號密碼驅(qū)動和url的適配。
3、操作步驟
- 創(chuàng)建一個t_student
create table t_student(id int,name varchar(20));
insert into t_student(id,name) values(1,'ali');
insert into t_student(id,name) values(2,'xiaoli');
insert into t_student(id,name) values(3,'zhangli');
- 確保包括net.wanho.entity.Student.java:
public class Student{
private int id;
private String name;
...
}
- 確保UserMapper.java中包含以下內(nèi)容:
Student getStudentById(int id);
List<Student> queryStudents(String name);
void updateStudent(Student student);
- 確保UserMapper.xml中包含以下內(nèi)容:
<select id="getStudentById" resultType="net.wanho.pojo.Student">
select * from t_student where id=#{id} and name=#{name}
</select>
<select id="queryStudents" resultType="net.wanho.pojo.Student">
select * from t_student where name=#{name}
</select>
<update id="updateStudent" >
update t_student set name=#{name} where id=#{id}
</update >
- 提供測試類TestSqlSession.java:
import net.wanho.pojo.Student;
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 java.io.Reader;
import java.util.List;
public class TestMybatis2 {
public static void main(String[] args)throws Exception {
String resource ="mybatis-config.xml";
//獲取到了上述配置文件的輸入流
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory sqlSessionFactory =new SqlSessionFactoryBuilder().build(reader);
SqlSession sqlSession = sqlSessionFactory.openSession();
Student student = sqlSession.selectOne("net.wanho.mapper.StudentMapper.getStudentById",new Student(2,"xiaoli"));
List<Student> list = sqlSession.selectList("net.wanho.mapper.StudentMapper.getStudentById",new Student(2,"xiaoli"));
List<Student> list = sqlSession.selectList("net.wanho.mapper.StudentMapper.queryStudents","xiaoli");
sqlSession.update("net.wanho.mapper.StudentMapper.updateStudent",new Student(2,"zhangli"))
sqlSession.commit();
}
}
以上就是mybatis中Sqlsession的使用過程赃阀。