Mybatis-随笔

${}和#{}号的区别

#相当于对数据 加上 双引号,?占位符

where name='aaa'

$相当于直接显示数据 字符串拼接

where name=aaa 可以用作order by ${}

#################################

对于模糊查询sql语句中可以使用concat函数

################################

插入成功返回主键id

<insert id="add" parameterType="EStudent" useGeneratedKeys="true" keyProperty="id">

#############################随笔小结

Mybatis

导包

config.xml 配置总的jdbc 数据库映射

可以使用properties文件存储连接等属性,
<properties resource="db.properties"/>

为实体类定义别名
<typeAliases> <typeAlias type="com.atguigu.ibatis.bean.User" alias="_User"/> </typeAliases>

导入log4j
创建log4j.properties文件 进行配置

配置相应的Mapper 进行增删改查

传入值类型 返回值类型 自动当作map(多值) resultType resultMap(映射)

测试
Resource 解析config文件
sessionFactory 生产session(类似于connection) session.selectOne.......

后面可以换成接口
Mapper 的namespace指向接口 xml算是具体实现 ud=session. 反射UserDao.class

resultMap 中 是各种映射
id 唯一标识
result
association 单个对象
collection 集合对象 字段名 集合中对象的类型

逆向工程,导包mybatis-generator-core-1.3.5.jar
配置generator.xml文件,
配置java生成

普通
<mapper namespace="com.zhiyou100.xf.dao.UsersDao">命名空间
session.selectOne("com.zhiyou100.xf.mapper.UserMapper.selById", 3);
配合
结合接口 统一给个接口 可能更方便管理,直观
<mapper namespace="com.zhiyou100.xf.dao.UsersDao">命名空间指向操作接口
UsersDao ud=session.getMapper(UsersDao.class);

分页 导包,

猜你喜欢

转载自www.cnblogs.com/accc111/p/11449345.html