记Dorado7学习(5)
本文来开发所有联系人页面,效果如图
准备工作由于需要读取sl_employee表中的数据,因此需要在Common.model.xml中新建一个DataType,并且设置该dataType的属性 name为SlEmployee ,matchType属性com.bstek.dorado.sample.standardlesson.entity.SlEmployee,然后点击SIEmployee这个DataType右键选择【通过简单Java对象自动创建PropertyDefs】,就会生成PropertyDef,然后设置中文说明,分别设置label属性
开发步骤 全部查询
在com.bstek.dorado.sample.standardlesson.junior.contacts目录下新建View,将View命名为AllContacts.view.xml。在【ViewConfig】节点下的【View】节点下添加一个DataSet控件
然后设定DataSet的属性:id:datasetEmployee DataType:[SlEmployee] dataProvider:employeeService#getAll。
定义好了数据之后,为了展示数据,需要添加一个数据敏感控件对象DataGrid(其实就是表格控件) 设置其属性 id: datagridEmployee dataSet:datasetEmployee ;
接着【鼠标右键】点击datagridEmployee控件,在弹出菜单中选择【Generate DataColumns】,生成相关字段:调整字段显示顺序,【鼠标左键】选中字段并保持按键不放,拖动字段到需要放置的地方,是否放置到位有定位线提示,松开按键即可,如下图所
示,删除多余字段,保留下图的几个字段
准备后台服务 在com.bstek.dorado.sample.standardlesson.service包中新建EmployeeService.java
package com.bstek.dorado.sample.standardlesson.service;
import java.util.Collection;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.sample.standardlesson.dao.SlEmployeeDao;
import com.bstek.dorado.sample.standardlesson.entity.SlEmployee;
@Component
public class EmployeeService {
@Resource
private SlEmployeeDao slEmployeeDao;
@DataProvider
public Collection<SlEmployee> getAll(){
return slEmployeeDao.getAll();
}
}
查看运行效果
项目启动完毕后,在浏览器中输入如下网址:http://localhost:8080/standardlesson/com.bstek.dorado.sample.standardlesson.junior.contacts.AllContacts.d 效果如下图
分页查询修改datasetEmployee,设置其属性 pageSize:15;dataProvider:employeeService#getAllForPage
新增分页控件 DataPilot是数据导航条控件,主要用于数据分页导航显示等。在【ViewConfig】节点下的【View】节点下添加一个DataPilot控件
【鼠标左键】选中DataPilot控件不放,将其移动到【datagridEmployee】控件上方,并设置其属性 id : datapilotEmployee dataSet:datasetEmployee itemCodes:pages,pageSize(用于定义数据导航条中要显示那些子对象的表
达式。)
准备后台服务 在在EmployeeService类下面添加新方法getAllForPage();
package com.bstek.dorado.sample.standardlesson.service;
import java.util.Collection;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.data.provider.Page;
import com.bstek.dorado.sample.standardlesson.dao.SlEmployeeDao;
import com.bstek.dorado.sample.standardlesson.entity.SlEmployee;
@Component
public class EmployeeService {@Resourceprivate SlEmployeeDao slEmployeeDao;@DataProviderpublic Collection<SlEmployee> getAll(){return slEmployeeDao.getAll();}@DataProviderpublic void getAllForPage(Page<SlEmployee> page){slEmployeeDao.getAll(page);}
}
到这里可以保存并运行项目看下效果http://localhost:8080/standardlesson/com.bstek.dorado.sample.standardlesson.junior.contacts.AllContacts.d
过滤栏查询 这里我们可以使用开DataGrid控件的过滤栏属性来实现过滤功能 先修改datagridEmploye控件的两个属性 showFilterBar:true(是否显示过滤栏)
filterMode:serverSide(datagrid的过滤模式为服务端过滤) 然后修改datasetEmploye的dataProvider属性:employeeService#getAllForFilter 代码如下
package com.bstek.dorado.sample.standardlesson.service;
import java.util.Collection;
import javax.annotation.Resource;
import org.hibernate.criterion.DetachedCriteria;
import org.springframework.stereotype.Component;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.data.provider.Criteria;
import com.bstek.dorado.data.provider.Page;
import com.bstek.dorado.hibernate.HibernateUtils;
import com.bstek.dorado.sample.standardlesson.dao.SlEmployeeDao;
import com.bstek.dorado.sample.standardlesson.entity.SlEmployee;@Componentpublic class EmployeeService {@Resourceprivate SlEmployeeDao slEmployeeDao;@DataProviderpublic Collection<SlEmployee> getAll(){return slEmployeeDao.getAll();}@DataProviderpublic void getAllForPage(Page<SlEmployee> page){slEmployeeDao.getAll(page);}@DataProviderpublic void getAllForFilter(Page<SlEmployee> page, Criteria criteria) throws Exception{DetachedCriteria detachedCriteria = DetachedCriteria.forClass(SlEmployee.class);if (criteria != null){slEmployeeDao.find(page, HibernateUtils.createFilter(detachedCriteria, criteria));}else{slEmployeeDao.getAll(page);}}
}
到这里就完成了,可以查看下效果
记Dorado7学习(5)相关推荐
- 2021 程序媛跳槽记:学习计划篇(已收获字节等offer)
今天推荐的这篇文章是一位互联网程序媛写的跳槽日记.她本硕毕业于985计算机专业,先后就职于央企和BAT.这一篇就是她跳槽到互联网的学习笔记,希望能对大家有所帮助,感兴趣的读者也可以关注公众号,听听更多 ...
- c语言语法记不住,学习技巧 | 总是记不住英语语法!这些速记口诀,你一定需要!...
原标题:学习技巧 | 总是记不住英语语法!这些速记口诀,你一定需要! 一.冠词基本用法 [速记口诀] 名词是秃子,常要戴帽子, 可数名词单,须用a或an, 辅音前用a, an在元音前, 若为特指时,则 ...
- 2021 程序媛跳槽记:学习计划篇
三妹跳槽系列文章: 2021 程序媛跳槽记:百度阿里字节等各大厂面经篇 2021 程序媛跳槽记:必刷LeetCode算法题(附解题报告) 坦白说,我这个人不算聪明,基础也不咋样,这次跳槽我一开始是很没 ...
- 学计算机的怎样记笔记,学习小秘诀:不要用笔记本电脑记笔记
"多多益善."从对于起重机马力的蜂窝数据计划中的工作数量可以看出,这句圣言在美国文化中无所不在.当我们谈论到大学生时,多多益善的信条也许就是构成他们广泛认为在课堂上使用笔记本电脑会 ...
- 学习笔记-记ActiveMQ学习摘录与心得(一)
这两天在看开源的MQ技术,趁着晚上安静,把这两天学的东西摘录下.在公司学东西效率真心捉鸡,心里总觉得别扭,拿了公司的钱不干活还在那学习,表示心情不淡定,效率不行啊...晚上时间是我的,下班还是蛮开心的 ...
- 学习笔记-记ActiveMQ学习摘录与心得(二)
上个周末被我玩过去了,罪过罪过,现在又是一个工作日过去啦,居然有些烦躁,估计这几天看的东西有点杂,晚上坐下来把自己首要工作任务总结总结.上篇学习博客讲了ActiveMQ的特性及安装部署,下面先把我以前 ...
- 别人那里看来的,先记着,学习下,以后也许就用到了
各种帮助类汇总:https://github.com/Blankj/AndroidUtilCode 常用的 ios 风格 dialog 和 meterial design 风格的 dialog:htt ...
- verilog学习记(学习设计cpu)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 很早之前,自己就对cpu的设计非常感兴趣.和十几年前比较,现在网上开源的cpu代码还是很多的,比 ...
- AI之路-首发博文-记CCN学习
CCN学习要点 1.卷积核(滤波器) 正方形,二维,有深度(厚度,即通道数),数值随机生成(通常以正态分布方式生成),所以卷积核可以任意多.一个卷积核会让输入图像生成一张特征图,每个卷积核都是一种特征 ...
- 地雷会炸到自己吗_回顾自己曾经的往事 ——记双语学习有感
最新文章
- 三层架构(我了解并详细分析)
- 独家!扒出腾讯新高管余总的真面目!
- 纯做技术是自娱自乐 抛开技术做技术才是出路
- test.php.bak,MongoDB热备份工具:解决官方版备份缺陷
- 25岁“天才少年”曹原再发一篇Nature!1个月时间内的第二篇!
- 中文数字转换为阿拉伯数字
- 【论文解读】LGN: 基于词典构建的中文NER图神经网络
- 计算机网络应用基础_学习笔记之《计算机网络》概述
- erlang使用leveldb
- linux邮件报警命令,linux 邮件报警,监控内存cup
- 精读解析 Entire Space Multi-Task Model(ESMM) 阿里2018年CVR预测
- 电视dns服务器修复,电信电视dns遭到劫持的解决方法分享
- 文件上传 webshell 各类型 一句话木马 图片马 制作 教程
- python实现提取视频里的语音转换为文字
- 标梵分析SEM竞价托管的选择方式
- 所谓资本寒冬,不过是一厢情愿的破灭
- 各版本Metal支持的iOS版本与MacOS版本
- 关于eclipse项目中项目上直接出现大红感叹号的问题
- 数学证明凸透镜成像原理
- saas商城跟源码商城对比优势在哪里