发表于: 2017-11-04 23:54:44

1 778


今天完成的事情:

1.搞定tiles

整合后,再一次调整了URL。然后也是了动态效果。

2.完成任务四

明天计划的事情:

整理一下任务四,开始任务五

遇到的问题:

主要就是两个页面的头部文件所运用的css格式文件不一样,然后搞了很久,最后直接选用一个页面的头部文件,有冲突的地方删掉就ok了。

还有就是浏览器兼容问题确实不怎么容易发现,总感觉是样式问题,所以有时候谷歌浏览器中不显示的格式,也可以去别的浏览器试试,谷歌浏览器并不一定是最好用的。

收获:

深度思考:

1.什么是jsp?

jsp的全称为:java server pages(java服务器页面)

它是java的服务器页面,它能支持java的代码编写的web页面(.jsp后缀结尾的html文件)。

(1)jsp在<%, %>中编写java代码

(2)jsp基于sun的JDK来执行,也就是说jsp文件是java文件的某种伪格式。

(3)jsp的运行。

1)jsp在tomcat发布。

2)在浏览器访问过程中,jsp会生成1⃣️jsp名称_jsp.java和2⃣️jsp名称_jsp.class,这就说明jsp在执行过程中先生成java文件再使用java语法编译,从而在jvm(虚拟机)执行。

所以,jsp是网站的view(视图),同时还能提供java的执行和显示结果。它的作用涵盖了html和java的功能。

2.jsp有几个内置对象?

JSP有九大内置对象:

Request、Reponse、Out、Session、Application、Cookie、Config、Page、Exception 。

(1)Request对象

发送请求时,该对象被创建,一次请求结束后即销毁。(一次请求产生一个request对象)该对象封装了用户提交的信息,通过调用该对象相应的方法要以获取封装的信息。   

(2)Response对象:

对客户的请求做出动态响应,向客户端发送数据。响应客户请求时创建,响应结束时销毁。(一次响应产生一个response对象)。

(3)Session对象

在页面的page指令加上session="true" 或缺省情况下以及在servlet中使用request.getSession();的方式进行创建。超时或服务停止时,session结束。(一个用户对应一个session对象)。

(4)Application对象:

启动服务时创建,停止服务时销毁。(整个程序只有一个application对象)。

(5)Out对象:

请求时,就创建,请求结束时,销毁。(一个请求,创建一个out对象)。

(6)cookie对象:

cookie是web服务器保存在用户硬盘上的一段文本,cookie允许一个web站点在用户电脑上保存信息并且随后再取它。

(7)config对象:配置对象。

(8)page对象:页面对象。

(9)Exception对象:在处理异常的网页中可以直接访问exception隐式对象。

3.熟练使用c标签,el表达式。

------c标签

(1)输出标签

 <c:out value="${属性名}"></c:out>:输出标签

(2)迭代标签

语法:

          <c:forEach items="userList" var="user" varStatus=“status” begin=“int“  end=”int”step=“int” >

                                 //循环体

                     <c:out value="${status.index}"></c:out>

                                 <c:out value="${status.count}"></c:out>

                                 <c:out value="${ user.name }"></c:out>

                                 <c:out value="${ user.age }"></c:out>

           </c:forEach>

说明:

1)items:是集合,用EL表达式;

2)var:变量名,存放items ,代表集合中每一条数据

3)varStatus: 显示循环状态的变量,有一下几个属性

①index:从0开始; 显示当前迭代的索引值

②count:元素位置,从1开始;  显示当前迭代显示的行位置,通过配合判断语句,实现给奇、偶行着不同的色,以进行分区

③first:如果是第一个元素则显示true; 

④last:如果是最后一个元素则显示true;

4)begin:循环的初始值(整型);

5)end: 循环结束 ;

6)step:步长,循环间隔的数值;

(3)<c:if test="判断语句"></c:if>:若果满足test中的条件,则执行<c:if></if>标签对之间的的语句,相当于if....的结构功能

(4)<c:choose>:由于JSTL没有形如if (){…} else {…}的条件语句,所以这种形式的语句只能用<c:choose>

结构形式:

                <c:choose>

                               <c:when test="判断语句1">执行语句1</c:when>

                               <c:when test="判断语句2">执行语句1</c:when>

                               ..........

                               <c:otherwise>前面都不符合,执行此默认语句

                               </c:otherwise>

                </c:choose>

用于选择标签对之间满足条件的语句,相当于switch语句

(5)<c:redirect>标签

说明:标签将请求重新定向到另外一个页面。

例子: <c:redirect url="http://www.baidu.com/login.jsp"/>

将请求重新定向到http://www.baiddu.com/login.jsp页,相当于response.setRedirect ("http://www.yourname.com/login.jsp");

(6)<c:param>标签

说明:<c:param>标签用来传递参数给一个重定向或包含页面。

例子: 

<c:redirect url="http://www.baidu.com/login.jsp">

         <c:param name="paramName" value="paramValue"/>

</c:redirect>

这个就在地址栏里面显示的形式为:http://www.baidu.com/login.jsp?paramName=paramValue

-------EL表达式:

(1)概念:Expression Language提供了在 JSP 脚本编制元素范围外(例如:脚本标签)使用运行时表达式的功能。脚本编制元素是指页面中能够用于在 JSP 文件中嵌入 Java 代码的元素。它们通常用于对象操作以及执行那些影响所生成内容的计算。

(2)语法结构

  ${expression}

(3)[]与.运算符

EL 提供.和[]两种运算符来存取数据。

当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 []。

例如:${user.My-Name}应当改为${user["My-Name"] }

如果要动态取值时,就可以用[]来做,而.无法做到动态取值。

例如:${sessionScope.user[data]}中data是一个变量

(4)变量

 EL存取变量数据的方法很简单。

例如:${username}。它的意思是取出某一范围中名称为 username的变量。

它会依序从Page、Request、Session、Application范围查找(范围从小到大)。

如果找到则停止,并且不显示null,而是不显示值,这也是el表达式的优点,同时也是使用EL表达式取值进行判断时应该注意的。

4.为什么要使用tiles框架?

这个就是tiles的使用总结,字都是一个一个敲的,代码也是自己敲的,没有复制粘贴。

这儿就不再重复贴一遍了。


http://www.jianshu.com/p/c267f9394174






返回列表 返回列表
评论

    分享到