发表于: 2017-12-28 21:49:49

1 534


今日完成

1.逆向工程的使用,单表查询的mapper和xml文件全部配置完成。

(1)配置pom插件,——这里需要配置xml文件的路径

(2)添加配置文件与properties文件

需要修改 输出文件夹,表格数据库。

(3)点击插件的运行即可——自动生成mapper接口xml文件,pojo类。

2.三层结构的代码

(1)mapper ——自定义查询在学学生数。

(2)xml

(3)sevice 实现类

(4)编写控制层

(5)精简jsp页面的代码——使用了C标签

(6)测试

一个做成动态了其他的也快了

(7)完成其他的动态页面

(8)学习了一下c:foreach的用法

 <c:forEach>标签

JSP页面的显示逻辑中也经常需要对集合对象进行循环迭代操作,<c:forEach>标签用于对一个集合对象中的元素进行循环迭代操作,或者按指定的次数重复迭代执行标签体中的内容。<c:forEach>标签有两种语法格式:

语法1,在集合对象中迭代:

<c:forEach [var="varName"]

                     items="collection"

                     [varStatus="varStatusName"]

                     [begin="begin"] [end="end"] [step="step"]>

       body content

</c:forEach>

语法2,迭代固定的次数:

<c:forEach [var="varName"]

                     [varStatus="varStatusName"]

                     begin="begin" end="end" [step="step"]>

       body content

</c:forEach>

<c:forEach>标签的属性说明如表8.6所示。

表8.6  <c:forEach>标签的属性

属性名

是否支持EL

属性类型

属 性 描 述

var

false

String

指定将当前迭代到的元素保存到page这个Web域中的属性名称

items

true

任何支持的类型

将要迭代的集合对象

varStatus

false

String

指定将代表当前迭代状态信息的对象保存到page这个Web域中的属性名称

begin

true

int

如果指定items属性,就从集合中的第begin个元素开始进行迭代,begin的索引值从0开始编号;如果没有指定items属性,就从begin指定的值开始迭代,直到end值时结束迭代

end

true

int

参看begin属性的描述

step

true

int

指定迭代的步长,即迭代因子的迭代增量

 

在使用<c:forEach>标签时,需要注意如下几点说明:

l  如果指定begin属性,其值必须大于或等于零;

l  如果指定步长(step属性),其值必须大于或等于1;

l  如果items属性的值为null,则要处理的集合对象为空,这时不执行迭代操作;

l  如果指定的begin属性的值大于或等于集合对象的长度,不执行迭代操作;

l  如果指定的end属性的值小于begin属性的值,不执行迭代操作;

 

<c:forEach>标签的items属性的值支持下面的数据类型:

l  任意类型的数组

l  java.util.Collection

l  java.util.Iterator

l  java.util.Enumeration

l  java.util.Map

l  String

items属性还支持与数据库有关的数据类型java.sql.ResultSet(包括javax.sql.RowSet),这些数据类型将在8.5 节的数据库标签中进行介绍。对字符串的迭代操作通常使用<c:forTokens>标签或JSTL函数,例如fn:split和fn:jion,JSTL函数将在8.7节进行介绍。

3.学习外键,外连接,还有一些查询语法的使用

内连接:从左表中取出每一条数据,去和右表中与所有的记录进行匹配:匹配必须是某个条件在左表中与右表中相同才会保留结果

基本语法:

Select * from 左表 join 右表 on    左表 .字段右表.字段 表示连接条件。条件字段就是代表相同的业务含义。

表别名与字段别名

Select * from my_student as s inner  join   my_class as c  on  s.c_id  = c.id 

4.使用多表查询,来完成页面2 的内容。

(1)一样的流程,定义sql语句。

(2)不过这里需要定义resultMap了。

(3)接口,服务层,测试

报错:

明日计划

1.继续完成多表查询

2.完成jstl函数的使用

3.准备小课堂。

遇到问题

1.为什么使用jetty的时候逆向工程也启动?只能注释代码了。


收获

1.红色的东西。


返回列表 返回列表
评论

    分享到