
Mybatis
to be excellent
这个作者很懒,什么都没留下…
展开
-
缓存
一级缓存默认开启也叫本地缓存(SqlSession级别的) SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); User user = mapper.queryUser(1); System.out.println(user); System.out.println原创 2021-05-17 16:05:33 · 99 阅读 · 0 评论 -
动态SQL
什么是动态SQL?动态SQL是指根据不同条件生成不同的SQL语句IF: <select id="getBlogIf" parameterType="map" resultType="blog"> select * from mybatis.blog where 1=1 <if test="title != null"> and title=#{title} </if> &l原创 2021-05-17 14:38:55 · 72 阅读 · 0 评论 -
多对一,一对多
多对一:一、子查询<select id="getStudent" resultMap="StudentMap"> select * from mybatis.student </select> <resultMap id="StudentMap" type="Student"> <!--复杂的属性要单独处理 如果是对象用association 集合使用collection-->原创 2021-05-16 15:54:23 · 77 阅读 · 1 评论 -
Lombok
1.安装插件2.导包3.使用注解常用注解:@Data:无参构造,getter,setter,toString,hashcode,equals@AllArgsConstructor:全参构造@NoArgsConstructor:无参构造lombok注解:@Getter and @Setter@FieldNameConstants@ToString@EqualsAndHashCode@AllArgsConstructor, @RequiredArgsConstructor and @No原创 2021-05-16 10:38:06 · 63 阅读 · 0 评论 -
使用注解开发
注解CRUD@Param注解:参数时基本类型时要用上这个注解,特别是有多个参数的时候 @Select("select * from user where id=#{id}") User getUserBtId(@Param("id") int id);这里的sql语句中用的#{id}和@Param是相同的,即是名称由其决定,就算把getUserById方法参数名称改成"id22"都还是可以查询;同理,用xml配置时,也可以用@Param注解...原创 2021-05-16 10:20:46 · 86 阅读 · 0 评论 -
分页
sql中limit使用来进行分页原创 2021-05-15 14:50:34 · 88 阅读 · 0 评论 -
日志
日志工厂标准的日志工厂模式在核心配置文件中添加setting标签,设置日志工厂,注意setting标签的位置,需要更改日志模式,只要改value就可以LOG4J日志模式Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配原创 2021-05-15 14:04:53 · 98 阅读 · 0 评论 -
ResultMap
当实体类中的属性名和数据库中的字段名不一致时,会出现查不出来的现象,例如:属性名为password,字段名为pwd解决方法:1.查询语句取别名 select pwd as password from …2.ResultMap介绍:结果集映射首先,查询语句的返回值用ResultMap不用ResultType;然后,在mapper大标签里添加resultmap标签,里面设置标签的id,和映射的类型typeresultmap标签里,column是数据库查询的字段(列),property是需要映射成原创 2021-05-15 10:58:39 · 139 阅读 · 0 评论 -
映射器说明
MapperRegistry:注册绑定mapper文件方式一:路径绑定 <mappers> <mapper resource="com/liu/dao/UserMapper.xml"/> </mappers>方式二:class绑定 <mappers><!-- <mapper resource="com/liu/dao/UserMapper.xml"/>--> &l原创 2021-05-15 10:21:05 · 80 阅读 · 0 评论 -
配置之属性优化、别名
环境配置(environments)在mybatis-config.xml中mybatis可以配置成适应很多环境每个sqlSessionFactory只能选择一种环境属性properties可以通过properties属性来实现引用配置原创 2021-05-15 10:11:27 · 140 阅读 · 0 评论 -
万能的Map和模糊查询
利用Map来给存储传递参数 int addUser2(Map<String ,Object> map); <insert id="addUser2" parameterType="Map" > insert into user (id,name,pwd) values(#{userid},#{username},#{password}); </insert> public void addUser2(){ .原创 2021-04-03 13:36:28 · 238 阅读 · 0 评论 -
实现增删改查
实现增删改查1.UserMapper接口要在UserMapper.xml配置中的namespace中绑定这个接口在mybatis-config.xml中绑定UserMapper.xml这个配置文件<!--namespace:命名空间,绑定一个对应的Mapper接口--><mapper namespace="com.lonzo.dao.UserMapper"> <mappers> <mapper resource="com/lonzo原创 2021-04-03 13:06:52 · 409 阅读 · 0 评论 -
2021-03-30Mybatis 第一个程序
Mybatis 第一个程序第一步:连接数据库注意testconnection会出错,因为时区问题将时区改为Asia/Shanghai第二步:配置mybatis-config.xml配置文件官方文档里有说明示例<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybat原创 2021-03-30 22:17:37 · 89 阅读 · 0 评论