org.apache.ibatis.annotations不存在的问题
org.apache.ibatis.annotations不存在
今天遇到了一个很有意思的bug。有人(还不止一个人)来问我,为什么项目启动不了,我说不可能啊,我这不跑得好好的吗,而且成功启动的也不止我一个啊。然后他就说,不信你来看,我过去一看,果然如此:
这就很有意思了。是不是配置文件的问题?我检查了一下,似乎并没有什么问题,而且这代码正在我本地跑着呢:
<!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency>
焦头烂额了半天,我突然想到,是不是Maven版本的问题?因为之前看书的时候,里面提到过,不要使用IDE内嵌的Maven,因为IDE内嵌的版本不一定一致,而版本不一致很容易导致构建行为的不一致。一查,他用的是2017年的IDEA。而这个包的发布时间呢?2018年3月14日。
于是,我让他更新一下版本,问题解决。话说写Maven配置的时候不在注释里写版本真的没问题吗……
bug解决:无法引入org.apache.ibatis.annotations.Select
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency>
@Select标签的方式搭建SpringBoot的Mybatis框架
xml搭建SpringBoot的Mybatis框架
package com.wl.course.dao; import com.wl.course.model.User; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Result; import org.apache.ibatis.annotations.Results; import org.apache.ibatis.annotations.Select; import java.util.List; /** * @Author: wl * @Description: * @DateTime: 2020/5/7 9:51 * @Params: * @Return */ public interface UserMapper { void deleteUser(Long id); @Select("select * from user where id = #{id}") @Results({ @Result(property = "username", column = "username"), @Result(property = "password", column = "password") }) User getUser(Long id); @Select("select * from user where id = #{id} and username=#{name}") User getUserByIdAndName(@Param("id") Long id, @Param("name") String username); @Select("select * from user") List<User> getAll(); // 使用xml方式 User getUserByName(String username); }
@RestController这个是ResponseBody和Controller的集合,意思是return的数据都变成json的格式,返回到前端,不会跳转界面
如果想跳转页面的话,就需要把RestController改成Controller,就会跳转页面了。
@GetMapping("/getBlogger") public String getBlogger(Model model) { Blogger blogger = new Blogger(1L, "wl", "123456"); model.addAttribute("blogger", blogger); return "blogger"; }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
如何解决SpringBoot2.6及之后版本取消了循环依赖的支持问题
循环依赖指的是两个或者多个bean之间相互依赖,形成一个闭环,SpringBoot从2.6.0开始默认不允许出现Bean循环引用,解决方案包括在全局配置文件设置允许循环引用存在、在SpringApplicationBuilder添加设置允许循环引用、构造器注入2024-10-10基于idea 的 Java中的get/set方法之优雅的写法
这篇文章主要介绍了基于idea 的 Java中的get/set方法之优雅的写法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-01-01
最新评论