随笔分类 - Mybatis
摘要:一、SqlSessionFactory对象 1、SqlSessionFactory是MyBatis的关键对象,它是个单个数据库映射关系经过编译后的内存镜像。 2、SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象类获得。而SqlSessionFa
阅读全文
摘要:一、配置c3p0连接池 1、导包: c3p0包 :c3p0-0.9.5.2.jar 2、创建自己的数据库连接池类继承UnpooledDataSourceFactory的类: Mybatis没有帮开发者实现c3p0 数据库连接池,故需要使用者自己实现c3p0来加载数据连接池。其实很简单的,只要继承Un
阅读全文
摘要:一、使用MyBatis注解开发,可以省去类配置文件,简洁方便。但是比较复杂的SQL和动态SQL还是建议书写类配置文件。 二、具体实例: 1、定义实体类(Employee): public class Employee implements Serializable { private static
阅读全文
摘要:一、mybatis提供了缓存机制减轻数据库压力,提高数据库性能 二、mybatis的缓存分为两级:一级缓存、二级缓存 1、一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间
阅读全文
摘要:一、需求:查询用户信息,有时候需要关联查出部门信息。 第一种方法:我们直接关联查询出所有用户和部门的信息 select * from tb_user u ,tb_department d where u.dep_id = d.dep_id; 分析: ①这里我们一次查询出所有用户信息,需要什么部门信息
阅读全文
摘要:Mybatis 动态SQL,通过 if, choose, when, otherwise, trim, where, set, foreach等标签,可组合成非常灵活的SQL语句,从而在提高 SQL 语句的准确性的同时,也大大提高了开发人员的效率。 以 User 表为例来说明: 1、if 语句 根据
阅读全文
摘要:一、一对一的查询(<assocation>) 1、创建User类(用户类): public class User implements Serializable { private static final long serialVersionUID = 6716332190979093860L;
阅读全文
摘要:一、JDBC的问题 1、数据库连接创建、释放频繁造成系统资源浪费,从而影响系统性能。如果使用数据库连接池可解决此问题。 2、Sql语句在代码中硬编码,造成代码不易维护,实际应用中sql变化的可能较大,sql变动需要改变java代码。 3、使用preparedStatement向占有位符号传参数存在硬
阅读全文
摘要:一、Mybatis的全局配置文件 1、SqlMapConfig.xml(名称可变)是mybatis的全局配置文件,配置内容如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对
阅读全文