zoukankan      html  css  js  c++  java
  • 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")

    如果我引用您的博文记录,没有指出,请求您的原谅。可以私信告诉我,我一定改正! 注:我写博文的目的主要是记录得失,若有什么误人子弟的地方,请多多见谅指正;
  • 相关阅读:
    bzoj1208 宠物收养所treap/splay/set
    Angular 下的 function
    argunlar 1.0.1 【数据绑定】
    argunlar 1.0.0 【hello,world】
    JavaScript编写风格指南 (三)
    JavaScript编写风格指南 (二)
    JavaScript编写风格指南 (一)
    AngularJS开发指南:表达式
    HTML5 移动开发(移动设备检测及对HTML5的支持)
    HTML5 移动开发(CSS3设计移动页面样式)
  • 原文地址:https://www.cnblogs.com/zhaojinxin/p/5683927.html
Copyright © 2011-2022 走看看