A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 谷粒姐姐 于 2018-3-14 13:33 编辑

三、 收派标准管理
1. 收派标准添加功能
1.1. 收派标准添加窗口制作 jQuery EasyUI window
如何用 easyui 制作窗口 ?
默认窗口自带四个按钮

在窗口出现的时候,页面中内容不可操作(遮罩)?
窗口在页面加载后,不显示?
如何显示窗口?
1.2. 收派标准客户端表达校验 jQuery Easyui form
JQuery Easyui form 组件

l
校验框 validatebox
class=”easyui-validatebox”
指定 required 属性为 true 完成必须输入校验
如果使用其它校验规则,可以使用其它验证规则
自定义验证规则



l
数字校验框 numberbox
l
日期输入框 datebox
下拉输入框 combobox
设置 form 的 action 和 method
对页面保存按钮添加点击后,提交 form 表单操作
通过 jquery easyui form


1.3. 服务器实现添加收派标准 struts2 表现层

pom.xml 导入 struts2 坐标
struts2 基本开发
Struts2 和 spring 整合
Struts2 注解开发
l
struts2-convention-plugin
struts-plugin.xml
配置扫描 struts2 Action 类
指定后缀的类

l
struts2 注解
类上
@ParentPackage 包基础谁? extends=”struts-default”
@Namespace 包命名空间 namespace=”/”
@Actions struts2 的 Action 配置,用于配置多个 Action
方法上
@Action 配置访问路径,和方法绑定
@Result 结果集配置
l
struts2 和 spring 整合
struts2 的 Action 使用 spring 注解,被 spring 管理
@Controller spring 表现层 bean
@Scope 配置 Action 为多例
错误: 忘记配置 struts2 核心过滤器
web.xml

思考:为什么 Action 处理请求,转发回页面会显示空白 ?
设置 type=”redirect” 重定向回页面解决问题
1.4. 服务器实现添加收派标准 业务层、持久层
l
业务层接口
修改 Action 代码调用 Service

l
业务层实现类
l
使用 SpringData 整合 JPA 简化 DAO 的编写
Maven 导入坐标
配置 applicationContext.xml




只需要编写 DAO 接口 只需要继承 JpaRespotory
不需要对 DAO 接口做任何实现, 实际上 spring 会调用 SimpleJpaRepository 实现
2. Spring Data 常用 API
2.1. 原理分析 和 基本 API
Spring data 出现目的 为了简化、统一 持久层 各种实现技术 API
所以 spring data 提供一套标准 API 和 不同持久层整合技术实现
spring-data-commons 一套标准 API
spring-data-jpa 基于整合 JPA 实现

自己开发 Repository 只需要继承 JpaRepository 接口
l
CrudRepository
save、delete、deteleAll、findAll、findOne、count
PagingAndSortingRepository
l
findAll(Sort) 基于排序的查询、 findAll(Pageable) 基于分页的查询
2.2. Spring data Query 使用 实现条件查询
第一种 根据方法命名规则自动生成
基于一列查询等值查询 findBy 列名 例如: findByName(String name);

file:///C:\Users\user\AppData\Local\Temp\ksohtml\wpsA34D.tmp.png
基于一列模糊查询 findBy 列名 Like 例如: findByNameLike(String name)
基于两列等值查询 findBy 列名 And 列名 例如: findByUsernameAndPassword(String
username, String password )
第二种 不按命名规则写的查询方法,可以配置@Query 绑定 JPAL 语句或者 SQL 语句
第三种 不按命名规则写的查询方法 配置@Query 没写语句 ,实体类 @NamedQuery 定义
2.3. 带有条件 修改和删除操作 如何解决
使用@Query 注解完成 , 搭配使用@Modifying 标记修改、删除操作
将记录 1 的 最小长度改为 15
注意:使用单体测试,测试 DAO ,要添加事务,设置事务不回滚

3. 收派标准分页查询功能
3.1. jQuery Easyui datagrid 数据表格的使用

1、 在页面显示表格的位置 提供<table>标签,指定 id 元素

2、 在 JS 代码 $(“#grid”).datagrid({…}); 完成对表格设置
表格列定义

远程数据加载

分页


顶部工具栏

代码效果


3.2. 掌握 datagrid 数据表格分页原理

请求数据: page 页码、 rows 每页记录数
响应数据: total 总记录数、 rows 当前页数据记录


3.3. 编写服务器代码,实现收派标准分页查询
1、 修改 standard.html 数据表格 url 参数

2、 在 StandardAction 添加 pageQuery 方法
页面会自动发送两个请求参数 page 页码、rows 每页记录数
Action 代码
pom.xml 导入 json 插件





业务层代码

实现代码

Spring data jpa 提供 分页查询方法 ,接受 Pageable 参数


Spring data 提供 PageRequest 对象实现 Pageable 接口

注意: PageRequest 的 page 页码从 0 开始

构造 PageRequest 对象时,传入 page-1


4. 收派标准修改功能

业务: 只能选择一行进行修改

1、 点击修改按钮,获取 datagrid 选中的一行数据


2、 将选中数据 回显 form 表单
使用 jquery easyui 提供 form 对象


提供隐藏字段




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马