![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MyBatis
文章平均质量分 64
HDLaZy
生活不止眼前的CRUD,还有远方的框架源码!
展开
-
MyBatis11-分页插件
分页插件依赖和配置 1:依赖 <!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.2.0</原创 2022-03-09 15:42:29 · 53 阅读 · 0 评论 -
MyBatis10-逆向工程
逆向:正向 正向:java实体类生成数据表 逆向:数据表生成实体类对象和映射文件,接口以及相应的操作 MyBatis的逆向工程有两种模式: MyBatis3Simple: 生成基本的CRUD MyBatis3: 生成带条件的CRUD 1:引入依赖插件 逆向工程插件: <!-- 控制Maven在构建过程中相关配置 --> <build> <!-- 构建过程中用到的插件 --> <plugins> <!-- 具体插件,逆向工程原创 2022-03-09 15:40:17 · 141 阅读 · 0 评论 -
MyBatis09-缓存
缓存: 当查询到某些数据时,会将此数据缓存起来,当再次使用时,直接从缓存中获取,大大提高响应速度。 1:MyBatis一级缓存 MyBatis默认开启一级缓存,sqlSession级别的缓存,即当使用同一个sqlSession做同一次查询时,会从缓存中获取数据。 2:一级缓存失效的四种情况 情况1: 不同的SqlSession的查询: 当使用sqlSession1和sqlSession获取同一个映射后,调用同一个查询方法,sql语句执行两次,说明一级缓存失效。 情况2: 同一个SqlSession但是查原创 2022-03-09 15:33:53 · 81 阅读 · 0 评论 -
MyBatis08-动态Sql
动态Sql: 动态Sql:MyBatis的动态Sql为了解决拼接sql语句字符串的问题,它根据特定条件动态的拼接sql语句。 Emp表和Emp实体类: public class Emp { private Integer id; private String empName; private Integer age; private String sex; private String email; private Dept dept;//多对一,设置一的对象原创 2022-03-09 15:00:13 · 166 阅读 · 0 评论 -
MyBatis07-延迟加载
延迟加载: 当我们对拥有一对多或者多对一关系的数据进行查询时,可以使用延迟加载。 比如: 员工存在于部门中,当我们查询员工信息时,同时会查询到部门信息。但我们当前只需要员工信息,不需要部门信息,这时就可以使用延迟加载,需要到员工的部门时,再去加载关于部门的查询。从而可以减少数据库的查询压力。 全局配置: MyBatis关于延迟加载的全局配置: lazyLoadingEnabled:是否开启懒加载 aggressiveLazyLoading:积极加载,一次查询所有的信息 <settings>原创 2022-03-08 15:36:44 · 855 阅读 · 0 评论 -
MyBatis06-自定义ResultMap
1:解决数据表字段名和实体类属性名不一致问题 方式1:设置数据表字段别名,别名为实体类属性名 emp_name -> empName select id,emp_name empName,age,sex,email from t_emp 方式2:通过MyBatis全局配置开启驼峰转换 比如:emp_name->empName <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </s原创 2022-03-08 15:08:40 · 883 阅读 · 0 评论 -
MyBatis05-特殊Sql
1MyBatis的模糊查询 例子:查询名字含有李的人 Mapper接口方法名字: 根据用户名模糊查询用户信息 List<User> getUserByLike(@Param("userName") String userName); Mapper映射: 使用#{}产生的问题: <select id="getUserByLike" resultType="User"> select * from t_user where username like '%#{u原创 2022-03-07 22:03:14 · 157 阅读 · 0 评论 -
MyBatis04-select功能
数据表: 实体类: public class User { private Integer id; private String username; private String password; private Integer age; private String sex; private String email; //构造方法,get/set,toString() } 1:查询一个实体类对象 a>实体类对象接收 b>原创 2022-03-06 19:26:23 · 420 阅读 · 0 评论 -
MyBatis03-获取参数
1:使用JDBC获取参数的两种方式 字符串拼接方式 占位符方法 @Test public void testJDBC() throws Exception{ String name=""; Class.forName(""); Connection connection = DriverManager.getConnection("", "", ""); //字符串拼接 // PreparedStatement preparedStatement = connect原创 2022-03-02 02:59:24 · 150 阅读 · 0 评论 -
MyBatis02-log4j
如何在MyBatis框架中使用日志log4j? 1:引入log4j的依赖 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> 2:在resources下创建原创 2022-03-02 02:24:54 · 142 阅读 · 0 评论 -
MyBatis01-maven依赖以及运行
快速搭建一个MyBatis环境以及运行第一个MyBatis程序 1:创建一个Maven项目 打包方式为jar包,引入相关依赖(mybatis,musql驱动,单元测试) pom.xml <!--打包方式jar--> <packaging>jar</packaging> <dependencies> <dependency> <groupId>mysql</groupId>原创 2022-03-01 06:40:26 · 459 阅读 · 0 评论