MyBatis入门

    科技2022-07-11  87

    对最近学的MyBatis进行了一个小总结,学的慢,忘的快,多记录,常进步。

    一、配置信息

    MyBatis的配置文件是MyBatis的关键之处,这里出了错误那不用想了你肯定会遇到各种各样的问题,MyBatis的官网已经把这些解释的非常详细了,我就不写那么多了。

    官网传送门: https://mybatis.org/mybatis-3/zh/index.html

    这里要注意: 这些配置标签是有顺序的,可以不配置,一旦配置就要按照顺序,否则会报错 properties>settings>typeAliases>typeHandlers>objectFactory>objectWrapperFactory>reflectorFactory>plugins>environments>databaseIdProvider>mappers

    二、基础增删改查

    说这些之前先提醒一下,在对数据库进行增删改的时候需要进行一个sqlSession.commit()动作,如果觉得每次都要这样很麻烦的话,那我们可以在MyBatisUtils类生成SqlSessio对象时使用sqlSessionFactory.openSession(true)将这个参数置为true,那就可以避免多次commit.

    public static SqlSession getSqlSession(){ return sqlSessionFactory.openSession(true); }

    1、查

    通过id查找信息 UserMapper.java文件: 模糊查询

    2、增

    使用Map添加数据信息

    3、改

    4、删

    三、注解增删改查

    1、查 2、增 3、改 4、删 @Param注解:

    基本类型或者String类型需要加上引用类型不需要添加如果只有一个基本类型可以忽略SQL中引用的就是括号里的属性名

    四、分页查询

    MySQL分页 主要使用limit进行分页 还可以使用RowBounds进行分页,这是一种基于Java的分页

    五、复杂查询

    首先要有两个相互关联的数据库表Student和Teacher,Teacher的id作为Student的外键。

    六、动态Sql

    动态Sql是MyBatis中最重要的一部分应用了,它极大的降低了sql语句的复杂度。 当有大量重复的sql语句时,我们可以使用sql片段来让我们的代码看起来不那么的冗长。

    七、缓存

    Processed: 0.016, SQL: 8