SERVLETJSP Unit05:转发 、 JSP开发常见问题 & Unit09: EL、JSTL
来源:互联网 发布:python ftp上传文件 编辑:程序博客网 时间:2024/06/05 08:44
一.转发和重定向
1.它们的相同点
- 都是解决2个WEB组件之间的跳转问题
WEB组件: Servlet/JSP
2.它们的区别(*)
3.使用建议
- 通常查询时用转发
- 通常增加、修改、删除后重定向到查询
二.EL和JSTL
1.它们的作用
2.演示案例
3.JSTL原理
FindStudentServlet.java
package web;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import entity.Course;import entity.Student;public class FindStudentServlet extends HttpServlet { @Override protected void service( HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { //模拟查询一个学生 Student stu = new Student(); stu.setName("zhangsan"); stu.setAge(23); stu.setSex("M"); stu.setInterests( new String[]{"篮球","足球","排球"}); Course c = new Course(); c.setId(1); c.setName("Java"); c.setDays(82); stu.setCourse(c); //转发 req.setAttribute("stu", stu); req.getRequestDispatcher("student.jsp") .forward(req, res); }}
student.jsp
<%@page pageEncoding="utf-8"%><%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><!doctype html><html> <head> <meta charset="utf-8"/> <title>查询学生</title> </head> <body> <!-- 2.JSTL标签 --> <!-- 2.1 if标签 --> <p> <c:if test="${stu.sex=='M' }">男</c:if> <c:if test="${stu.sex=='F' }">女</c:if> </p> <!-- 2.2 choose标签 --> <p> <c:choose> <c:when test="${stu.sex=='M' }">男</c:when> <c:otherwise>女</c:otherwise> </c:choose> </p> <!-- 2.3 forEach标签 --> <p> <c:forEach items="${stu.interests }" var="i"> ${i } </c:forEach> </p> <!-- 1.EL表达式 --> <!-- 1.1访问Bean属性 --> <!-- request.getAttribute("stu").getName() --> <p>姓名:${stu.name }</p> <p>年龄:${stu.age }</p> <!-- 等价于stu.sex --> <p>性别:${stu["sex"] }</p> <!-- request.getAttribute("stu") .getCourse().getId() --> <p>课程ID:${stu.course.id }</p> <!-- EL表达式的取值范围: 1)EL默认从4个隐含对象中依次取值 page->request->session->application 2)默认依次取值的规则,其意义在于简化EL 表达式,在取值时可以不用写对象名. 3)若希望打破默认规则,明确从某对象中取值, 则需要在表达式前面增加对象名. requestScope.stu.name sessionScope.stu.name --> <p>兴趣:${requestScope.stu.interests }</p> <!-- 1.2访问时可以直接运算 --> <p>年龄+5:${stu.age+5 }</p> <p>介于20-30间:${stu.age>20 && stu.age<30 }</p> <p>是否为空:${empty stu.interests }</p> <!-- 1.3直接获取请求参数 --> <p>参数:${param.user }</p> </body></html>
阅读全文
0 0
- SERVLETJSP Unit05:转发 、 JSP开发常见问题 & Unit09: EL、JSTL
- SERVLETJSP学习(五)—— 转发 、JSP开发常见问题
- 转发 、JSP开发常见问题
- 转发、JSP开发常见问题
- JSP之原理、隐含(内置)对象、开发模式、转发和重定向、EL和JSTL
- JavaWeb开发知识总结(JSP,EL,JSTL)
- SERVLETJSP学习(九)—— EL、JSTL
- JSP EL、JSTL笔记
- jsp el jstl
- jsp-el和jstl
- Servlet-Jsp、EL、JSTL
- WEB-JSP&EL&JSTL
- JSP 基础 EL+JSTL
- day12-jsp&el&jstl
- 关于jsp/el/jstl
- jsp^jstl&el
- jsp ---el---jstl小结
- Day20-jsp & el & jstl
- jquery.form实现ajax上传文件同时设置headers
- Spring + iBATIS完整示例
- Redis入门指南之复制
- JavaScript学习总结——JavaScript编写类
- Leetcode41. First Missing Positive
- SERVLETJSP Unit05:转发 、 JSP开发常见问题 & Unit09: EL、JSTL
- PhxSQL设计与实现
- 深入浅出RxJava(二:操作符)
- 从零开始设计一款APP之如何做原型图
- [leetcode]55. Jump Game(Java)
- 【ruby】【linux】【irb】CentOS上安装配置ruby开发环境,安装 irb
- (3)大蚂蚁webservice
- struct stat结构体简介
- 从零开始教你做高保真原型图+UI 设计规范