Object转对象和List
需求1:得到实体类或者对应List<Map<String,Object>>
错误用法(报异常):
(实体类)map.get("key")
正确用法(用fastjson转):
实体类 = JSON.parseObject(JSON.toJSONString(map.get("key")),实体类.class)
需求2:得到list
ArrayList<实体类> =(ArrayList<实体类>)map.get("key");
实体:

list<实体>:

List交换元素位置
List<String,String> details = xxx;
if (CollectionsUtils.isNotEmpty(details)){
Collections.swap(details,1,0);
}
二.shiro权限拦截器
Spring shiro 初次使用小结
三.Mybatis总结
1.MyBatis中的大于号小于号
| < | < |
| > | > |
| & | & |
| ' | ' |
| " | " |
2.Mybatis分页插件PageHelper自动添加limit语句,所以需要全部查询应避免设置pageHelper或者在pageHelper之前进行查询
四.注解
1.
@JsonFormat 默认是标准时区的时间,多出现少8小时的情况
使用时,按需求加上时区 北京时间 东八区 timezone=”GMT+8”
作用:后台的时间 格式化 发送到前台
@DateTimeFormat 接受前台的时间格式 传到后台的格式
五.流程控制语句中有多层的情况处理示例
发料单对应一种控制,劳务分包对应两层控制
```
for (Project project : projects) {
//发料单选择作业队后过滤未分包的工号
if (filter!=null&&filter.equals("发料单")){
Project operationCrewProject = projectService.getByOperationCrew(StringUtils.toInteger(param));
if (operationCrewProject!=null){
if (!operationCrewProject.getCode().contains(project.getCode())){
continue;
}
}else {
break;
}
}
//工程出量、工程计价选择作业队后过滤未进行劳务分包的工号
if(filter!=null&&filter.equals("劳务分包")){
List<Project> labourSubcontractProjects = projectService.findFromLabourSubcontract(StringUtils.toInteger(param));
if (CollectionsUtils.isNotEmpty(labourSubcontractProjects)){
boolean isContinue = false;
for (Project labourSubcontractProject:labourSubcontractProjects){
if (!labourSubcontractProject.getCode().contains(project.getCode())){
isContinue = true;
break;
}
}
if (isContinue){
continue;
}
}else {
break;
}
}
JsonTreeData treeData = new JsonTreeData();
//设置工号全路径
treeData.setRemark(projectService.getFullNameByProjectId(project.getId(),true));
treeData.setId(project.getId()+"");
treeData.setCode(project.getCode());
treeData.setPcode(project.getParentCode());
treeData.setText(project.getName());
treeData.setState("closed");
if(!project.getIsLeaf() && (project.getCode().length()-7)/3==grade-1){
treeData.setState("closed");
}
if(!project.getIsLeaf() && project.getCode().length() <=10){
treeData.setState("open");
}
Map<String, Object> attributes = Maps.newHashMap();
attributes.put("grade", project.getGrade());
attributes.put("pathName", project.getPathName());
attributes.put("isLeaf", project.getIsLeaf());
attributes.put("isCompute", project.getIsCompute());
treeData.setAttributes(attributes);
treeDataList.add(treeData);
}
```
13万+

被折叠的 条评论
为什么被折叠?



