JSP应用
来源:互联网 发布:java webservice 编辑:程序博客网 时间:2024/05/17 21:59
一.JSP 中的语法
1.注释:<%-- 注释 --%>
2.JSP表达式:<%= 表达式 %>
<%=map.get("type") %>
3.JSP脚本(java语句):<% %>
<%for(int i=0;i<10;i++){%>
<li>列表项目 <%=i %></li>
<%} %>
4.JSP声明:<%! 声明内容 %>
<%!
//在Servlet中声明类的属性,方法等
double test(int a,int b){
return Math.sqrt(a*a+b*b);
}
%>
5.JSP指令:<%@ 指令名 属性=值%>
(1)<%@ page %> page指令:用于导包、设置页面属性
<%@ page import="java.util.Map,java.util.HashMap"
language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
(2)<%@ include file="url" %> 包含指令
<%@ include file="/WEB-INF/nav.jsp" %>
(3)<%@ taglib %> 标签指令(导入jstl包,1.2版本):*.tld,实现Tag接口的类
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
二.具体实例使用JSTL
1.Map表
<%
Map map = new HashMap();
//map.put("type","电影控");
request.setAttribute("map",map);
%>
<%=map.get("type") %>结果为:电影控
(1)out标签直接输出
<c:out value="Hello World!"></c:out>结果为:Hello World!
(2)out标签通过EL表达式输出
<%
request.setAttribute("tag", "<a>link</a>");
%>
(1)set标签直接设置值
<c:set var="str" value="Hello World!"></c:set>
<p>str=${str}</p>结果为:str=Hello World!
(2)set标签将一组标签设置为变量
<c:set var="template"><a>demo</a></c:set>
<p><c:out value="${template}" escapeXml="true"/>${template}</p>结果为:<a>demo</a>demo
(3)常用路径标签
<c:set var="name" value="熊大"></c:set>
<c:if test="${name eq '熊大' }">
<p>臭狗熊那里跑!</p>
<c:when test="${name eq '熊大' }"><p>找的就是你!</p></c:when>
<c:when test="${name eq '熊二' }"><p>你家老大呢?</p></c:when>
<c:otherwise><p>没有熊出没</p></c:otherwise>
(1)输出循环次数
<c:forEach var="i" begin="1" end="5" step="1">
<p>第${i}次</p>
</c:forEach>
(2)输出对象及循环次数(stat.index从0开始,想从1开始,加1就行了)
<c:forEach var="n" items="${names}" varStatus="stat">
<p>第${stat.index+1}个:${n}</p>
<%
request.setAttribute("price",3.14159);
%>
<%
request.setAttribute("d",new java.util.Date());
%>
<p>今天日期:<fmt:formatDate value="${d}" pattern="yyyy-MM-dd HH:mm:ss"/></p>
结果为:今天日期: 2017-12-20 11:10:13
三.JSP页面中的隐含对象
1.输入输出对象request、response、out,HttpServletRequest,HttpServletResponse,JspWriter
2.作用域通信对象session、application、pageContext,HttpSession,ServletContext,JspContext
3.Servlet对象page、config,HttpServlet,ServletConfig
4.异常对象exception
四.具体实例
<%
if(request instanceof HttpServletRequest){
out.println("实现HttpServletRequest接口");
}
%>
五.EL表达式
1.EL读取单个数据
request.setAttribute("name", name);
request.setAttribute("names", names);
map.put("java","Java 核对技术");
request.setAttribute("map",map);
${map.java}
${map['java']}
User p = new User(1,"linsa",24);
request.setAttribute("user",p);
User[] users={new User(1,"rose",4.0),new User(2,"lily",9.0)}
request.setAttribute("users",users);
1.注释:<%-- 注释 --%>
2.JSP表达式:<%= 表达式 %>
<%=map.get("type") %>
3.JSP脚本(java语句):<% %>
<%for(int i=0;i<10;i++){%>
<li>列表项目 <%=i %></li>
<%} %>
4.JSP声明:<%! 声明内容 %>
<%!
//在Servlet中声明类的属性,方法等
double test(int a,int b){
return Math.sqrt(a*a+b*b);
}
%>
5.JSP指令:<%@ 指令名 属性=值%>
(1)<%@ page %> page指令:用于导包、设置页面属性
<%@ page import="java.util.Map,java.util.HashMap"
language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
(2)<%@ include file="url" %> 包含指令
<%@ include file="/WEB-INF/nav.jsp" %>
(3)<%@ taglib %> 标签指令(导入jstl包,1.2版本):*.tld,实现Tag接口的类
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
二.具体实例使用JSTL
1.Map表
<%
Map map = new HashMap();
//map.put("type","电影控");
request.setAttribute("map",map);
%>
<%=map.get("type") %>结果为:电影控
<c:out value="${map.type['class']}"/>结果为:class java.lang.String
(1)out标签直接输出
<c:out value="Hello World!"></c:out>结果为:Hello World!
(2)out标签通过EL表达式输出
<%
request.setAttribute("tag", "<a>link</a>");
%>
<p><c:out value="${tag}" escapeXml="true"></c:out></p>结果为:<a>link</a>
(1)set标签直接设置值
<c:set var="str" value="Hello World!"></c:set>
<p>str=${str}</p>结果为:str=Hello World!
(2)set标签将一组标签设置为变量
<c:set var="template"><a>demo</a></c:set>
<p><c:out value="${template}" escapeXml="true"/>${template}</p>结果为:<a>demo</a>demo
(3)常用路径标签
<c:set var="base" scope="request" value="${pageContext.request.contextPath}"></c:set>
<c:set var="name" value="熊大"></c:set>
<c:if test="${name eq '熊大' }">
<p>臭狗熊那里跑!</p>
</c:if>
5.核心标签多路分支
<c:choose><c:when test="${name eq '熊大' }"><p>找的就是你!</p></c:when>
<c:when test="${name eq '熊二' }"><p>你家老大呢?</p></c:when>
<c:otherwise><p>没有熊出没</p></c:otherwise>
</c:choose>
(1)输出循环次数
<c:forEach var="i" begin="1" end="5" step="1">
<p>第${i}次</p>
</c:forEach>
(2)输出对象及循环次数(stat.index从0开始,想从1开始,加1就行了)
<c:forEach var="n" items="${names}" varStatus="stat">
<p>第${stat.index+1}个:${n}</p>
</c:forEach>
<c:import url="/WEB-INF/footer.jsp"></c:import>
<%
request.setAttribute("price",3.14159);
%>
<p>价格:<fmt:formatNumber value="${price}" pattern="RMB###,###.00"/></p>结果为:价格: RMB3.14
<%
request.setAttribute("d",new java.util.Date());
%>
<p>今天日期:<fmt:formatDate value="${d}" pattern="yyyy-MM-dd HH:mm:ss"/></p>
结果为:今天日期: 2017-12-20 11:10:13
三.JSP页面中的隐含对象
1.输入输出对象request、response、out,HttpServletRequest,HttpServletResponse,JspWriter
2.作用域通信对象session、application、pageContext,HttpSession,ServletContext,JspContext
3.Servlet对象page、config,HttpServlet,ServletConfig
4.异常对象exception
四.具体实例
<%
if(request instanceof HttpServletRequest){
out.println("实现HttpServletRequest接口");
}
%>
五.EL表达式
1.EL读取单个数据
request.setAttribute("name", name);
${names}
request.setAttribute("names", names);
${names[1]}
map.put("java","Java 核对技术");
request.setAttribute("map",map);
${map.java}
${map['java']}
${map["java"]}
User p = new User(1,"linsa",24);
request.setAttribute("user",p);
${user.name}
User[] users={new User(1,"rose",4.0),new User(2,"lily",9.0)}
request.setAttribute("users",users);
${users[2].name}
阅读全文
0 0
- Jsp应用
- Jsp应用
- JSP应用
- JSP应用
- JSP应用
- 【jsp简单应用】jsp计算器
- JSP应用的安全问题
- JSP应用的安全问题
- JSP与JAVABEAN应用
- jsp应用javaBean
- Ajax应用(jsp例子)
- javaMail的jsp应用
- jsp注释应用
- jsp中相关应用
- 文件上传JSP应用
- Jsp +applet 应用总结
- JSP应用总结
- JSP的应用
- Python基础 urllib
- 从银行转账失败到分布式事务:总结与思考
- 使用UDP协议编写一个网络程序
- IT时代的投资
- Oracle12C用户创建、授权、登录
- JSP应用
- [Nginx]Nginx简单使用(一)
- 3378 数据结构实验之查找六:顺序查找
- Linux C学习笔记 —— 字符串处理函数(string.h)
- Ext操作DOM元素之insertHtml
- 【vim】插件管理及代码智能提示与补全环境的配置
- 使用Atom快速打造好用的Markdown编辑器
- MATLAB 制作gif动态图
- RedHat Enterprise 6.4 安装