1。springboot整合mybatis mapper注入时显示不能自动装配,如果强行写(value =false),可能会报NullPointException异常
dao层加注解@ component (value=" https://www.yisu.com/zixun/首字母小写的接口名如usermap -> usermap”)
dao层还可以加注解@Mapper
2。服务器的时区价值”Ö乙¹ u±e×¼ ʱ¼ ä“无法识别或代表超过alt=" springboot整合mybatis中的问题及出现的一些问题小结">
3. . lang。IllegalArgumentException: DefaultSerializer需要一个可序列化的载荷,但收到一封[xxx]
类型的对象解决:实体对象类没有序列化,需要实现Serializable
springboot整合mybatis非常非常的简单,简直简单到发指。但是也有一些坑,这里我会详细的指出会遇到什么问题,并且这些配置的作用
整合mybatis,无疑需要mapper文件,实体类,dao层,数据库连接池.....也就没了。
先放配置application.yml
春天: 数据源: 类型:com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver 过滤器:统计 maxActive: 20 initialSize: 1 maxWait: 60000 minIdle: 1 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 300000 validationQuery:选择“x” testWhileIdle:真 testOnBorrow:假 testOnReturn:假 poolPreparedStatements:真 maxOpenPreparedStatements: 20 名称:测试 url: jdbc: mysql://localhost: 3306/mama-bike& # 63; useUnicode=true& characterEncoding=UTF-8& zeroDateTimeBehavior=convertToNull 用户名:根 密码:根 mybatis: #告诉你春天的映射器的位置。 mapper-locations:类路径:com/coder520/mamabike/* */* * . xml 春天#告诉你的实体类的位置 type-aliases-package:类路径:com.coder520.mamabike。* * .entity 日志: 配置类路径:logback.xml
dao层接口,,,,,//就简单的写一个方法
公共接口usermap { int插入(用户记录); }
映射器
& lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比; & lt; !DOCTYPE mapper公共”——//mybatis.org//DTD mapper 3.0//EN”“http://mybatis.org/dtd/mybatis-3-mapper.dtd”的在=癱om.coder520.mamabike.user.dao & lt;映射器名称空间。祝辞usermap”; & lt; resultMap id=" BaseResultMap " type=" com.coder520.mamabike.user.entity。用户“比; & lt; id列=癷d”属性=" id " jdbcType=" BIGINT "/比; & lt;结果列=瓣浅啤笔粜?瓣浅啤眏dbcType=" VARCHAR "/比; & lt;结果列=癳nable_flag”属性=癳nableFlag jdbcType”=胺浅P〉恼?比; & lt;结果列=皏erify_flag”属性=皏erifyFlag jdbcType”=胺浅P〉恼?比; & lt;结果列=癶ead_img”属性=癶eadImg jdbcType”=癡ARCHAR”/比; & lt;结果列=耙贫笔粜?耙贫眏dbcType=" VARCHAR "/比; & lt;/resultMap> & lt; sql id=癇ase_Column_List”比; id、昵称、enable_flag verify_flag head_img、移动 & lt;/完成; & lt;插入id="插入" parameterType=" com.coder520.mamabike.user.entity。用户“比; 插入用户(id、昵称、enable_flag verify_flag head_img、移动 ) 值(# {id, jdbcType=BIGINT}, #{昵称,jdbcType=VARCHAR}, # {enableFlag jdbcType=非常小的整数}, # {verifyFlag jdbcType=非常小的整数},# {headImg jdbcType=VARCHAR}, #{移动,jdbcType=VARCHAR} ) & lt;/insert> & lt;/mapper>
主方法
@SpringBootApplication @ComponentScan (basePackages={" com.coder520.mamabike "}) @MapperScan (basePackages=癱om.demo.user.mapper”) 公开课MamaBikeApplication { 公共静态void main (String [] args) { SpringApplication.run (MamaBikeApplication.class, args); } }
需要注意的是,dao层接口春天怎么会知道呢?这里就需要<代码> @MapperScan (basePackages=癱om.demo.user.mapper”) 代码>这个注解来指定mapper接口的位置。用<代码> @ComponentScan (basePackages={" com.coder520.mamabike "}) 代码>这个注解来让春天扫描我们指定包下的注解。
如果我们不用@MapperScan这个注解的话,也可以在接口类的上方加上@Mapper这个注解也可以。
以上所述是小编给大家介绍的springboot整合mybatis中的问题及出现的一些问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!