当前位置: 首页 > news >正文

公司网站建设是什么意思59一起做网站

公司网站建设是什么意思,59一起做网站,泉州市网站建设,网站怎么做推广和宣传前言: 通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往…
前言:

通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往复以至无穷,而实践和认识之每一循环的内容,都比较地进到了高一级的程度。

正片

@Data
public class RequestPageEntity {/*** id,username,roleId,lastLogin 数据库表* into,Max 分页查询映射参数*/private int id;private String username;private int roleId;private Date lastLogin;private Integer into;private int Max;public Integer getPageBegin(){return (this.into - 1) * Max;}
}

这是专业版 · 改的实体类模板

由数据库表和分页参数组成

那我们每做一次分页,岂不是都要写数据库表和分页参数

最终测试版,首先优化的就是这个

我们将数据库表和分页分成两个实体类

@Data
public class RequestPageEntity {/*** 统一分页参数实体类*/private Integer into;private int Max;public Integer getPageBegin(){return (this.into - 1) * Max;}
}
@Data
public class UserPageEntity extends RequestPageEntity{/*** 数据库实体类*/private int id;private String username;private int roleId;private Date lastLogin;}

我们只需要通过继承,就可以省去分页实体类那部分代码,还能获取分页实体类的属性,一举三得

这是剩余内容的模板

真 · 正片(九步法实现分页功能)

第一步:创建基础分页实体类(用于java映射sql的参数传输OR简单来说,这个类,提供了对sql语句参数的支持)

import lombok.Data;@Data
public class RequestPageEntity {/*** 统一分页参数实体类*/private Integer into;private int Max;public Integer getPageBegin(){return (this.into - 1) * Max;}
}

第二步:创建需要分页查询的实体类

import lombok.Data;@Data
public class xxx类 extends RequestPageEntity{/*** 数据库表实体类* 只需要继承,就可以省去一大部分的代码* 具体内容实现在下*/
}

第三步:创建java映射层 简称 mapper层

import org.apache.ibatis.annotations.Mapper;
import org.example.mybatis.entity.RequestPageEntity;
import java.util.List;@Mapper
public interface xxxMapper {List<xxxEntity> requestPage(xxxEntity xxx);
}

第四步:创建mybatis映射器(用于连接Java和Sql)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="java映射具体路径,mapper层具体映射"></mapper>

第五步:创建java和sql的具体映射(java方法 对应 sql语句)

    <select id="java映射分页方法名" resultType="具体实体类路径">select * from 数据库表 limit #{pageBegin},#{Max}
#         注意大小写,getBig在进入mybatis映射器中会变成big</select>

第六步:创建业务层

import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;@Service
public class UserPageServer {@ResourcexxxMapper xxxMapper;public List<xxxEntity> USerPage(xxxEntity xxx){return xxxMapper.requestPage(xxx);}
}

第七步:创建控制层

@RestController
public class test {@ResourcexxxService xxxService @GetMapping("/page")    public String SelectByAll(xxxEntity xxx){return "打印成功" + xxxService.查询方法(xxx);}
}

第八步:测试

第九步:完成分页功能

实战

采用的示例数据库表

第一步:复制不变(你想变也可以)

​
import lombok.Data;@Data
public class RequestPageEntity {/*** 统一分页参数实体类*/private Integer into;private int Max;public Integer getPageBegin(){return (this.into - 1) * Max;}
}​

实战

import lombok.Data;@Data
public class RequestPageEntity {/*** 统一分页参数实体类*/private Integer into;private int Max;public Integer getPageBegin(){return (this.into - 1) * Max;}
}

第二步:创建实体类并继承统一分页实体类

import lombok.Data;@Data
public class xxx类 extends RequestPageEntity{/*** 数据库表实体类* 只需要继承,就可以省去一大部分的代码* 具体内容实现在下*/
}

实战

import lombok.Data;import java.util.Date;@Data
public class UserPageEntity extends RequestPageEntity{/*** 数据库表实体类* 只需要继承,就可以省去一大部分的代码* 具体内容实现在下*/private int id;private String username;private int roleId;private Date lastLogin;}

第三步:创建java映射层 简称 mapper层

import org.apache.ibatis.annotations.Mapper;
import org.example.mybatis.entity.RequestPageEntity;
import java.util.List;@Mapper
public interface xxxMapper {List<xxxEntity> requestPage(xxxEntity xxx);
}

实战

import org.apache.ibatis.annotations.Mapper;
import org.example.mybatis.entity.RequestPageEntity;
import java.util.List;@Mapper
public interface RequestPageMapper {List<UserPageEntity> requestPage(UserPageEntity user);
}

第四步:创建mybatis映射器(用于连接Java和Sql)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="java映射具体路径,mapper层具体映射"></mapper>

实战

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.mybatis.Mapper.RequestPageMapper"></mapper>

第五步:创建java和sql的映射

    <select id="java映射分页方法名" resultType="具体实体类路径">select * from 数据库表 limit #{pageBegin},#{Max}
#         注意大小写,getBig在进入mybatis映射器中会变成big</select>
<mapper namespace="org.example.mybatis.Mapper.RequestPageMapper"><select id="requestPage" resultType="org.example.mybatis.entity.UserPageEntity">select * from user limit #{pageBegin},#{Max}
#         注意大小写,getBig在进入mybatis映射器中会变成big</select>

完整的映射

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.mybatis.Mapper.RequestPageMapper"><select id="requestPage" resultType="org.example.mybatis.entity.UserPageEntity">select * from user limit #{pageBegin},#{Max}
#         注意大小写,getBig在进入mybatis映射器中会变成big</select></mapper>

第六步:创建业务

import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;@Service
public class UserPageServer {@ResourcexxxMapper xxxMapper;public List<xxxEntity> USerPage(xxxEntity xxx){return xxxMapper.requestPage(xxx);}
}

实战

@Service
public class UserPageServer {@ResourceRequestPageMapper requestPageMapper;public List<UserPageEntity> USerPage(UserPageEntity userPageEntity){return requestPageMapper.requestPage(userPageEntity);}
}

第七步:创建控制类

@RestController
public class test {@ResourcexxxService xxxService @GetMapping("/page")    public String SelectByAll(xxxEntity xxx){return "打印成功" + xxxService.查询方法(xxx);}
}

实战

@RestController
public class test {@ResourceUserPageServer userPageServer;@GetMapping("/page")public String SelectByAll(UserPageEntity userPageEntity){return "打印成功" + userPageServer.USerPage(userPageEntity);}
}

完结

其中的疑问

第一个:关于映射器中sql是如何读取到

    public Integer getPageBegin(){return (this.into - 1) * Max;}

mybatis会自动映射,将getPageBegin自动转换成pageBegin(这个为结论)

第二个:如果自定义,xxx,这些xxx为自定义内容

http://www.dtcms.com/a/535913.html

相关文章:

  • 想让默认头像不再千篇一律,就顺手复刻了一下 GitHub 的思路
  • 《HTTP 安全与性能优化全攻略》
  • 【Web安全】OAuth2.0框架高频安全漏洞分析总结
  • 算法<C++>——双指针操作链表
  • Linux小课堂: SELinux安全子系统原理与Apache网站目录访问问题解决方案
  • 云计算学习(三)——子网划分
  • 回森统一客服服务 AI+数字技术引领自智网络迈入新阶段
  • 云计算概念及虚拟化
  • 域名信息查询网站广告设计总结
  • qq网站登录入口蒙古文政务网站建设工作汇报
  • Spring Boot3零基础教程,Kafka 的简介和使用,笔记76
  • Rust Web实战:构建高性能并发工具的艺术
  • Kafka 全方位技术文档
  • (场景题)Java 导出 Excel 的两种方式
  • Nacos配置中心动态刷新全解析:从基础配置到源码级调优(二)
  • Excel小技巧:Excel数据带有单位应该如何运算求和?
  • 相机外参初始估计
  • Excel 学习笔记
  • 网站地图模板一站式网络营销
  • 如何检查开源CMS的数据库连接问题?
  • VTK入门:vtkQuadraticHexahedron——会“弯曲”的高精度六面体
  • 基于python大数据的城市扬尘数宇化监控系统的设计与开发
  • MCU定点计算深度解析:原理、技巧与实现
  • 【普中Hi3861开发攻略--基于鸿蒙OS】-- 第 28 章 WIFI 实验-UDP 通信
  • 【C++ string 类实战指南】:从接口用法到 OJ 解题的全方位解析
  • 门户网站 建设 如何写公司名称变更网上核名怎么弄
  • 并发编程基础
  • 第六部分:VTK进阶(第174章 空间流式与增量处理)
  • 智谱GLM-4.6/4.5深度解析:ARC三位一体的技术革命与国产模型崛起
  • 221. Java 函数式编程风格 - 从命令式风格到函数式风格:计算文件中包含指定单词的行数