发表于: 2017-09-19 22:24:26
1 771
一、今日完成
1.练习任务2和任务3过程中,根据Spring MVC的Controller写了一些的JSP页面,但是基本是模仿师兄的例子做的,对于JSP的标签用法并不熟悉,今天上午学习了如何使用C标签;
1)首先在头文件中作如下声明,引用核心标签库:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
2)<c:out>标签用来显示一个表达式的结果,与<%= %>作用相似,
<c:out value="<string>" default="<string>" escapeXml="<true|false>"/>
value表示要输出的内容,default表示输出的默认值,escapeXml表示是否忽略XML特殊字符;
3)<c:set>标签用于设置变量值和对象属性,
<c:set
var="<string>"
value="<string>"
target="<string>"
property="<string>"
scope="<string>"/>
value 表示要存储的值,target 表示要修改的属性所属的对象,property表示要修改的属性,var 表示存储信息的变量,scope 表示var属性的作用域;
4)<c:remove>标签用于移除一个变量,
<c:remove var="<string>" scope="<string>"/>
var 表示要移除的变量名称,scope表示 变量所属的作用域;
5)<c:catch> 标签主要用来处理产生错误的异常状况,并且将错误信息储存起来,
<c:catch var="<string>">
...
</c:catch>
6)<c:if>标签判断表达式的值,如果表达式的值为 true 则执行其主体内容,
<c:if test="<boolean>" var="<string>" scope="<string>">
...
</c:if>
test 表示条件,var表示 用于存储条件结果的变量;
7)<c:choose>标签与Java switch语句的功能类似,包含<c:when>, <c:otherwise> 子标签
<c:choose>
<c:when test="<boolean>">
...
</c:when>
<c:when test="<boolean>">
...
</c:when>
...
...
<c:otherwise>
...
</c:otherwise>
</c:choose>
8)<c:import>标签提供了所有<jsp:include>行为标签所具有的功能,同时也允许包含绝对URL;
<c:import
url="<string>"
var="<string>"
scope="<string>"
varRender="<string>"
context="<string>"
charEncoding="<string>"/>
其中,charEncoding 表示所引入的数据的字符编码集,varReader 表示可选的用于提供java.io.Reader对象的变量;
9)<c:param>标签用于在<c:url>标签中指定参数,而且与URL编码相关。
<c:param name="<string>" value="<string>"/>
10)<c:redirect>标签通过自动重写URL来将浏览器重定向至一个新的URL,它提供内容相关的URL,并且支持c:param标签,
<c:redirect url="<string>" context="<string>"/>
url 表示目标URL,context 后面紧接着一个本地网络应用程序的名称。
2.根据昨天的DB模型,写后端代码,学习使用eclipse创建基于maven的WEB 项目;因为使用不熟练,所以在软件设置和项目创建流程上花了不少时间。
1)使用web.xml 文件中的url来映射要DispatcherServlet处理的请求
<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Spring MVC Application</display-name>
<servlet>
<servlet-name>east</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>east</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
</web-app>
web.xml中声明的[servlet-name] -servlet.xml放在WebContent / WEB-INF目录下,初始化HelloWeb DispatcherServlet后,Spring将尝试从名为[servlet-name] -servlet.xml的文件加载应用程序上下文。然后<servlet-mapping>标签指示哪个URL将由哪个DispatcherServlet处理。这里以.jsp结尾的所有HTTP请求都将由HelloWeb DispatcherServlet 处理。
2)WebContent / WEB-INF目录下创建[servlet-name] -servlet.xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:component-scan base-package="com.jnshu.east" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
其中,创建定义的bean,覆盖在全局范围内使用相同名称定义的任何bean的定义;使用<context:component-scan ...>标签来激活Spring MVC注释扫描功能,然后就可以使用@Controller和@RequestMapping等注释。而 InternalResourceViewResolver这个将定义解析视图名称规则。根据上述定义的规则,将名为hello的逻辑视图委托给位于/WEB-INF/jsp/hello.jsp的视图实现。
二、明日计划
把web项目接口写完,然后学习使用Tiles标签改写前端的html页面,变成JSP页面
三、遇到问题
学习使用eclipse遇到了各种坑,有一种回到当初开始接触IDEA的感觉,软件配置、目录结构管理等都出了不少错,但是也开始慢慢熟悉起这个新的IDE工具,但是相应的也花了不少时间在这个上面。其中,遇到一个不能解决问题——如何使用eclipse打开一个既有的使用eclipse项目,按照搜索的教程来操作,并没有成功。
四、收获
以上。
禅道链接:http://task.ptteng.com/zentao/task-view-10366.html
因为本周接下来需要请假3天,按照当前的进度看,在下周2时候能够结束提交任务4.
评论