您的位置:首页 > 编程语言 > Java开发

JavaWeb学习笔记-mybatis-03-根据id查找

2018-01-04 20:23 585 查看

建立entity

public class User {
//属性名与数据库相对应
private int id;
private String username;
private String sex;
private Date birthday;
private String address;

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {

4000
this.username = username;
}

public String getSex() {
return sex;
}

public void setSex(String sex) {
this.sex = sex;
}

public Date getBirthday() {
return birthday;
}

public void setBirthday(Date birthday) {
this.birthday = birthday;
}

public String getAddress() {
return address;
}

public void setAddress(String address) {
this.address = address;
}
}


建立User.xml映射文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namesapce命名空间,对sql进行分类化管理,sql隔离-->
<!--使用mappper代理方法,namespace有重要特殊作用-->
<mapper namespace="test">
<!--在映射文件中配置很多sql语句-->
<!--通过id查询用户表的记录-->
<!--通过select执行数据库查询
id:标识映射文件中的sql,称为statement的id
将sql语句封装到mappedStatement对象中,所以将id称为statement的id
#{}表示占位符
#{id}:id表示接入输入的参数,参数的名称就是id
如果输入参数类型为简单类型,参数名可以任意,value可以为其他名称

paramterType:指定输入类型
resultType:指定sql的输出结果所映射的Java对象类型

-->
<select id="findUserByID" parameterType="int" resultType="com.sws.entity.User">
select * from user where id = #{id}
</select>
</mapper>


SqlMapConfig.xml添加映射文件

<!--加载映射文件-->
<mappers>
<mapper  resource="User.xml"/>
</mappers>


程序编写

public void findUserByIdTest() throws IOException {
//mybatis配置文件
String resource = "SqlMapConfig.xml";
//得到配置流
InputStream inputStream = Resources.getResourceAsStream(resource);
//创建会话工厂
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream)''
//通过工厂得到SqlSession
SqlSession sqlSession = sqlSessionFactory.openSession();
//通过sqlSession操作数据库
//第一个参数:映射文件statement的id,等于=namesapce+"."+statement的id
//第二个参数:指定和映射文件所匹配的类型参数
//sqlSession.selectOne结果是与映射文件所匹配的resultType类型的对象
User user =  sqlSession.selectOne("test.findUserByID",1);
System.out.println(user);
//释放资源
sqlSession.close();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: