mysql分页插件springboot_Spring Boot 项目学习 (二) MySql + MyBatis 注解 + 分页控件 配置...

本文介绍如何在SpringBoot项目中集成MyBatis及分页插件,实现数据库操作。主要内容包括添加依赖、配置数据库连接、编写DAO层接口及其实现、创建控制器等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引言

本文主要在Spring Boot 基础项目的基础上,添加 Mysql 、MyBatis(注解方式)与 分页控件 的配置,用于协助完成数据库操作。

系列文档目录

Spring Boot 项目学习 (二) MySql + MyBatis 注解 + 分页控件 配置

创建数据表

这个过程就暂时省略了。

搭建 MyBatis

修改pom.xml,添加一下依赖

org.mybatis.spring.boot

mybatis-spring-boot-starter

${mybatis.version}

mysql

mysql-connector-java

${mysql.version}

修改配置文件application.yml

添加数据库连接

spring:

datasource:

url: jdbc:mysql://******:3306/***

username: ********

password: ********

driver-class-name: com.mysql.jdbc.Driver

代码实现

配置完,基本信息后,接下来就是代码实现方式

1.1 添加服务层接口 Dao

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

packagecom.springboot.dao;importcom.springboot.entity.Church;importorg.apache.ibatis.annotations.Mapper;importorg.apache.ibatis.annotations.Select;importjava.util.List;

@Mapperpublic interfaceChurchDao {/*** 获取指定教会/团契信息

*@paramchurchId 教会/团契标识

*@return教会/团契对象*/@Select("SELECT * FROM Church WHERE ChurchId = #{churchId}")

Church get(String churchId);/*** 获取教会/团契列表

*@return教会/团契列表*/@Select("SELECT * FROM Church")

Listlist();

}

View Code

1.2 添加服务层接口的实现(即业务逻辑层)

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

packagecom.springboot.service;importcom.springboot.dao.ChurchDao;importcom.springboot.entity.Church;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importjava.util.List;

@Servicepublic class ChurchService implementsChurchDao {

@AutowiredprivateChurchDao churchDao;/*** 获取指定教会/团契信息

*@paramchurchId 教会标识

*@return教会/团契信息*/

publicChurch get(String churchId) {returnchurchDao.get(churchId);

}/*** 获取教会/团契列表

*@return教会/团契列表*/

public Listlist() {returnchurchDao.list();

}

}

View Code

上述代码中使用到了一些注解,我们来看下这些注解表示什么意思。

@Autowired

@Autowired顾名思义,就是自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property。当然,getter看个人需求,如果私有属性需要对外提供的话,应当予以保留。

当Spring发现@Autowired注解时,将自动在代码上下文中找到和其匹配(默认是类型匹配)的Bean,并自动注入到相应的地方去。

当@Autowired进行接口注入,如果实现类有多个该怎么办?此时可以使用@Qualifier注解,如:@Qualifier("接口实现类的类名")

@Service

@Service注解,我们在代码中看到它带了一个名称areaService,如果只有一个类实现了AreaService接口的话,你不带名称也是可以的,但是如果有多个类实现了AreaService接口,那么你就需要通过一个名称来进行区分。

@Override

Java SE5新增加@Override注解,它并不是关键字,但是可以把它当作关键字使用。当你想要覆写(重写)某个方法时,可以选择添加这个注解,

1.3 添加控制器ChurchController

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

packagecom.springboot.controller;importcom.springboot.entity.Church;importcom.springboot.service.ChurchService;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RequestMethod;importorg.springframework.web.bind.annotation.RequestParam;importorg.springframework.web.bind.annotation.RestController;importjava.util.List;

@RestController

@RequestMapping("/church")public classChurchController {

@AutowiredprivateChurchService churchService;//获取指定教会/团契信息

@RequestMapping(value = "get", method =RequestMethod.GET)public String getChurch(@RequestParam("id") String churchId) {

Church church=churchService.get(churchId);returnchurch.toString();

}//获取教会/团契列表

@RequestMapping(value = "list", method =RequestMethod.GET)public Listlist() {returnchurchService.list();

}

}

View Code

分页控件的配置

1. 修改pom.xml,添加依赖

com.github.pagehelper

pagehelper-spring-boot-starter

1.2.5

2. 修改配置文件,添加基本配置

pagehelper:

helper-dialect: mysql

reasonable: true

support-methods-arguments: true

params: count==countSql

page-size-zero: true

3. 代码实现

根据不同的需求,返回的分页对象PageInfo,可以输出不同的对象结构。

/**

* 分页获取教会/团契列表

* @param page 当前页

* @param pageSize 每页显示数

* @return 教会/团契列表

*/

public PageInfo list(int page, int pageSize) {

PageHelper.startPage(page, pageSize);

List list = churchDao.list();

return new PageInfo<>(list);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值