发表于: 2017-11-04 23:54:44
1 779
今天完成的事情:
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
评论