一个简单的分页功能

<html>
<head>
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
 <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
 <script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<title>分页</title>
<body>
<p>  当前 ${pageInfo.pageNum } 页,总 ${pageInfo.pages } 页,总 ${pageInfo.total } 条记录</p>
<ul class="pager">
     <li class="am-pagination-first "><a href="findUsers?page=1&size=5" aria-label="Previous">第一页</a> </li>
     <li class="am-pagination-prev "><a href="findUsers?page=${pageInfo.pageNum-1}&size=5">上一页</a>  </li>
                                                 <c:forEach begin="1" end="${pageInfo.pages}" var="pageNum">
                                                 <li><a href="findUsers?page=${pageNum}&size=5">${pageNum}</a></li></c:forEach>
     <li class="am-pagination-next "><a href="findUsers?page=${pageInfo.pageNum+1}&size=5">下一页</a></li>
     <li class="am-pagination-last "><a href="findUsers?page=${pageInfo.pages}&size=5" aria-label="Next">最末页</a></li>
    </ul>
</body>
</html>

实现的效果图如下:
在这里插入图片描述

这里的界面有点奇怪,分页按钮有点长,但其实它本来的效果应该是这样↓
在这里插入图片描述
因为和我项目里的bootstrap.mini.css的pager类重复了,但这个文件是只能读不能改的,所以长度会这么长

### 步进电机PLC控制课程设计示例教程 #### 一、项目概述 本课程设计旨在通过具体案例介绍如何利用可编程逻辑控制器(Programmable Logic Controller, PLC)实现对步进电机的有效控制。此过程不仅涉及硬件连接,还包括软件编程以及参数设置等内容。 #### 二、控制系统构成 对于采用西门子S7-1200系列PLC作为核心控制器的情况而言,整个系统由电源模块、CPU模块、输入/输出接口卡件组成;而被控对象则是带有驱动电路的步进马达[^1]。另外,在某些应用场景下还可以考虑加入传感器等辅助元件以增强系统的功能性与可靠性。 #### 三、硬件连线方式 当使用西门子S7-200 SMART型号时,其方向控制部分采用了相位单相模式下的两个独立信号线——其中一条负责发送脉冲序列给定转角增量信息,另一条则用来指定旋转的方向。此外还设有一个名为DIS的特殊端口,它能够在设备处于停止状态期间允许手动调整轴的位置从而便于操作人员执行诸如校准之类的维护工作[^2]。 #### 四、程序开发流程 为了简化应用程序的设计难度并提高代码重用率,建议开发者按照以下思路构建自己的解决方案: 1. **初始化配置** - 设置好各个I/O通道的工作属性; - 定义全局变量保存当前运行状况的关键数据。 2. **创建功能块** - 将常用的操作封装成易于调用的小型函数库; - 对于复杂业务逻辑,则可以通过组合多个基础单元来完成特定任务处理。 3. **编写主循环体** - 实现周期性的读取外部条件变化并向下游传递必要的动作指令; - 利用仿真工具模拟真实环境下的交互行为; - 或者直接部署到物理平台上进行全面检验直至满足预期效果为止。 ```python # Python伪代码表示上述概念 def initialize(): configure_io_channels() define_global_variables() def create_function_blocks(): package_common_operations_into_functions() combine_basic_units_for_complex_tasks() def main_loop(): while True: read_external_conditions() send_action_commands_to_downstream() monitor_and_handle_exceptions() if __name__ == "__main__": initialize() create_function_blocks() try: main_loop() except Exception as e: handle_exception(e) ``` #### 五、高级特性支持 值得注意的是,现代版本的S7-200 SMART除了提供基本的速度调节外,还能模仿变频器所提供的分段变速能力,即所谓的“多段速”。这意味着用户可以根据实际需求灵活定义不同的加速减速曲线,进而达到更加精细和平滑的动作表现形式。 #### 六、跨品牌兼容性考量 尽管不同厂商生产的PLC产品之间存在着一定的差异性,但是就步进电机这一类通用性强的标准部件来说,很多底层原理都是相通的。比如三菱公司的相关技术文档也提到了可以直接运用自身的专有命令集去操控此类装置而不必依赖额外附加设施的帮助[^3]。因此学习掌握多种品牌的特性和优势有助于拓宽个人的知识面和技术视野。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值