springboot 整合mybatis,pagehelper。测试类。
报名立减200元。暑假直降6888。
遇到的异常。
1.这是在使用mybatis成功连接数据库后,通过service层调用dao层出现的异常。
异常原因:在启动类上面的注解@MapperScan没有指定到dao层的包名上。
错误写法:
import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication //开启通用注解扫描 @MapperScan(basePackages = {"com.chenxin.springboot_0702"}) //因为这里没有指定到dao层的包名上,所以报错 invalid bound statement (not found). @EnableAutoConfiguration public class Run {public static void main(String[] args) {SpringApplication.run(Run.class, args);} }
正确写法:
@SpringBootApplication //开启通用注解扫描 @MapperScan(basePackages = {"com.chenxin.springboot_0702.dao"}) //指定到dao层的包名。 @EnableAutoConfiguration public class Run {public static void main(String[] args) {SpringApplication.run(Run.class, args);} }
2、定义了相同的Controller类名。是之前学习时,添加的类。
3、单元测试是更新到相同记录。
4、使用pagehelper时,浏览器测试路径没有传参。
正确写法:http://localhost:8080/getAll?pageNum=1&pageSize=5。参数名要和方法参数名相同。
*****************************************异常就这些了。***************************************************
正题代码:
接口中分页查询的方法:
import com.chenxin.springboot_0702.model.User; import java.util.List;public interface UserService {//分页查询方法public List<User> find(int pageNum, int pageSize) throws Exception;//查询public List<User> findAll() throws Exception;public User findById(long id) throws Exception;public List<User> findByPhone(String phone) throws Exception;//新增public long save(User user) throws Exception;//删除public boolean delete(long id) throws Exception;//更新public boolean update(User user) throws Exception; }
实现类的方法:
import com.chenxin.springboot_0702.dao.UserMapper; import com.chenxin.springboot_0702.model.User; import com.chenxin.springboot_0702.service.UserService; import org.springframework.stereotype.Service; import com.github.pagehelper.PageHelper;import javax.annotation.Resource; import java.util.List;@Service public class UserServiceImpl implements UserService {@ResourceUserMapper userMapper;@Overridepublic List<User> find(int pageNum, int pageSize) throws Exception {//分页查询:查询第一页,每页10行。 PageHelper.startPage(pageNum, pageSize);List<User> users =userMapper.findAll();return users;}//查询 @Overridepublic List<User> findAll() throws Exception {return userMapper.findAll();}@Overridepublic User findById(long id) throws Exception {return userMapper.findById(id);}@Overridepublic List<User> findByPhone(String phone) throws Exception {return userMapper.findByPhone(phone);}//新增 @Overridepublic long save(User user) throws Exception {userMapper.save(user);return user.getId();}//删除 @Overridepublic boolean delete(long id) throws Exception {return userMapper.delete(id);}//更新 @Overridepublic boolean update(User user) throws Exception {return userMapper.update(user);} }
controller调用:
import com.chenxin.springboot_0702.model.User; import com.chenxin.springboot_0702.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import java.util.List;@RestController public class HelloController2 {@Autowiredprivate UserService userService;@RequestMapping("/getAll")public List<User> getAll(int pageNum, int pageSize) throws Exception{return userService.find(pageNum,pageSize);} }
启动类:
package com.chenxin.springboot_0702;import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication //开启通用注解扫描 @MapperScan(basePackages = {"com.chenxin.springboot_0702.dao"}) @EnableAutoConfiguration public class Run {public static void main(String[] args) {SpringApplication.run(Run.class, args);} }
配置文件application.properties:
#数据库访问配置 #主数据源 #配置mysql的连接配置 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.url=jdbc:mysql://localhost:3306/testx?useSSL=false spring.datasource.username=root spring.datasource.password=123 spring.datasource.driver-class-name=com.mysql.jdbc.Driver#连接池设置 #初始化大小,最大,最小值 spring.datasource.initialize=true spring.datasource.tomcat.min-idle=5 spring.datasource.tomcat.max-active=20 spring.datasource.tomcat.max-wait=60000logging.level.com.chenxin.springboot_0702.Run=debug logging.path=logspagehelper.helper-dialect=mysql pagehelper.reasonable=true pagehelper.support-methods-arguments=true
pom.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.chenxin</groupId><artifactId>springboot_0702</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>springboot_0702</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.9.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--junit不需要springboot已经自动加载了。--><!--spring-boot-starter-jdbc已经包含在了mybatis-spring-boot-starter中了。--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.5</version></dependency><!--引入mybatis--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.0</version></dependency><!--mybatis分页插件--><!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper-spring-boot-starter --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.1.1</version></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
好了结束了。最后运行启动类。
浏览器:http://localhost:8080/getAll?pageNum=1&pageSize=5
运行结果:
报名立减200元。暑假直降6888。
邀请链接:http://www.jnshu.com/login/1/20535344
邀请码:20535344
转载于:https://www.cnblogs.com/JasonChen92/p/9266206.html
springboot 整合mybatis,pagehelper。测试类。相关推荐
- springboot整合mybatis
3.springboot整合mybatis 首先新建一个项目,勾选上我们需要的 1.springboot配置数据库连接池druid druid学习地址 https://github.com/aliba ...
- SpringBoot整合mybatis+mybatis分页插件
第一步:相关依赖 <!--web,servlet引入--> <dependency><groupId>org.springframework.boot</gr ...
- SpringBoot整合Mybatis超详细流程
SpringBoot整合Mybatis超详细流程 文章目录 SpringBoot整合Mybatis超详细流程 前言 详细流程 0.引入Mybatis 1.创建数据 2.创建程序目录 3.理解后台访问流 ...
- SpringBoot整合Mybatis(高级)
SpringBoot整合Mybatis(高级) 文章目录 SpringBoot整合Mybatis(高级) 前言 基础环境配置 增删改查 ResultMap 复杂查询 多对一 一对多 动态SQL if ...
- 3、SpringBoot整合MyBatis注解版及配置文件版
目录 1.配置pom.xml 2.配置application.yml 3.配置DruidConfig关联yml的配置文件spring.datasource 4.创建数据库及数据库表结构 5.创建对应的 ...
- (一)SpringBoot 整合 MyBatis
一.工具 IDE:idea.DB:mysql 二.创建SpringBoot工程 在Idea中使用SpringInitializr模板创建SpringBoot工程,依赖选择如下: 这里也可以不选JDBC ...
- springboot整合mysql5.7_详解SpringBoot整合MyBatis详细教程
1. 导入依赖 首先新建一个springboot项目,勾选组件时勾选Spring Web.JDBC API.MySQL Driver 然后导入以下整合依赖 org.mybatis.spring.boo ...
- SpringBoot整合Mybatis,并实现事务控制
SpringBoot整合Mybatis,并实现事务控制 1. 在pom文件里添加相关maven文件 <parent><groupId>org.springframework.b ...
- springboot整合mybatis 使用HikariCP连接池
springboot整合mybatis 使用HikariCP连接池 前言 Springboot让Java开发更加美好,本节主要讲的是使用Hikari数据库连接池,如果需要使用druid连接池的请看我另 ...
- SpringBoot整合MyBatis并实现简单的查询功能
学了SpringBoot整合MyBatis才知道什么叫做省事,想当初用SSM的时候,那配置是真的多,SpringBoot真的是太友好了,到底有多好,接下来演示一个对数据库的查询功能,然初学者的我们大开 ...
最新文章
- Flask + Nginx + React + Webpack 配置解决跨域问题
- 13. jquery ajax json 学习
- spring mvc @ModelAttribute 基本类型 自定义对象解析流程
- 互联网1分钟 |1119
- 模拟人生4修改服务器,【M4分享】PS4主机版模拟人生4的作弊码
- 「递归」第2集 | 变得了魔术,解得了高数,这届鹅厂程序员有点酷
- 哔哩哔哩修改视频速度
- win7系统出现蓝屏0x0000003b怎么解决
- nmealib解析-----(1)
- alwayson高可用组_AlwaysOn可用性组–简化工作的好奇心–第1部分
- baidu google 下拉框 的简单实现
- Javascript第五章history对象第四课
- 利用R语言美化决策树
- 《人月神话》学习指南
- 查询银行卡归属地区API接口
- 【小型系统】简单的刷票系统(突破IP限制进行投票)
- laravel在线教育开发__四级联动(地区选择)
- 媒体实录:百度林元庆第一时间解读百度大脑VS.最强大脑第一场
- FreeFEM++根据给定网格尺寸剖分网格
- 查看Windows凭据存储密码的方法 2022亲测有效