jeesite 的使用(四) 

在jeesite的使用(三)中我对怎么建立自己的属于自己的功能做了一个简单的介绍,但是我今天要说的事,我可能坑了大家一把(其实也不是因为你要看(三)中的内容还是对了解jeesite还是有帮助的)哈哈,我今天就来把方向调整一下

上次我自己在建立查询的时候利用了传参然后的方式然后可以实现我们自己的需要(这个方法不错的很好控制,把不同功能给分离了然后不会造成当你要改一个功能然后导致另一个功能出错,但是会让你多写很多很多代码),今天的就拿自己之前的做项目的时候开始的代码和修改后的代码做一个比较然后再看一下区别:

先放点自己开始写的代码如下:

 

jeesite 设置菜单样式 jeesite怎么用_父类

jeesite 设置菜单样式 jeesite怎么用_SQL_02


 

按照我上次说的方式我的查询和列表分开然后写了两个的Controller并且这样需要用两个SQL语句的

我的SQL如下:

jeesite 设置菜单样式 jeesite怎么用_SQL_03

jeesite 设置菜单样式 jeesite怎么用_父类_04


 

 

后来我优化了一下然后上面两个Controller可以合成一个controller如下:

 

jeesite 设置菜单样式 jeesite怎么用_SQL_05


用的是同一个SQL

jeesite 设置菜单样式 jeesite怎么用_SQL_06


 

可以看出来上面的SQL就是第一个列表SQL(第一SQL groupBY和<choose>也是有的自己截的图不知道是自己改几次的版本的了)加where条件

在controller 用(HcmAttendance hcmattendance)就可以把整个的对象给传过来了然后只要在SQL里面加判断条件就行了(注意下判断条件里面#{}的参数是对应实体类的属性名称) 但是有点要注意下传过来的hcmattendance没法直接作为判断条件使用也就是说你在controller里面输出它的值是空的所以如果你需要判断的话需要通过request.getElementBy… 获得判断的值(这个大家自己试一下,我最近看了下jeesite的源码有点不确定了,抱歉是新人,可能有点坑)

   所以在我们写自己功能的时候 它自动生成的增删改查可以满足我们大部分需求(当然需要自己加SQL的判断条件、分组等)

提醒:自带的方法很重要在service 和Dao的父类中自己要了解一下有哪些自带的方法