Mybatis配置
常用依赖(pom.xml)
| |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <version>1.2.17</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.mybatis</groupId> |
| <artifactId>mybatis</artifactId> |
| <version>3.5.4</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>mysql</groupId> |
| <artifactId>mysql-connector-java</artifactId> |
| <version>8.0.31</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>javax.servlet</groupId> |
| <artifactId>jstl</artifactId> |
| <version>1.2</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <version>1.18.30</version> |
| </dependency> |
常用配置文件
log4j配置文件 resource目录下创建(log4j.properties)
| |
| log4j.appender.stdout=org.apache.log4j.ConsoleAppender |
| log4j.appender.stdout.Target=System.out |
| log4j.appender.stdout.layout=org.apache.log4j.PatternLayout |
| log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %m%n |
| |
| |
| |
| |
| |
| |
| |
| log4j.rootLogger=debug,stdout |
Mybatis配置文件 resource目录下创建(mybatis-config.xml)
| <?xml version="1.0" encoding="UTF-8" ?> |
| <!DOCTYPE configuration |
| PUBLIC "-//mybatis.org//DTD Config 3.0//EN" |
| "http://mybatis.org/dtd/mybatis-3-config.dtd"> |
| <configuration> |
| <environments default="development"> |
| <environment id="development"> |
| <transactionManager type="JDBC"/> |
| <dataSource type="POOLED"> |
| <property name="driver" value="${driver}"/> |
| <property name="url" value="${url}"/> |
| <property name="username" value="${username}"/> |
| <property name="password" value="${password}"/> |
| </dataSource> |
| </environment> |
| </environments> |
| <mappers> |
| <mapper resource="org/mybatis/example/BlogMapper.xml"/> |
| </mappers> |
| </configuration> |
Mybatis 数据源的提取 resource目录下创建(db.properties)
| driver = com.mysql.cj.jdbc.Driver |
| url = jdbc:mysql://localhost:3306/qinmanage |
| username=root |
| password=127003 |
Mybatis 数据源的提取 resource目录下创建(db.properties)
| db.driverName = com.mysql.cj.jdbc.Driver |
| db.url = jdbc:mysql://localhost:3306/qinmanage |
| db.username=root |
| db.password=127003 |
Mybatis核心的配置文件(mybatis-config.xml)中引入db.properties文件
| <?xml version="1.0" encoding="UTF-8" ?> |
| <!DOCTYPE configuration |
| PUBLIC "-//mybatis.org//DTD Config 3.0//EN" |
| "http://mybatis.org/dtd/mybatis-3-config.dtd"> |
| <configuration> |
| |
| <properties resource="db.properties"/> |
| <environments default="development"> |
| <environment id="development"> |
| <transactionManager type="JDBC"/> |
| <dataSource type="POOLED"> |
| |
| |
| |
| <property name="driver" value="${db.driverName}"/> |
| <property name="url" value="${db.url}"/> |
| <property name="username" value="${db.username}"/> |
| <property name="password" value="${db.password}"/> |
| </dataSource> |
| </environment> |
| </environments> |
| <mappers> |
| <mapper resource="mapper/StudentMapper.xml"/> |
| <mapper resource="mapper/UserMapper.xml"/> |
| </mappers> |
| </configuration> |
实体类对象别名的设置
| <?xml version="1.0" encoding="UTF-8" ?> |
| <!DOCTYPE configuration |
| PUBLIC "-//mybatis.org//DTD Config 3.0//EN" |
| "http://mybatis.org/dtd/mybatis-3-config.dtd"> |
| <configuration> |
| |
| <properties resource="db.properties"/> |
| |
| |
| |
| |
| <typeAliases> |
| |
| |
| |
| |
| |
| <package name="com.bboy.pojo"/> |
| </typeAliases> |
| <environments default="development"> |
| <environment id="development"> |
| <transactionManager type="JDBC"/> |
| <dataSource type="POOLED"> |
| |
| |
| |
| <property name="driver" value="${db.driverName}"/> |
| <property name="url" value="${db.url}"/> |
| <property name="username" value="${db.username}"/> |
| <property name="password" value="${db.password}"/> |
| </dataSource> |
| </environment> |
| </environments> |
| <mappers> |
| <mapper resource="mapper/StudentMapper.xml"/> |
| <mapper resource="mapper/UserMapper.xml"/> |
| </mappers> |
| </configuration> |
传入的参数类型 parameterType/parameterMap
| 1. parameterType/parameterMap(使用很少) |
| 1.1 表示传入的参数类型(基本数据类型、引入数据类型) |
| 1.1.1 传入基本数据类型 |
| parameterType="int"/parameterType="boolean" |
| 1.1.2 传入引用数据类型 |
| parameterType="包名+类名" |
| parameterType="com.bboy.pojo.Student" |
| parameterType="别名" |
| parameterType="Student" |
| 1.1.3 传入map,具体使用的时候,使用的是map的键 |
返回值类型 resultType/ resultMap
| 2. resultType |
| 2.1 返回值类型 |
| 2.2 需求:查询出来的类名必须与返回的实体类对象的属性名一直 |
| select name,age from student |
| Student(name,age) |
| 2.3 思考:如果查询出来的列名与实体类的属性名不一致? |
| |
| |
如果查询出来的列名与实体类的属性名不一致 使用resultMap进行匹配
| 3. resultMap |
| 3.1 返回值的类型 |
| 3.2 需求:查询出来的列名可以和实体类中的属性名不一致时,使用resultMap进行匹配 |
| <?xml version="1.0" encoding="UTF-8" ?> |
| <!DOCTYPE mapper |
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| <mapper namespace="com.bboy.mapper.StudentMapper"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <resultMap id="studentmap" type="Student"> |
| <id column="t-id" property="id"/> |
| <result column="t_name" property="name"/> |
| <result column="t_birth" property="birth"/> |
| <result column="t_sex" property="sex"/> |
| </resultMap> |
| |
| |
| |
| <select id="listStudents" resultMap="studentmap"> |
| select *from student; |
| </select> |
| </mapper> |
配置映射文件 resource目录下(StudentMapper.xml)尽量与mapper相匹配
| <?xml version="1.0" encoding="UTF-8" ?> |
| <!DOCTYPE mapper |
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| <mapper namespace="com.bboy.mapper.StudentMapper"> |
| <select id="selectBlog" resultType="Blog"> |
| select * from Blog where id = #{id} |
| </select> |
| </mapper> |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!