JSP的基本语法
JSP的基本语法
一、JSP页面中的JAVA代码
1、JSP表达式(格式:<%=%>)
<%=2+2%>
<%=xx.getName()%>
<%=xx.getName()+“str”%>
注意:表达式结束不需要写分号。
这种形式的Java代码在转译成Servlet时,<%= %>内的代码会成为service()方法中使用out.print语句的输出。
out.print(2+2);
out.print(xx.getName());
out.print(xx.getName()+“str”));
2、JSP小脚本(格式:<%%>)
<table>
<%
3 List<Student> students = (List<Student>)request.getAttribute(“students“);
for(Student st : students){
%>
<tr>
<td> <%=st.getId()%> </td>
<td> <%=st.getName()%> </td>
</tr>
<%
}
%>
</table>
以上代码使用小脚本动态生成一个表格。<% %>内的代码最终都会成为service方法的一部分,转换结果如下:
public void service(…){
out.write(“<table>”);
List<Student> students = (List<Student>)request.getAttribute(“students“);
for(Student st : students){
out.write(“<tr> <td>”);
out.print(st.getId());
out.write(“</td><td>”);
out.print(st.getName());
out.write(“</td></tr>”);
}
out.write(“</table>”);
}
3、JSP声明(格式:<%! %>)
<%!
private String name; //属性声明 public void fun(){ //方法声明
//… 方法体
}
%>
JSP声明<%! %>内的代码可以为对应的Servlet添加属性和方法,转换为Servlet之后的结果如下:
public class XXX_JSP extends JSPBase{
private String name; //属性声明
public void fun(){ //方法声明
// … 方法体
}
public void service(… …){
}
}
二、JSP页面中的指令
1、page指令
page指令可以导入java包,也可以对页面的一些属性进行设置。
<%-- 导包 --%>
<%@ page import=“java.util.*“%>
<%@ page import=“java.util.*,java.sql.*“%> <%-- 设置response.setConentType方法的参数值 --%>
<%@ page contentType=“text/html;charset=utf-8“%> <%-- 设置容器读取该文件时的解码方式 --%>
<%@ page pageEncoding=“UTF-8“%>
(1)使用page指令导包时,需要用到import属性。如果需要导入多个包,可以分成多条page指令来编写,也可以在一条page指令中,使用“,“逗号作为分隔来实现。
(2)contentType属性,设置输出内容的编码方式,这样就可以设置浏览器使用正确的解码方式来显示页面。
(3)pageEncoding属性,设置容器读取该文件时的解码方法,这段代码可以保证页面在加载到内存时正确的解码中文。
注意,page指令要放在页面的最上面编写。
2、include指令
include指令主要用于将其他页面包含在另一个页面之中,可以实现页面内容的重用。include指令的语法如下:
<%@ include file=“thetitle.html” %>
3、taglib指令
可引入JSTL的标签库,将标签库对应的jar包拷贝到WEB-INF/lib目录下,以便于系统可以加载所需要的类。使用taglib指令在页面上引入标签的命名空间和前缀,帮助系统定位对应的类。
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
三、JSP页面中的隐含对象(九大内置对象)
由于JSP页面最终要转化为一个Servlet,而作为即将转变为Servlet的一个前期版本,会有很多系统提供给页面能够直接使用的对象,根据页面中要实现的功能直接使用即可。具体的隐含对象信息见下表:
| 隐含对象 | 类型 | 说明 |
| request | HttpServletRequest | 代表请求对象 |
| response | HttpServletResponse | 代表响应对象 |
| out | JSPWriter | 输出流 |
| session | HttpSession | 会话 |
| application | ServletContext | 全局的Servlet上下文对象 |
| pageContext | PageContext | JSP页面上下文 |
| page | Object | 代表JSP页面本身,即this |
| config | ServletConfig | Servlet配置对象 |
| exception | Throwable | 捕获的页面异常对象 |
JSP的基本语法的更多相关文章
- JSP基础知识➣语法整理(二)
A.脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式:<% 代码片段 %>,但是不能包含文件的方法和变量的声明 B.J ...
- JSP基本的语法、3个编译指令、7个动作指令、9个内置对象
一.jsp概述 JSP是java server page的缩写,其本质是一个简化的servlet,是一种动态网页技术标准.jsp页面是在HTML页面中嵌入java程序段.使用jsp开发的应用程序能够跨 ...
- [原创]java WEB学习笔记14:JSP的9 个隐含对象 及 JSP 的基本语法
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- JSP介绍与语法-java之JSP学习第一天(非原创)
文章大纲 一.JSP 简介二.JSP 生命周期三.JSP 语法四.学习资料下载五.参考文章 一.JSP 简介 1. 什么是Java Server Pages? JSP全称Java Server P ...
- JSP的基本语法:
JSP文件有5类元素:注释,模版,脚本,指令,行为 下面我就和大家分别唠唠,这5个玩意到底是啥玩意! 一.注释(我feel有三种): html注释:<!--……--> 显式注释,即客户端 ...
- jsp学习--基本语法和基础知识
一.JSP简单介绍 1.什么是JSP? JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于 ...
- JSP/Servlet基础语法
相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...
- eclipse关掉jsp,js的语法验证
转载:http://blog.csdn.net/testcs_dn/article/details/39058959 eclipse加速之禁用JS.jsp等文件的语法验证 去除eclipse的JS验证 ...
- JSP(基础语法)
一.JSP简介 JSP全称为Java Server Pages,其根本是一个简化的Servlet设计,它实现了在java当中使用HTML标签.JSP是一种动态网页技术标准也就是javaEE的标准.JS ...
随机推荐
- Redis——学习之路二(初识redis服务器命令)
上一章我们已经知道了如果启动redis服务器,现在我们来学习一下,以及如何用客户端连接服务器.接下来我们来学习一下查看操作服务器的命令. 服务器命令: 1.info——当前redis服务器信息 s ...
- Vue - 内部指令
1.插值 A:<span>TEXT:{{text}}</span> {{text}}会被相应的数据类型text属性值替换,当text值改变时候,文本中的值也会相应的发生变化 B ...
- vsftp匿名用户搭建
./configure出现: 请装: 出现这个: 请装 然后: ln -sv /lib/security/pam_mysql.so /lib64/security/
- 2016-1-29 图解HTTP(04)
第7章 确保Web安全的HTTPS 在HTTP协议中有可能存在信息窃听或身份伪装等安全问题.使用HTTPS通信机制可以有效的防止这些问题. 7.1 HTTP的缺点 ● 通信使用明文(不加密),内容可能 ...
- python基础05 if选择
摘要:if语句是用来检查一个条件,如果条件为真(true),我们运行一个语句块(称为IF块),否则(else)运行另一个语句块(else块).else语句是可选的 程序1(将文件保存为if.py): ...
- tessnet2.Tesseract Init程序退出问题解决
1.检查语言包与引用库版本是否一致.2.0需要使用2.0的语言包.(http://www.pixel-technology.com/freeware/tessnet2/) 2.是否安装过3.0,安装中 ...
- 初步了解CPU
了解CPU By JackKing_defier 首先说明一下,本文内容主要是简单说明CPU的大致原理,所需要的前提知识我会提出,但是由于篇幅我不会再详细讲解需要的其他基础知识.默认学过工科基础课. ...
- Ajax基础(小猫)
Ajax 1.什么是Ajax: 不用刷新整个页面便可与服务器通讯的办法 2.Ajax的基本使用 2.1XMLHttpRequest l XMLHttpRequest对象 XMLHttpRequest是 ...
- Python3.5 Day1作业:实现用户密码登录,输错三次锁定。
作业需求: 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 实现思路: 1.判断用户是否在黑名单,如果在黑名单提示账号锁定. 2.判断用户是否存在,如果不存在提示账号不存在. 3. ...
- django 在字符串[str(list)]中精确查找
1.问题描述 1.1表结构 1.2问题 ref_list为id列表的字符串,需要从ref_list中找出包含指定id的数据(eg id=8).如果实用models.objects.filter(ref ...