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

工控做网站网络软营销

工控做网站,网络软营销,推广型网站制作哪家好,什么是成品网站markdown 前后端分页实现全面指南 本指南详细讲解Java后端与Vue前端的分页实现方案&#xff0c;涵盖框架集成和原生实现两种方式。 一、后端Java分页实现 1. 使用MyBatis PageHelper插件 **依赖配置**&#xff1a; xml <!-- pom.xml --> <dependency><group…

markdown

前后端分页实现全面指南

本指南详细讲解Java后端与Vue前端的分页实现方案,涵盖框架集成和原生实现两种方式。


一、后端Java分页实现

1. 使用MyBatis + PageHelper插件


**依赖配置**:
```xml
<!-- pom.xml -->
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.6</version>
</dependency>
代码实现:java
// Controller层
@GetMapping("/users")
public PageInfo<User> getUsers(@RequestParam int pageNum, @RequestParam int pageSize) {return userService.getUsers(pageNum, pageSize);
}// Service层
public PageInfo<User> getUsers(int pageNum, int pageSize) {PageHelper.startPage(pageNum, pageSize);  // 自动拦截SQLList<User> users = userMapper.selectAll();return new PageInfo<>(users);  // 包含分页元数据
}// Mapper XML(无需分页SQL)
<select id="selectAll" resultType="User">SELECT * FROM users  <!-- 原始SQL -->
</select>
  1. 原生JDBC分页实现.
核心逻辑:

java
public PageResult manualPagination(int pageNum, int pageSize) throws SQLException {
int offset = (pageNum - 1) * pageSize;
String dataSql = “SELECT * FROM users LIMIT ? OFFSET ?”;
String countSql = “SELECT COUNT(*) FROM users”;

try (Connection conn = dataSource.getConnection();PreparedStatement dataStmt = conn.prepareStatement(dataSql);PreparedStatement countStmt = conn.prepareStatement(countSql)) {// 分页数据查询dataStmt.setInt(1, pageSize);dataStmt.setInt(2, offset);ResultSet rs = dataStmt.executeQuery();List<User> users = new ArrayList<>();while (rs.next()) {users.add(new User(rs.getInt("id"), rs.getString("name")));}// 总数查询ResultSet countRs = countStmt.executeQuery();int total = countRs.next() ? countRs.getInt(1) : 0;return new PageResult<>(users, total);
}

}


二、前端Vue分页实现1. 使用Element UI组件安装组件:bash

npm install element-ui

模板与逻辑:vue
<el-pagination:current-page="currentPage":page-sizes="[5, 10, 20]":page-size="pageSize":total="total"layout="total, sizes, prev, pager, next"@size-change="handleSizeChange"@current-change="handlePageChange"
/>
2. 自定义分页组件

组件实现:

vue

三、数据库分页SQL
数据库	SQL语句示例
MySQL	

SELECT * FROM users ORDER BY id LIMIT #{pageSize} OFFSET #{offset}


Oracle	

SELECT * FROM (SELECT t.*, ROWNUM rn FROM users t WHERE ROWNUM <= #{end}) WHERE rn >= #{start}


SQL Server	

SELECT * FROM users ORDER BY id OFFSET #{offset} ROWS FETCH NEXT #{pageSize} ROWS ONLY


四、核心公式与协议分页计算公式javascript

offset = (currentPage - 1) * pageSize
totalPages = Math.ceil(totalItems / pageSize)


接口协议规范请求参数:

json
{
“pageNum”: 1, // 当前页码
“pageSize”: 10 // 每页数据量
}

响应格式:json

{
“list”: [], // 当前页数据
“total”: 100 // 总数据量
}

五、性能优化建议
索引优化排序字段必须建立索引(如ORDER BY create_time DESC)组合查询时使用复合索引深度分页处理sql

– MySQL优化方案
SELECT * FROM users
WHERE id > #{lastId} – 使用游标分页
ORDER BY id
LIMIT #{pageSize}

缓存策略热点数据使用Redis缓存分页结果使用Elasticsearch进行复杂分页查询六、方案选型指南
场景	推荐方案
快速开发常规项目	PageHelper + Element UI
高并发海量数据	游标分页 + 前端无限滚动
需要深度定制分页逻辑	原生JDBC + 自定义Vue组件
复杂多条件查询	Elasticsearch分页
完整示例代码参考:GitHub示例仓库
http://www.dtcms.com/wzjs/153018.html

相关文章:

  • 玉溪网站建设高效统筹疫情防控和经济社会发展
  • 滨海专业做网站的公司广告策划公司
  • 宿州哪家做网站好长春网站建设方案咨询
  • 怎么进行网站关键词优化企业网站设计代码
  • 武汉品牌网站开发seo顾问服务公司站长
  • 网站动效怎么做的百度小说风云榜排名
  • 厦门市建设管理协会网站首页永久免费国外域名注册
  • 网站建设实训实训心得天津海外seo
  • 网站 源码 下载seo排名赚app靠谱吗
  • 济源哪里做网站网络营销的目标
  • 驻马店网站建设武汉网站制作推广
  • 手机网站建设书籍百度指数是搜索量吗
  • 动态网站开发软件百度站长平台快速收录
  • 网站后台管理系统界面青岛网站快速排名优化
  • 网站开发使用的工具网络营销方案的制定
  • 河北邢台企业做网站产品推广方式
  • 风险报告查询系统优化网站推广排名
  • 自己做的网站如何用手机去查看比较好的网络优化公司
  • wordpress仿国际seo定义
  • 网站自适应框架网站搭建策略与方法
  • 开封市建设中专继续教育网站今日国际重大新闻
  • 线上运营推广工作内容湖南靠谱seo优化公司
  • 湖北网站科技建设备案域名出售平台
  • 电子信息工程移动互联网 学什么网站seo哪家公司好
  • 免费自助站制作在线软文撰写公司
  • 广州技术支持 奇亿网站建设帮忙推广的平台
  • 商务网站建设实践实训心得网络营销网
  • 个人可以备案哪些网站360优化大师最新版的功能
  • 点击网站百度推广关键词
  • 用html做网站步骤2345浏览器主页网址