JSP的基本语法:
JSP文件有5类元素:注释,模版,脚本,指令,行为
下面我就和大家分别唠唠,这5个玩意到底是啥玩意!
一.注释(我feel有三种):
html注释:<!--……--> 显式注释,即客户端可见
jsp注释:<%--……--%> 隐式注释,即客户端不可见
java注释:<%//……%> 或 <%/*……*/%> 隐士注释
二.三种脚本:声明元素,Scriptlet元素,表达式元素
1.声明元素: 用java语句声明定义一个或多个常量、变量、方法、类
<%! java声明语句 %>
2.Scriptlet(小脚本)元素: 可包含Java语句、html元素等代码
<% 代码片段 %>
注:在编写代码中,可以采用字符串的形式“”来使用html中的标签元素;
例:
<%
for (int i=0; i<5; i++) {
//out是jsp中提供的,用于向浏览器显示内容;
//这里的println是源代码换行,而"<br>"才是客户端中换行;
out.println("<h1>helloworld" + i + "<br><h1>");
}
%>
或采用分段式的写法来编写小脚本(更常用)
例:
<% for(int i=0; i<5; i++){ %>
<h3>
HELLOWORLD <%=i%> <br>
</h3>
<% } %>
3.表达式元素: 不需使用“;”来结束表达式
<%= (能被转换成字符串的)表达式 %>
三.指令: <%@……>
常用指令标签:
<%@ page ... %> 定义页面的依赖属性,比如编码格式、内容类型、error页面、缓存需求等
<%@ include ... %> 包含其他文件
<%@ taglib ... %> 引入标签库的定义,可以是自定义标签
例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.util.*" buffer="8kb" %>
<%@ include file=" C:/Program Files (x86) /1.jsp" %>
四.行为:<jsp:……>
JSP行为标签使用XML语法结构来控制servlet引擎。
行为标签只有一种语法格式,它严格遵守XML标准:
注:Web开发中Bean指定就是类,分为实体bean和业务bean
常用的动作标签:
jsp:useBean 寻找和初始化一个JavaBean组件(即:实例化一个类的对象)
jsp:setProperty 设置 JavaBean组件的值
jsp:getProperty 将 JavaBean组件的值插入到 output中
jsp:include 用于在当前页面中包含静态或动态资源
jsp:forward 从一个JSP文件转向另一个文件(转发,跳转),地址栏不变
jsp:param 提供指定参数 可以包括在jsp:include和jsp:forward标签中
处理插件的三个标准动作:
jsp:plugin 用于在生成的HTML页面中包含Applet和JavaBean对象
jsp:params 用于向HTML页面上的插件传递参数
jsp:fallback 用于指定客户不支持java插件时该怎么做
jsp:element 动态创建一个XML元素
jsp:attribute 定义动态创建的XML元素的属性
jsp:body 定义动态创建的XML元素的主体
jsp:text 用于封装模板数据
例1: jsp:useBean
<jsp:useBean id="animal" class="com.zjx.vo.Animal" scope="page" >
<jsp:setProperty property="name" name="animal" value="狗"/>
<jsp:getProperty property="name" name="animal" />
……
</jsp:useBean>
等价于:
<%
com.zjx.vo.Animal animal = new com.zjx.vo.Animal();
animal.setName(“狗”);
……
%>
<%= animal.getName() %>
注:也通过传递自动修改bean组件的值,不需指定值:但必须满足以下条件:
① serProperty标签要写在userBean标签里;
② Bean中属性名和提交传递过来的名字一致;即:setProperty中property字段的值和提交传递过来信息的名字(原信息中的name字段的值)相等;
例2:jsp:include
<jsp:include page="1.jsp"></jsp:include>
等价于:
<%@ include file="1.jsp"%>
例3:jsp:forward
<jsp:forward page="1.jsp"></jsp:forward>
等价于
<%
request.getRequestDispatcher("b.jsp").forward(request,response);
%>
注:jsp:forward 可以使用jsp:param 子标签向跳转页中传入一些参数;
例4:jsp:param
添加参数值为中文时:加码 java.net.URLEncoder.encode("中文","utf-8")
<jsp:param value='<%=java.net.URLEncoder.encode("中文","utf-8")%>' name="paramname"/>
得到中文的参数值:解码java.net.URLDecoder.decode(("中文","utf-8")
java.net.URLDecoder.decode(request.getParameter("paraname"),"utf-8")
JSP的基本语法:的更多相关文章
- JSP的基本语法
JSP的基本语法 一.JSP页面中的JAVA代码 二.JSP页面中的指令 三.JSP页面中的隐含对象(九大内置对象) 目录 一.JSP页面中的JAVA代码 JSP表达式(方便输出) 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简单介绍 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 ...
随机推荐
- Java数组和C++异同
一.定义和初始化 1.Jave定义和初始化: Java:两种方式 Type[] A; Type A[]; 定义时不能指定数组的长度 静态初始化: A = new Type[][Ele1,Ele2 ...
- Ubuntu 16.04 软件中心闪退 解决方案
最近使用16.04不知道是哪里出了问题,软件中心打不开了,点击图标之后完全不显示GUI,过一会儿软件就自动关闭了,然后也没有报错的log. 虽然可以使用命令行升级,但是强迫症不能忍啊. 经过一番折腾, ...
- NOIP 考前 数论复习
POJ 2891 x=r1 (mod a1) x=r2 (mod a2) x=a1*x+r1,x=a2*y+r2; a1*x-a2*y=r2-r1; 用Extend_Gcd求出m1*x+m2*y=d; ...
- python27(32位)安装RTree
一开始用pip install -r requirements.txt 报错:OSError: could not find or load spatialindex_c.dll 1)从以下链接下载编 ...
- CSS各种定位详解
1.定位的专业解释 (1)语法 position:static|absolute|fixed|relative (2)说明 从上面语法可以看出,定位的方法有很多种,它们分别是静态(static),绝对 ...
- dsfgsdfg
两融余额止跌回升,金融股回落飘绿,千股涨停续演,沪指收复4000点未果涨逾2% 相关报道 [今日收盘]灾后重建激情抢筹 大盘两日反弹500点 [今日收盘]沪指涨近6%重回3700点 未停牌个股九成涨停 ...
- 深入理解Javascript中this, prototype, constructor
在Javascript面向对象编程中经常需要使用到this,prototype和constructor这3个关键字. 1.首先介绍一下this的使用:this表示当前对象;如果在全局中使用this,则 ...
- swf格式文件如何修改里面的动作路径或者动作脚本(没有源文件的情况)
一.UrlActionEditor汉化版,这个工具是非常的简单和使用,直接把你需要需要修改的swf格式的flash文件在这里面打开 二.如果需要更加详细的修改可以下载一个SWFDecompiler4. ...
- IOS 学习之 iOS沙盒(sandbox) 介绍 沙盒机制 文件操作(一)
1.iOS沙盒机制 iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等. ...
- cookie httponly属性
Marks the cookie as accessible only through the HTTP protocol. This means that the cookie won't be a ...