仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 419|回复: 7
打印 上一主题 下一主题

[学习教程] JAVA网页设计JSP基础语法

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:09:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
到时我们不用学struts,不用学spring,不用学Hibernate,只要能把jsf学会了,完全可以替代所有的框架,包括AJAX,都知道AJAX并不是新技术,虽说我没深入学习jsf但我认为jsf应该已经能通过其它技术替代AJAX,实现无缝刷新。js|语法一,JSP元素
1,剧本元素,包含表达式、程序码片断(包含内置类)、声明(成员变量和办法)、正文(输入和埋没)
2,指令元素,包含page(language,extends,import,session,buffer,autoFlush,isThreadSafe,info,errorPage,isErrorPage,contentType)、include(file)和taglib(uri,prefix)。
3,举措元素,体系元素:
jsp:includepage=?flush="true"(jsp1.1必需是这个)能够夹带jsp:param来增加request
jsp:forwardpage=?能够夹带jsp:param来增加request
jsp:paramname=?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:setPropertyname="bean实例id"property="bean须有setPropertyName()的办法"[param=?]value=?若不指定value则从request中取与property名字不异或param名字不异的变量,若值为""不实行
jsp:getPropertyname="beanid"property="bean属性,须有getPropertyName()办法"该举措元素间接输入
4,空缺字符:空格(0x20),Tab(0x09),回车(0x0d0a),jsp页面中的这些标记城市被out.println
5,本义字符%>,,%>,,"都应该用本义


二,埋没对象
1,requestjavax.servlet.HttpServletRequest范例,
StringgetParameter(StringparameterName);
java.util.EnumerationgetParamerterNames();
String[]getParameterValues();

ObjectgetAttribute(Stringname);
java.util.EnumerationgetAttributeNames();
voidremoveAttribute(StringattributeName);
voidsetAttribute(Stringname,Objectobject);

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

java.util.EnumerationgetHeaderNames();//动静头
java.util.EnumerationgetHeaders(StringheaderName);
StringgetHeader(StringheaderName);
intgetIntHeader(StringheaderName);
longgetDateHeader(StringheaderName);

StringgetMethod();//哀求办法
StringgetRequestURI;//协定名和查询字符串之间,无主机名
StringgetContextPath();//哀求的文件地点的使用程序情况
StringgetServletPath();//以contextPath为根,指定小程序或jsp地点的地位
StringPathInfo();//分外的路径信息
StringgetQueryString();

booleanisSecure();//是不是用了HTTPS
booleanisRequestedSessionIdFromCookie();
booleanisRequestedSessionIdFromURL();
booleanisRequestedSessionIdValid();//哀求会话的ID是不是无效

java.util.LocalegetLocale();//客户批准内容所接纳的Locale,取决于AcceptLanguge
java.util.EnumerationgetLocales();
2,responsejavax.servlet.http.HttpServletResponse
intgetBufferSize();
voidsetBufferSize(intsize);//
booleanisCommitted();//写进形态码和报头后,呼应是不是已提交
voidreset();//扫除缓存内的一切数据包含形态码和报头
voidflushBuffer();//强迫缓存中的任何内容写进客户

voidaddHeader(Stringname,Stringvalue);
voidsetHeader(Stringname,Stringvalue);
voidaddDateHeader(Stringname,longdate);
voidsetDateHeader(Stringname,longdate);
voidaddIntHeader(Stringname,intvalue);
voidsetIntHeader(Stringname,intvalue);
booleancontainsHeader(Stringname);
voidsetContentType(Stringtype);
voidsetLocale(java.uti.Locale,locale);

voidsendError(intsc,Stringmsg);
voidsendError(intsc);//形态码和形貌性信息项客户发送毛病呼应
voidsendRedirect(Stringlocation);
3,pageContextjavax.servlet.jsp.PageContext(由详细开辟商完成详细化)
/*intscope:
pageContext.PAGE_SCOPE
pageContext.REQUEST_SCOPE
pageContext.SESSION_SCOPE
pageContext.APPLICATION_SCOPE
*/
ObjectgetAttribute(Stringname);//pageScope变量
ObjectgetAttribute(Stringname,intscope);
ObjectfindAttribute(Stringname);
java.util.EnumerationgetAttributeNamesInScope(intscope);
intgetAttributeScope(Stringname);
voidremoveAttribute(Stringname);
voidremoveAttribute(Stringname,intscope);
voidsetAttribute(Stringname,Objectobject);
voidsetAttribute(Stringname,Objectobject,intscope);

javax.servlet.jsp.JspWritergetOut();//out
ExceptiongetException();//exception
javax.servlet.ServletRequestgetRequest();//request
javax.servlet.ServletResponsegetResponse();//response
javax.servlet.http.HttpSessiongetSession();//session
javax.servlet.ServletConfiggetServletConfig();//config
javax.servlet.ServletContextgetServletContext();//application

javax.servlet.jsp.JspWriterpopBody();
javax.servlet.jsp.tagext.BodyContentpushBody();//办理taglib外部的嵌套输入流

voidforward(StringrelativeUrlPath);
voidinclude(StringrelativeUrlPath);
voidhandleException(java.lang.Exceptione);

4,sessionjavax.servlet.http.HttpSession
//安装cookie

//URL重写

//SSL会话

ObjectgetAttribute(StringattributeName);
java.util.EnumerationgetAttributeNames();
voidsetAttribute(Stringname,Objectvalue);
voidremoveAttribute(Stringname);

longgetLastAccessedTime();//最初一次发送本次session相干数据的工夫
/*关于long型工夫:指从1970-1-100:00:00入手下手的毫秒数*/
voidsetMaxInactiveInterval(intinterval);//秒为单元
intgetMaxInactiveInterval();
voidinvalidate();//使会话有效

5,outjavax.servlet.jsp.JspWriter
//毛病是会激发java.io.IOException
voidclear();//扫除缓冲区,response.reset()?
voidclearBuffer();//扫除缓冲区以后内容
voidflush();//
voidclose();//先革新再封闭
intgetBufferSize();
intgetRemaining();//还没有利用的缓冲区
booleanisAutoFlush();//pageautoFlush属性

voidprint(Objectobject);
voidprintln(Objectobject);
6,applicationjavax.servlet.ServletContext
StringgetInitParameter(Stringname);
java.util.EnumerationgetInitParameterNames();

ObjectgetAttribute(Stringname);
voidsetAttibute(Stringname,Objectobject);
java.util.EnumerationgetAttributeNames();
voidremoveAttribute(Stringname);
//修正的时分,isThreadSafe最好设成false,并且用synchronized()

java.net.URLgetResource(Stringpath);
//URL::getPath()跟application.getRealPath()一样
java.io.InputStreamgetResourceAsStream(Stringpath);//同URL::openStream();

//RequestDispatcher:事情在服务器笑程序之间的服务
javax.servlet.RequestDispatchergetNamedDispatcher(Stringname);//name为servlet的称号
javax.servlet.RequestDispatchergetRequestDispatcher(Stringpath);//path为servlet的路径

voidlog(Stringmessage);
voidlog(Stringmessage,Throwablethrowable);//将一个动静和栈跟踪纪录到小程序日记文件中
StringgetMimeType(Stringfile);
StringgetRealPath(StringvirtualPath);//URL::getPath
StringgetServerInfo();
intgetMajorVertion();
intgetMinerVertion();

7,configjavax.servlet.ServletConfig
StringgetInitParameter(Stringname);
java.util.EnumerationgetInitParameterNames();
StringgetServletName();
ServletContextgetServletContext();
8,pagejavax.servlet.jsp.HttpJspPage
//一般不是JSP页面的创作者利用
javax.servlet.ServletConfiggetServletConfig();
StringgetServeletInfo();
9,exceptionjava.lang.Exception
StringgetLocalizedMessage();
StringgetMessage();
voidprintStackTrace();
voidprintStackTrace(java.io.PrintStreamps);
voidprintStackTrace(java.io.PrintWriterpw);

J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看NetBeans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。
分手快乐 该用户已被删除
沙发
发表于 2015-1-20 15:28:13 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
小女巫 该用户已被删除
板凳
发表于 2015-1-29 12:16:13 来自手机 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
第二个灵魂 该用户已被删除
地板
发表于 2015-2-2 21:51:40 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
因胸联盟 该用户已被删除
5#
发表于 2015-2-8 07:44:36 | 只看该作者
是一种突破用户端机器环境和CPU
若相依 该用户已被删除
6#
发表于 2015-3-7 14:50:40 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
海妖 该用户已被删除
7#
发表于 2015-3-15 07:37:23 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
灵魂腐蚀 该用户已被删除
8#
发表于 2015-3-21 20:49:33 | 只看该作者
是一种突破用户端机器环境和CPU
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 15:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表