网站开发项目的设计与实现,北京十大活动策划公司,网站模板大全官网,公司网站域名价格一、全局配置文件中的属性 mybatis全局配置中的文件非常多#xff0c;主要有如下几个#xff1a; properties#xff08;属性#xff09;settings#xff08;全局配置参数#xff09;typeAliases#xff08;类型别名#xff09;typeHandlers#xff08;类型处理器主要有如下几个 properties属性settings全局配置参数typeAliases类型别名typeHandlers类型处理器objectFactory对象工厂plugins插件environments环境集合属性对象environment环境集合属性子对象transactionManager事务管理器dataSource数据源mappers映射器 1.1、properties properties可以用来引入一个外部配置最常见的例子就是引入数据库的基本配置信息例如在resources目录新建了一个db.properties文件内容如下 db.drivercom.mysql.cj.jdbc.Driver
db.urljdbc:mysql://localhost:3306/20231101_mybatis?useSSLfalseuseUnicodetruecharacterEncodingUTF8serverTimezoneGMT
db.usernameroot
db.password123456mybatis-config可配置为如下 ?xml version1.0 encodingUTF-8 ?
!DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd
configuration!-- 引入外部的配置文件 --properties resourcedb.properties/propertiesenvironments defaultdeploymentenvironment iddeploymenttransactionManager typeJDBC/transactionManagerdataSource typePOOLED!--# yml中的写法xml中要把转换为 amp;driver: jdbc:mysql://localhost:3306/20231101_mybatis?useSSLfalseuseUnicodetruecharacterEncodingUTF8serverTimezoneGMT--!--property namedriver valuecom.mysql.cj.jdbc.Driver/property nameurl valuejdbc:mysql://localhost:3306/20231101_mybatis?useSSLfalseamp;useUnicodetrueamp;characterEncodingUTF8amp;serverTimezoneGMT/property nameusername valueroot/property namepassword value123456/--!-- 读取外部配置文件中的信息进行注入 --property namedriver value${db.driver}/property nameurl value${db.url}/property nameusername value${db.username}/property namepassword value${db.password}//dataSource/environment/environments!--配置mapper的位置注意事项如果xxxMapper.xml是在resources目录配置的那么需要创建和src中mapper同名的Directory才行否则的话就会报org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)错误1如果xxxMapper.xml文件和xxxMapper在同一个目录需要配置为package方式并且修改pom.xml的配置信息2如果xxxMapper.xml文件想单独配置在resources目录如将其放在resources/mappers目录可以使用mapper的方式--mappers!----package nameorg.star.mapper/!--mapper resourcemappers/UserMapper.xml/mapper--/mappers/configuration
1.2、settings 1.3、typeAliases
typeAliases!--批量起别名此处配置的是为 org.star.entity.model 包下的所有持久层类起别名起别名规则首字母小写例如UserDO的别名是userDO这样配置的话在xxxMapper.xml中的返回值就不用写类的完整路径了--package nameorg.star.entity.model/
/typeAliases
1.4、typeHandlers 八种基本数据类型的增删改查之所以能够处理成功就是因为有上边的各种类型的默认处理器这些处理器处理基本数据类型够用了但是要是处理特殊类型就需要我们自定义类型处理器了比如User有一个爱好字段类型为 private ListString interests; 在数据库中对应的类型为varchar那么这种情况下就需要我们自定义类型处理器了这个自定义的类型处理器需要满足如下功能 1数据存储时自动地将List集合转换为字符串格式自定义 2数据查询时将查询到的字符串在转换为List集合 1.5、mappers xxxMapper.xml配置位置的几种写法 mappers!-- 方式一 --!--mapper resourcemappers/UserMapper.xml/mapper--!--方式二使用绝对路径不推荐--!--mapper urlD:\augenstemngitee\mybatis-parent\mybatis\src\main\java\org\star\mapper\UserMapper.xml/mapper--!-- 方式三使用mapper接口路径注意事项此种方式要求mapper接口和映射文件的名称相同且放在同一个目录中 --!--mapper classorg/star/mapper/UserMapper.xml/mapper--!-- 方式四注册指定包下的所有mapper接口注意事项此种方式要求mapper接口和映射文件的名称相同且放在同一个目录中 实际项目中多采用此种方式推荐 --package nameorg.star.mapper/
/mappers