快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

JSP基本语法

一,JSP元素

1,脚本元素,包括表达式、程序码片段(包括内置类)、声明(成员变量和方式)、注释(输出和隐藏)
2,指令元素,包括page (language,extends,import,session,buffer,autoFlush,isThreadSafe,info,errorPage, isErrorPage,contentType)、include(file)和taglib(uri,prefix)。
3,动作元素,系统元素:
jsp:include page=? flush="true"(jsp1.1必须是这个) 可以夹带jsp:param来添加request
jsp:forward page=? 可以夹带jsp:param来添加request
jsp:param name=? value=?
jsp:plugin
type="bean|applet"
code="classfileName"
codebase="classfilePathUrl"
align=?height=? name=? width=?hspace="与环绕文本之间的水平空白空间的大小" vspace=?
archive="标识包含对象的Java类的.jar文件的URL"
jrevision="标识组件需要的运行时环境JRE版本,默认1.1"
title="ie使用的对象标题"
nspluginurl="可以为Netscape下载JRE插件的URL"
iepluginurl="可以为IE下载JRE插件的URL"
jsp:params由jsp:plugin封装一个jsp:action列表 如jsp:param放在中间
jsp:fallback 加载jsp:plugin失败时用来提供一个替代的html响应,如一段文本
jsp:useBean
id="实例名"
scope="page|request|session|application"
class="类名,若无type则须有class,若有beanName则须无class"
beanName="a.b.c|a/b/c.cer,与class不两立"
type="有同接口的类名,或类实现的接口名(只能使用接口中的方式)"
jsp:setProperty name="bean实例id" property="bean须有setPropertyName()的方式" [param=?] value=?若不指定value则从request中取与property名字一样或param名字一样的变量,若值为""不执行
jsp:getProperty name="bean id" property="bean属性,须有getPropertyName()方式" 该动作元素直接输出
4,空白字符:空格(0x20),Tab(0x09),回车(0x0d0a),jsp页面中的这些符号都会被out.println
5,转义字符 %>,,%>,\\\',"都应当用转义


二,隐藏对象

1,request javax.servlet.HttpServletRequest类型,
String getParameter(String parameterName);
java.util.Enumeration getParamerterNames();
String[] getParameterValues();

Object getAttribute(String name);
java.util.Enumeration getAttributeNames();
void removeAttribute(String attributeName);
void setAttribute(String name, Object object);

javax.servlet.http.Cookie[] getCookies();

java.util.Enumeration getHeaderNames();//消息头
java.util.Enumeration getHeaders(String headerName);
String getHeader(String headerName);
int getIntHeader(String headerName);
long getDateHeader(String headerName);

String getMethod();//哀求方式
String getRequestURI;//协议名和查询字符串之间,无主机名
String getContextPath();//哀求的文件所在的应用程序环境
String getServletPath();//以contextPath为根,指定小程序或jsp所在的位置
String PathInfo();//额外的路径信息
String getQueryString();

boolean isSecure();//是否用了HTTPS
boolean isRequestedSessionIdFromCookie();
boolean isRequestedSessionIdFromURL();
boolean isRequestedSessionIdValid();//哀求会话的ID是否有效

java.util.Locale getLocale();//客户同意内容所采取的Locale,取决于AcceptLanguge
java.util.Enumeration getLocales();
2,response javax.servlet.http.HttpServletResponse
int getBufferSize();
void setBufferSize(int size);//
boolean isCommitted();//写入状态码和报头后,响应是否已提交
void reset();//清除缓存内的所有数据包括状态码和报头
void flushBuffer();//强制缓存中的任何内容写入客户

void addHeader(String name,String value);
void setHeader(String name, String value);
void addDateHeader(String name, long date);
void setDateHeader(String name, long date);
void addIntHeader(String name, int value);
void setIntHeader(String name, int value);
boolean containsHeader(String name);
void setContentType(String type);
void setLocale(java.uti.Locale, locale);

void sendError(int sc, String msg);
void sendError(int sc);//状态码和描述性信息项客户发送错误响应
void sendRedirect(String location);
3,pageContext javax.servlet.jsp.PageContext(由详细开发商完成详细化)
/*int scope:
pageContext.PAGE_SCOPE
pageContext.REQUEST_SCOPE
pageContext.SESSION_SCOPE
pageContext.APPLICATION_SCOPE
*/
Object getAttribute(String name);//pageScope变量
Object getAttribute(String name, int scope);
Object findAttribute(String name);
java.util.Enumeration getAttributeNamesInScope(int scope);
int getAttributeScope(String name);
void removeAttribute(String name);
void removeAttribute(String name, int scope);
void setAttribute(String name, Object object);
void setAttribute(String name, Object object, int scope);

javax.servlet.jsp.JspWriter getOut();//out
Exception getException();//exception
javax.servlet.ServletRequest getRequest();//request
javax.servlet.ServletResponse getResponse();//response
javax.servlet.http.HttpSession getSession();//session
javax.servlet.ServletConfig getServletConfig();//config
javax.servlet.ServletContext getServletContext();//application

javax.servlet.jsp.JspWriter popBody();
javax.servlet.jsp.tagext.BodyContent pushBody();//治理taglib内部的嵌套输出流

void forward(String relativeUrlPath);
void include(String relativeUrlPath);
void handleException(java.lang.Exception e);

4,session javax.servlet.http.HttpSession
//安装cookie

//URL重写

//SSL会话

Object getAttribute(String attributeName);
java.util.Enumeration getAttributeNames();
void setAttribute(String name, Object value);
void removeAttribute(String name);

long getLastAccessedTime();//最后一次发送本次session相关数据的时间
/*关于long型时间:指从1970-1-1 00:00:00 开始的毫秒数*/
void setMaxInactiveInterval(int interval);//秒为单位
int getMaxInactiveInterval();
void invalidate();//使会话无效

5,out javax.servlet.jsp.JspWriter
//错误是会引发java.io.IOException
void clear();//清除缓冲区,response.reset()?
void clearBuffer();//清除缓冲区当前内容
void flush();//
void close();//先刷新再关闭
int getBufferSize();
int getRemaining();//还没有使用的缓冲区
boolean isAutoFlush();//page autoFlush属性

void print(Object object);
void println(Object object);
6,application javax.servlet.ServletContext
String getInitParameter(String name);
java.util.Enumeration getInitParameterNames();

Object getAttribute(String name);
void setAttibute(String name, Object object);
java.util.Enumeration getAttributeNames();
void removeAttribute(String name);
//修改的时候,isThreadSafe最好设成false,而且用synchronized()

java.net.URL getResource(String path);
//URL::getPath()跟application.getRealPath()相同
java.io.InputStream getResourceAsStream(String path);//同URL::openStream();

//RequestDispatcher:工作在服务器笑程序之间的服务
javax.servlet.RequestDispatcher getNamedDispatcher(String name);//name 为servlet的名称
javax.servlet.RequestDispatcher getRequestDispatcher(String path);//path 为servlet的路径

void log(String message);
void log(String message, Throwable throwable);//将一个消息和栈跟踪记录到小程序日志文件中
String getMimeType(String file);
String getRealPath(String virtualPath);//URL::getPath
String getServerInfo();
int getMajorVertion();
int getMinerVertion();

7,config javax.servlet.ServletConfig
String getInitParameter(String name);
java.util.Enumeration getInitParameterNames();
String getServletName();
ServletContext getServletContext();
8,page javax.servlet.jsp.HttpJspPage
//通常不是JSP页面的创作者使用
javax.servlet.ServletConfig getServletConfig();
String getServeletInfo();
9,exception java.lang.Exception
String getLocalizedMessage();
String getMessage();
void printStackTrace();
void printStackTrace(java.io.PrintStream ps);
void printStackTrace(java.io.PrintWriter pw);
返回类别: 教程
上一教程: JAVA 中PROTECTED MODIFIER 使用总结
下一教程: 生产者消费者模型的JAVA简朴实现

您可以阅读与"JSP基本语法"相关的教程:
· JSP基本语法介绍
· JSP开发入门(二)----JSP语法的基本原理
· JSP语法(6)
· JSP应用语法详解大全
· JSP及语法概要
    微笑服务 优质保证 索取样品