// 查询部门列表
public Page<DepartmentVO> findPage(PageRequest pageRequest,
DepartmentVO department) {
//创建查询条件容器
Map<String, Object> values = new HashMap<String, Object>();
//创建SQL容器
StringBuilder sb = new StringBuilder();
//添加数据
sb.append("select t1.id as id,t1.dept_name as dept_name,case when t2.dept_name is null then '无' else t2.dept_name end as parent_dept_name,t1.parent_dept_id as parent_dept_id,ci.companynameforshort as companyName"
+ " from srp_depts t1 left join srp_depts t2 on t1.parent_dept_id=t2.id left join set_companyinfo ci on ci.id=t1.company where t1.isdel='0'");
Page<DepartmentVO> dept = null;
try {
//查询条件不为空
if (department != null) {
//判断查询条件是否为空
if (StringUtils.isNotBlank(department.getQuery_deptName())) {
//把查询条件加入sql容器(使用参数模式)
sb.append(" and t1.dept_name like:deptName");
//给查询参数赋值
values.put("deptName", "%" + department.getQuery_deptName()
+ "%");
}
if (StringUtils.isNotBlank(department.getQuery_parentDeptName())) {
sb.append(" and t2.dept_name like:parentDeptName");
values.put("parentDeptName", "%"
+ department.getQuery_parentDeptName() + "%");
}
}
sb.append(" order by t1.parent_dept_id desc ");
//获取page
dept= jdbcDao.queryForPage(pageRequest, sb.toString(),DepartmentVO.class, values);
} catch (Exception e) {
e.printStackTrace();
}
return dept;
}
我是JAVA新手,这是个BS架构的管理软件的查询功能方法,我只知道大概意思,但
比如Page<DepartmentVO> findPage(PageRequest pageRequest, DepartmentVO department)??。。
很多我都不明白,请大家帮帮我!谢谢大家!
谢谢您的回答,我觉的自己还是不太明白,因为涉及到的基础知识太多了,对于JAVA,我也是刚刚入门,我想知道您所说的这些,包括整个代码所涉及的知道,我应该去看些什么书,或什么资料才能达到很好的理解和认识呢。
追答java编程思想(Thinking in Java):涉及但这段代码所需要的java基础知识(java疯狂讲义)中的泛型类和为什么要设计泛型类。
同时你还需要了解此项目的框架,代码组织结构。以方便你对业务处理的代码调用逻辑有更好的理解。常见框架(MVC)+常见技术(Servlet,Struts,Spring)等。
对涉及到的数据库知识也需要把握,包含常见得sql表述方式,参数的添加方法,及底层查询结果集方法得掌握。DB2,ORICAL,SQL Server,mysql等。
另外 findPage(PageRequest pageRequest,DepartmentVO department)
这段的话,PageRequest有两个?难道第二个PageRequest的类型是第一个PageRequest,怎么解释呢,DepartmentVO department这连个又是什么意思,如果是引用类或变量也有.预算符啊,很纠结这些。
.....这是基础的声明变量类型啊...声明一个pageRequest类型为PageRequest 的变量...这个pageRequest自己随意想取什么名都行的...
非常非常感谢你的这么详细的回答,我刚刚才看到,感觉你这么一说原来模糊的东西一下都明白了,再次非常感谢!我问题还会向您请教!