珠海在线网站制作公司小程序开发公司制作

bicheng/2026/1/26 14:24:55/文章来源:
珠海在线网站制作公司,小程序开发公司制作,商业设计理念,河北黄骅市网站建设目录 一、前置工作: 1.整体项目目录结构 2.创建普通javamaven项目。 3.导入依赖#xff0c;改造成springboot项目 4.配置启动类 5.创建service接口及其实现类 6.创建接口Mapper 7.配置数据源 8.创建数据库表 二、使用MP#xff08;mybatisplus#xff09;的分页插件 二、使…目录 一、前置工作: 1.整体项目目录结构 2.创建普通javamaven项目。 3.导入依赖改造成springboot项目 4.配置启动类 5.创建service接口及其实现类 6.创建接口Mapper 7.配置数据源 8.创建数据库表 二、使用MPmybatisplus的分页插件 二、使用自定义的分页插件 MyBatis Plus自带分页插件只要简单的配置即可实现分页功能。 一、前置工作: 1.整体项目目录结构 2.创建普通javamaven项目。 3.导入依赖改造成springboot项目 依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.qcby/groupIdartifactIdSpringBootMybatisPlus/artifactIdversion1.0-SNAPSHOT/versionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.4.0/versionrelativePath/ !-- lookup parent from repository --/parentdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependencydependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.5.1/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.46/versionscoperuntime/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project 4.配置启动类 package com.qcby;import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication MapperScan(com.qcby.SpringBoot.mapper) public class SpringBootApplication1 {public static void main(String[] args) {SpringApplication.run(SpringBootApplication1.class, args);} }5.配置实体类 package com.qcby.SpringBoot.pojo;import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data;Data TableName(t_product) public class Product {private Long id;private String name;private Integer price;private Integer version; }package com.qcby.SpringBoot.pojo;import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data //set和get方法 AllArgsConstructor //全参构造器 NoArgsConstructor //无参构造器 TableName(t_user) public class User {//因为用到雪花算法所以用Long属性TableIdprivate Long id;private String name;private Integer age;private String email;TableLogicprivate Integer isDeleted; }5.创建service接口及其实现类 package com.qcby.SpringBoot.service;import com.baomidou.mybatisplus.extension.service.IService; import com.qcby.SpringBoot.pojo.User;/*** UserService继承IService模板提供的基础功能*/ public interface UserService extends IServiceUser { }package com.qcby.SpringBoot.service.Impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qcby.SpringBoot.mapper.UserMapper; import com.qcby.SpringBoot.pojo.User; import com.qcby.SpringBoot.service.UserService; import org.springframework.stereotype.Service;/*** ServiceImpl实现了IService提供了IService中基础功能的实现* 若ServiceImpl无法满足业务需求则可以使用自定的UserService定义方法并在实现类中实现*/ Service public class UserServiceImpl extends ServiceImplUserMapper, User implements UserService {}6.创建接口Mapper package com.qcby.SpringBoot.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.qcby.SpringBoot.pojo.User; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select;Mapper public interface UserMapper extends BaseMapperUser {}package com.qcby.SpringBoot.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.qcby.SpringBoot.pojo.Product; import org.apache.ibatis.annotations.Mapper;Mapper public interface ProductMapper extends BaseMapperProduct { }7.配置数据源 在application.yaml中配置信息。 spring:# 配置数据源信息datasource:# 配置数据源类型type: com.zaxxer.hikari.HikariDataSource# 配置连接数据库信息driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3306/mybatis_plus?characterEncodingutf-8useSSLfalseusername: rootpassword: root # 配置MyBatis日志 mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl 8.创建数据库表 二、使用MPmybatisplus的分页插件 首先要在容器中配置一个mybatisplus分页插件的bean。 可以自定义一个配置类也可以在启动类中配置因为启动类也是一个配置类。 package com.qcby.SpringBoot.config;import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MybatisPlusConfig {/*** 分页插件* 构建一个拦截来处理分页* 每个数据库厂商对于分页的实现语法有差别因此在声明该拦截时需要指定应用的数据库类型* return*/Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor new MybatisPlusInterceptor();interceptor.addInnerInterceptor(newPaginationInnerInterceptor(DbType.MYSQL));//由于各个数据库的语法会有差别因此要指明数据库类型return interceptor;} }编写测试类 package com.qcby;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.qcby.SpringBoot.mapper.ProductMapper; import com.qcby.SpringBoot.mapper.UserMapper; import com.qcby.SpringBoot.pojo.Product; import com.qcby.SpringBoot.pojo.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest;import java.util.List;SpringBootTest public class Test2 {Autowiredprivate UserMapper userMapper;Autowiredprivate ProductMapper productMapper;Testpublic void testPage(){//设置分页参数PageUser page new Page(1, 5);userMapper.selectPage(page, null);//获取分页数据ListUser list page.getRecords();list.forEach(System.out::println);System.out.println(当前页page.getCurrent());System.out.println(每页显示的条数page.getSize());System.out.println(总记录数page.getTotal());System.out.println(总页数page.getPages());System.out.println(是否有上一页page.hasPrevious());System.out.println(是否有下一页page.hasNext());}}二、使用自定义的分页插件 在usermapper中加入方法 package com.qcby.SpringBoot.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.qcby.SpringBoot.pojo.User; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select;Mapper public interface UserMapper extends BaseMapperUser {/*** 根据年龄查询用户列表分页显示* param page 分页对象 ,xml中可以从里面进行取值 ,传递参数 Page 即自动分页 ,必须放在第一位* param age 年龄* return*//*** 不用加limit语句因为配置了一个拦截的插件只需要传入page对象还是使用的MP的分页插件* param page* param age* return*/Select(SELECT id,name,age,email FROM t_user WHERE age #{age})IPageUser selectPageVo(Param(page) PageUser page, Param(age) Integer age); }package com.qcby;import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.qcby.SpringBoot.mapper.ProductMapper; import com.qcby.SpringBoot.mapper.UserMapper; import com.qcby.SpringBoot.pojo.Product; import com.qcby.SpringBoot.pojo.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest;import java.util.List;SpringBootTest public class Test2 {Autowiredprivate UserMapper userMapper;Autowiredprivate ProductMapper productMapper;Testpublic void testSelectPageVo(){//设置分页参数PageUser page new Page(1, 5);userMapper.selectPageVo(page, 20);//获取分页数据ListUser list page.getRecords();list.forEach(System.out::println);System.out.println(当前页page.getCurrent());System.out.println(每页显示的条数page.getSize());System.out.println(总记录数page.getTotal());System.out.println(总页数page.getPages());System.out.println(是否有上一页page.hasPrevious());System.out.println(是否有下一页page.hasNext());} }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/86519.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搜网站首页不见了seo网站建设有哪些基本流程

前言: 在使用若依框架的过程中,如果是查询结果数据直接返回,那么其自带的分页插件可以正常返回数据以及总条数,若是在业务逻辑层对数据进行了其他二次处理,再返回就会出现异常,无论查询了多少条&#xff0…

如何进入谷歌网站南宁网站推广策略

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式 🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 &…

f式布局网站江苏中禾建设网站

Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。 Spring中的单…

购买服务器做网站用动易建设网站教程

一 ACL 简介 ACL是Access Control List(访问控制列表)的缩写,是一种用于控制文件、目录、网络设备等资源访问权限的方法。ACL可以对每个用户或用户组设置不同的访问权,即在访问控制清单中为每个用户或用户组指定允许或禁止访问该资源的权限。它通常由一系列规则组成,规则…

做目录网站注意事项上海搬家公司电话价格表

深入理解Vue3中利用mitt:实现轻量级事件监听与触发 摘要:本文将介绍如何在Vue3中利用mitt库实现轻量级的事件监听与触发。我们将详细介绍mitt库的特性和使用方法,并通过实际示例展示如何在Vue3组件中应用mitt。 一、引言 在前端开发中&…

设计自己的网站自己搭建域名服务器

http://www.cnblogs.com/Lemon-Li/p/3504717.html 图像配准算法一般可分为: 一、基于图像灰度统计特性配准算法;二、基于图像特征配准算法;三、基于图像理解的配准算法。 其中,算法类型二最普遍,基于特征的图像配准算法的核心步骤…

网站定制开发多久时间wordpress支付宝捐赠插件

目录 1、实例化阶段 2、初始化阶段 3、销毁阶段 总结 在Spring框架中,Bean是最基本的组件,它是Spring框架中的一个Java对象。 下面通过Bean来理解bean的生命周期: Bean(initMethod "customInit", destroyMethod "cust…

两学一做知识竞赛网站江宁区建设局网站

文章目录 一、简述 Kubernetes 如何保证集群的安全性二、简述 Kubernetes 准入机制三、简述 Kubernetes RBAC 及其特点(优势)四、简述 Kubernetes Secret 作用五、简述 Kubernetes Secret 有哪些使用方式六、简述 Kubernetes PodSecurityPolicy 机制七、…

在什么网站做推广做网站人员工资

理论知识 定时器定时中断 接线图 定时器工作配置步骤 定时中断和内外时钟源选择 定时器中需要使用的函数 程序实现效果: void TIM_DeInit(TIM_TypeDef* TIMx); **// 恢复定时器的缺省配置**void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef*TIM…

做yy头像的网站常用的搜索引擎有哪些?

什么是Kotlin? Kotlin,如前面所说,它是JetBrains开发的基于JVM的语言。JetBrains因为创造了一个强大的Java开发IDE被大家所熟知。Android Studio,官方的Android IDE,就是基于Intellij,作为一个该平台的插件。 Kotli…

如何做网站大图片免费建立个人网站的视频

适应力和应变力在智能系统中扮演着非常重要的角色。在面对复杂、多变的环境和问题时,一个智能系统需要具备适应和调整自身行为的能力,这就需要依赖适应力和应变力。 适应力指的是系统对环境变化的感知、理解和调整能力。一个具有良好适应力的系统能够及时…

建设银行官方网站登长沙做推广的公司有多少

目录 写在前面准备Open3D使用demo编译demo运行demo相关说明 参考完 写在前面 1、本文内容 Open3D在0.15版之后,提供编译好的包,本文是以最新版(截止202402,0.18.0)为例的Open3D使用教程; Open3D其他版本的编译和使用相关教程&…

一级a做爰片软件网站织梦网站后台密码忘记了怎么做

该文章笔记结合菜鸟教程的排序算法,如果后面认识有改动或者完善再继续 最近笔试很多题目都考察过了基本的排序算法,尤其是快排、冒泡、选择,大家在这一方面一定要注意下。 一. 总述 1. 时间复杂度 详细介绍 1. 冒泡排序 冒泡排序重复地走…

淘宝客网站需要备案微信群免费推广平台

【本长内容】 1. 掌握树的基本概念 2. 掌握二叉树概念及特性 3. 掌握二叉树的基本操作 4. 完成二叉树相关的面试题练习 1. 树形结构 1.1 概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是…

服装电子商务网站有哪些高清做视频在线观看网站

相关文章 【数仓】基本概念、知识普及、核心技术【数仓】数据分层概念以及相关逻辑【数仓】Hadoop软件安装及使用(集群配置)【数仓】Hadoop集群配置常用参数说明【数仓】zookeeper软件安装及集群配置【数仓】kafka软件安装及集群配置【数仓】flume软件安…

下步我院将建设网站信息保密建销售网站需要多少钱

文章目录 概念1. 云原生(Cloud Native):2. 容器编排(Container Orchestration): 小结 概念 云原生和容器编排是两个不同的概念,但它们之间有着密切的联系。下面将分别介绍这两个概念&#xff0…

浙江广发建设有限公司网站wordpress修改主题文件

文章目录 题目描述问题分析程序代码 题目描述 原题链接 Alice 和 Bob 轮流玩一个游戏,Alice 先手。 一堆石子里总共有n个石子,轮到某个玩家时,他可以 移出 一个石子并得到这个石子的价值。Alice 和 Bob 对石子价值有 不一样的的评判标准 。双…

专做自驾游的网站做电影网站能赚钱吗

文章目录 4.Go语言的方法,函数,接口4.1. 方法4.1.1. 指针接受者4.1.2. 值接收者和指针接收者有什么区别?4.1.3. 方法 4.2. 接口4.2.1. 接口定义 4.3. 函数4.3.1. 函数介绍 4.Go语言的方法,函数,接口 4.1. 方法 4.1.1…

专业做书画推广的网站wordpress上传图片插件

文章目录 前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程访问Flask的问答界面 前言 Flask是一个Python编写的Web微框架,让我们可以使用Python语言快速实现一个网站或Web服务,本期教程…

昆山外贸公司网站建设流程南宁网站提升排名

前言 上一篇博客我们写了, 关于交换机, 队列,绑定, 写入数据库的一些建库建表的操作 这一篇博客中,我们将建库建表操作,封装一下实现层一个类来供上层服务的调用 , 并在写完该类之后, 测试代码是否完整 实现封装 在写完上述的接口类 与 xml 后, 我们想要 创建一个类 ,来调用…