文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SpringBoot整合Mybatis与MybatisPlus方法详细讲解

2023-01-28 06:05

关注

一、整合MyBatis操作

官网:MyBatis · GitHub

SpringBoot官方的Starter:spring-boot-starter-*

第三方的starter的格式: *-spring-boot-starter

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

1、配置模式

全局配置文件

@EnableConfigurationProperties(MybatisProperties.class) : MyBatis配置项绑定类。
@AutoConfigureAfter({ DataSourceAutoConfiguration.class, MybatisLanguageDriverAutoConfiguration.class })
public class MybatisAutoConfiguration{}
@ConfigurationProperties(prefix = "mybatis")
public class MybatisProperties
# 配置mybatis规则
mybatis:
  config-location: classpath:mybatis/mybatis-config.xml  #全局配置文件位置
  mapper-locations: classpath:mybatis/mapper*.xml;任意包的类路径下的所有mapper文件夹下任意路径下的所有xml都是sql映射文件。 建议以后sql映射文件,放在 mapper下
  • 容器中也自动配置好了 SqlSessionTemplate
  • @Mapper 标注的接口也会被自动扫描;建议直接 @MapperScan("com.atguigu.admin.mapper") 批量扫描就行
  • 优点:

    • 只需要我们的Mapper继承 BaseMapper 就可以拥有crud能力

    3、CRUD功能

        @GetMapping("/user/delete/{id}")
        public String deleteUser(@PathVariable("id") Long id,
                                 @RequestParam(value = "pn",defaultValue = "1")Integer pn,
                                 RedirectAttributes ra){
            userService.removeById(id);
            ra.addAttribute("pn",pn);
            return "redirect:/dynamic_table";
        }
        @GetMapping("/dynamic_table")
        public String dynamic_table(@RequestParam(value="pn",defaultValue = "1") Integer pn,Model model){
            //表格内容的遍历
    //        response.sendError
    //     List<User> users = Arrays.asList(new User("zhangsan", "123456"),
    //                new User("lisi", "123444"),
    //                new User("haha", "aaaaa"),
    //                new User("hehe ", "aaddd"));
    //        model.addAttribute("users",users);
    //
    //        if(users.size()>3){
    //            throw new UserTooManyException();
    //        }
            //从数据库中查出user表中的用户进行展示
            //构造分页参数
            Page<User> page = new Page<>(pn, 2);
            //调用page进行分页
            Page<User> userPage = userService.page(page, null);
    //        userPage.getRecords()
    //        userPage.getCurrent()
    //        userPage.getPages()
            model.addAttribute("users",userPage);
            return "table/dynamic_table";
        }

    Service

    @Service
    public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements UserService {
    }
    public interface UserService extends IService<User> {
    }

    到此这篇关于SpringBoot整合Mybatis与MybatisPlus方法详细讲解的文章就介绍到这了,更多相关SpringBoot整合Mybatis与MybatisPlus内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    软考中级精品资料免费领

    • 历年真题答案解析
    • 备考技巧名师总结
    • 高频考点精准押题
    • 资料下载
    • 历年真题
    • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

      难度     801人已做
      查看
    • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

      难度     348人已做
      查看
    • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

      难度     311人已做
      查看
    • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

      难度     432人已做
      查看
    • 2024年上半年系统架构设计师考试综合知识真题

      难度     220人已做
      查看

    相关文章

    发现更多好内容
    咦!没有更多了?去看看其它编程学习网 内容吧
    首页课程
    资料下载
    问答资讯