jeesite的使用(三)html
上次说到关于自动生成的增删改查简单的操做的数据流向此次 看我用本身的代码去创建本身的功能的:java
我以 院系表 班级表 学生表 教师表和课程表 为例下面是自建的表格信息:mysql
修改一下表哈 在student表的添加一个studentNo字段sql
在mysql中创建好表开始jsp
本身写代码了函数
先明确一下个人需求:url
我须要呈现学生的基本信息列表 :包括 学生的院系 班级 学号 姓名 年龄 能够经过院系 班级 学号 年龄 单个或多个查询 xml
好了如今开始了 :htm
先写好SQL语句:对象
能够使用本身日常用SQL也能够参考自动生成的代码的SQL我喜欢用后者:
在Navicat for MySql 新建一个查询
本身在各表中添加了一些数据本身写的Sql如上经过左链接能够把三个表链接在一块儿查到三个表的数据
固然你也能够不用左链接SQL 以下:
如今自动生成的HyReportDao.xml文件目录下新建一个StudentDao.xml 并把前者的数据复制过来(也能够本身打,若是你本身不嫌麻烦的话),而后清除掉不须要的数据以下:
参考自动生成的代码写一个SELECT 并把本身的SQL复制过来以下:
id 本身命名 resultType是对应的实体类 即下面你须要查找的字段
而后咱们在自动生成的entity包中建一个Student的实体类:
以下:(图片中写错了 :字段名是和SQL里面的别名对应)
而后在自动生成的HyReportDao.java所在目录建一个StudentDao.java接口以下:
而后就是让SQL所在层和Dao接口层联系在一块儿了
只须要在sql所在层作以下修改就能够了:
而后怎么调用SQL呢 能够在StudentDao 接口层建一个方法名与select 的id 对应的 方法便可,具体以下:
如今SQL和D ao就链接在一块儿了,如今让我来链接 service层和Controller层
分别在两层中建StudentService.java 和StudentController .java 以下:
注意一下参考一下自动生成代码而后别忘记了注释(如:@Controller) 和继承相关类
如今写一下jsp页面:
在自动生成的JSP页面下建一个StudentList.jsp 内容全删除而后把自动生成的HyReportlist.jsp 的内容复制过来再本身修改为本身须要的 我修改后以下:
上面的JS 不动,固然你也能够删除觉得上面是用来分页的函数(须要分页功能的话,给一个建议去看系统设置--用户管理的源码,而后比较有什么不一样本身去尝试比我给你说的要好多了)
其余修改如上,先别理会为何先往下面看:
回到contorller 而后写一个方法以下:
参考自动生成的代码 注意别忘了注释
上图有报错标志,把鼠标悬浮在上面点击 create Method 那个提示能够自动在S ervice层建一个与之链接的方法(你也能够本身直接到S ervice层去写这个方法)
这个方法是与以前 写的Dao层方法链接一块儿的
而后咱们就能够到系统设置去配置一个菜单好菜单以下(菜单的设置在(一)):
保存之后而后
改一下JSP页面:
items=””引号里面是model.addAttribute("studentList", studentList);中引号里面的值
var=””引号里面是遍历的集合对象 就是实体类S tudent (不区分大小写,为了好识别最好小写)
而后就能够从新运行了效果图以下:
这样这个列表功能就完成了
下面来搞一下查询了,有上面的基础就好写了
先写JSP层以下:
加了一个表单 地址对应controller中value 的值为select的方法(它有自带的样式class="" 本身能够参考自动生成代码加上)
再写controller层以下:
而后service层
而后Dao层
传参的时候别忘了@Param(“studentName”), 也能够不加可是要保证和实体类中属性名相同(不是太确定没试过可是同事用过能够用)
而后Dao.xml 层
我在原来方法里面加了条件test=” studentName”引号里面的studentName和#{studentName}里面的studentName都是和@Param(“studentName”)里面的对应的
你也能够从新写一个SELECT 不过ID和方法名要改一下并且还要一致
而后就能够实现查询功能了 好了介绍完了,关于jeesite的使用这就算介绍完了,要更好更快的实现功能的话就须要本身不断地尝试打代码了,我这个只是简单的介绍。