Mybatis入门

使用mybatis框架首先需要导入核心jar包和所依赖的jar,配置核心文件,通常以“SqlMapConfig.xml”命名,核心配置文件中配置一些链接数据库的四个参数,以及使用哪种方式,<mappers></mappers>标签用来配置加载映射文件,子标签<mapper></mapper>中有三个属性,url,resource,class,url是映射文件的绝对路径,一般不建议使用,常用的resource,resource中写映射文件的名称即可。

映射文件常常需要我们自己手动的编写,实现的功能不一样,sql语句也不相同,所有要实现一种功能,就需要编写sql语句

mybatis基本的数据类型:String,Integet,Long,Double,Float,Short,Character,Byte,Boolean,我们知道基本的数据类型有八种,对应的包装类就有八种,mybatis框架将String也作为基本的数据类型

<mapper namespace="test">

<select id="findAllByid" parameterType="int" resultType="cn.itheima.pojo.User">

select * from user where id=#{id}

</select>

namespace:名称空间,用于隔离SQL语句

id:自己定义的名称,唯一的标识

parameterType:传入参数的类型,可以写基本数据类型,也可以写包装类

resultType:返回结果集类型,(javabean)

mybatis框架有占位符,拼接符的概念

占位符 #{}:起到占位的作用,如果传入的参数是基本数据类型,名称可以任意写

拼接符 ${}:字符串原样拼接,如果传入的参数是基本数据类型,名称必须写value(SQL注入的风险,所有慎重使用)

返回值值结果为集合,应该调用selectList方法,这个方法返回值就是一个集合,所以映射文件中配置成集合泛型的类型

占位符与拼接符的应用场景

简单的来说,当SQL语句中有等号的情况写应给使用占位符,当SQL语句中有like等关键字的时候,应给使用拼接符

<select id="findAllByusername" parameterType="String" resultType="cn.itheima.pojo.User">

SELECT * FROM USER WHERE username LIKE '%${value}%'

</select>

 </mapper>

测试代码

   

@Test

public void testFindAllByid() throws Exception{

String resource ="SqlMapConfig.xml";

//通过流将核心配置文件读取出来

InputStream inputStream = Resources.getResourceAsStream(resource);

//通过核心配置文件输入流创建会话 工厂

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);

//通过工厂创建会话

SqlSession openSession = factory.openSession();

//selectOne参数是名称空间+ID 传入的参数 = 1

 User user = openSession.selectOne("test.findAllByid", 1);

 System.out.println(user);

 openSession.close();

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值