仓酷云

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

[学习教程] JAVA编程:JSP语法年夜全

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

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

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

x
再举这样一个例子:如果你想对一个数字取绝对值,你会怎么做呢?java的做法是intc=Math.abs(-166);而ruby的做法是:c=-166.abs。呵呵,这就看出了java与ruby的区别。js|语法  HTML正文

  在客户端显现一个正文。

  JSP语法
  1. <!--comment[<%=expression%>]-->
复制代码
  例子1
  1. <!--Thisfiledisplaystheuserloginscreen-->在客户真个HTML源代码中发生和下面一样的数据:<!--Thisfiledisplaystheuserloginscreen-->
复制代码
  例子2
  1. <!--Thispagewasloadedon<%=(newjava.util.Date()).toLocaleString()%>-->
复制代码
  在客户真个HTML源代码中显现为:
  1. <!--ThispagewasloadedonJanuary1,2000-->
复制代码

  形貌

  这类正文和HTML中很像,也就是它能够在“检察源代码”中看到。

  独一有些分歧的就是,你能够在这个正文顶用表达式(例子2所示)。这个表达示是不定的,由页面分歧而分歧,你可以利用各类表达式,只需是正当的就行。

  埋没正文

  写在JSP程序中,但不是发给客户。

  JSP语法
  1. <%--comment--%>
复制代码
  例子:
  1. <%@pagelanguage="java"%><html><head><title>ACommentTest</title></head><body><h2>ATestofComments</h2><%--Thiscommentwillnotbevisibleinthepagesource--%></body></html>
复制代码
  形貌

  用埋没正文标志的字符会在JSP编译时被疏忽失落。这个正文在你但愿埋没或正文你的JSP程序时是很有效的。

  JSP编译器是不会对%--and--%之间的语句举行编译的,它不会显现在客户的扫瞄器中,也不会在源代码中看到在%----%之间,你能够恣意写正文语句,可是不克不及利用“--%>”,假如你非要利用请用“--%>”。

  声明

  在JSP程序中声明正当的变量和办法。

  JSP语法
  1. <%!declaration;[declaration;]+...%>
复制代码

  例子
  1. <%!inti=0;%><%!inta,b,c;%><%!Circlea=newCircle(2.0);%>
复制代码
  形貌

  声明你将要在JSP程序顶用到的变量和办法。你也必需如许做,否则会堕落。

  你能够一次性声明多个变量和办法,只需以";"开头就行,固然这些声明在Java中如果正当的。

  当你声明办法或变量时,请注重以下的一些划定规矩:

  1声明必需以";"开头(Scriptlet有一样的划定规矩,可是表达式就分歧了)。

  2你能够间接利用在%@page%中被包括出去的已声明的变量和办法,不必要对它们从头举行声明。

  3一个声明仅在一个页面中无效。假如你想每一个页面都用到一些声明,最好把它们写成一个独自的文件,然后用%@include%或jsp:include元素包括出去。

  表达式

  包括一个切合JSP语法的表达式。

  JSP语法
  1. <%=expression%>
复制代码

  例子
  1. <fontcolor="blue"><%=map.size()%></font><b><%=numguess.getHint()%></b>.
复制代码
  形貌

  表达式元素暗示的是一个在剧本言语中被界说的表达式,在运转后被主动转化为字符串,然后拔出到这个表达式在JSP文件的地位显现。由于这个表达式的值已被转化为字符串,以是你能在一行文本中拔出这个表达式(情势和ASP完整一样)。

  当你在JSP中利用表达式时请记着以下几点:

  1你不克不及用一个分号(“;”)来作为表达式的停止符。可是一样的表达式用在scriptlet中就必要以分号来开头了!检察Scriptlet这个表达式元素可以包含任安在JavaLanguageSpecification中无效的表达式。

  2偶然候表达式也能作为别的JSP元素的属性值。一个表达式可以变得很庞大,它大概由一个或多个表达式构成,这些表达式的按次是从左到右。
  Scriptlet

  包括一个无效的程序段。

  JSP语法

  1. <%codefragment%>
复制代码
  例子
  1. <%Stringname=null;if(request.getParameter("name")==null){%><%@includefile="error.html"%><%}else{foo.setName(request.getParameter("name"));if(foo.getName().equalsIgnoreCase("integra"))name="acura";if(name.equalsIgnoreCase("acura")){%>
复制代码
  形貌

  一个scriptlet可以包括多个jsp语句、办法、变量、表达式。

  由于有了scriptlet,我们便能做以下的事:

  1声明将要用到的变量或办法(参考声明)。

  2编写JSP表达式(参考表达式)。

  3利用任何隐含的对象和任何用jsp:useBean声明过的对象。

  4编写JSP语句(假如你在利用Java言语,这些语句必需服从JavaLanguageSpecification)。

  任何文本、HTML标志、JSP元素必需在scriptlet以外。

  当JSP收到客户的哀求时,scriptlet就会被实行,假如scriptlet有显现的内容,这些显现的内容就被存在out对象中。

  Page指令

  界说JSP文件中的全局属性。

  JSP语法
  1. <%@page[language="java"][extends="package.class"][import="{package.class|package.*},..."][session="true|false"][buffer="none|8kb|sizekb"][autoFlush="true|false"][isThreadSafe="true|false"][info="text"][errorPage="relativeURL"][contentType="mimeType[;charset=characterSet]"|"text/html;charset=ISO-8859-1"][isErrorPage="true|false"]%>
复制代码
  例子
  1. <%@pageimport="java.util.*,java.lang.*"%><%@pagebuffer="5kb"autoFlush="false"%><%@pageerrorPage="error.jsp"%>
复制代码
  形貌

  %@page%指令感化于全部JSP页面,一样包含静态的包括文件。可是%@page%指令不克不及感化于静态的包括文件,好比jsp:include。

  你能够在一个页面顶用上多个%@page%指令,可是个中的属性只能用一次,不外也有个破例,那就是import属性。由于import属性和Java中的import语句差未几(参照JavaLanguage),以是你就可以多用此属性几回了。

  不管你把%@page%指令放在JSP的文件的哪一个中央,它的感化局限都是全部JSP页面。不外,为了JSP程序的可读性,和好的编程习气,最好仍是把它放在JSP文件的顶部。

  Taglib指令

  界说一个标签库和其自界说标签的前缀。

  JSP语法
  1. <%@tagliburi="URIToTagLibrary"prefix="tagPrefix"%>
复制代码
  例子
  1. <%@tagliburi="http://www.jspcentral.com/tags"prefix="public"%><public:loop>..</public:loop>
复制代码
  形貌

  %@taglib%指令声明此JSP文件利用了自界说的标签,同时援用标签库,也指定了他们的标签的前缀。

  这里自界说的标签含有标签和元素之分。由于JSP文件可以转化为XML,以是懂得标签和元素之间的接洽很主要。标签只不外是一个在乎义上被举高了点的标志,是JSP元素的一部分。JSP元素是JSP语法的一部分,和XML一样有入手下手标志和停止标志。元素也能够包括别的的文本、标志、元素。好比,一个jsp:plugin元素有jsp:plugin入手下手标志和/jsp:plugin停止标志,一样也能够有jsp:params和jsp:fallback元素。

  你必需在利用自界说标签之前利用%@taglib%指令,并且你能够在一个页面中屡次利用,可是前缀只能利用一次。

  属性
  1. uri="URIToTagLibrary"
复制代码
  UniformResourceIdentifier(URI)依据标签的前缀对自界说的标签举行唯一的定名,URI能够是以下的内容:

  UniformResourceLocator(URL),由RFC2396界说,检察http://www.hut.fi/u/jkorpela/rfc/2396/full.html。

  UniformResourceName(URN),由RFC2396界说。

  一个绝对或相对的路径

  prefix="tagPrefix"

  在自界说标签之前的前缀,好比,在中的public,假如这里不写public,那末这就是分歧法的。请不要用jsp、jspx、java、javax、servlet、sun和sunw做你的前缀。

  jsp:forward

  重定向一个HTML文件、JSP文件、大概是一个程序段。

  JSP语法
  1. <jsp:forwardpage={"relativeURL"|"<%=expression%>"}/>or<jsp:forwardpage={"relativeURL"|"<%=expression%>"}><jsp:paramname="parameterName"value="{parameterValue|<%=expression%>}"/>+</jsp:forward>
复制代码
  例子
  1. <jsp:forwardpage="/servlet/login"/><jsp:forwardpage="/servlet/login"><jsp:paramname="username"value="jsmith"/></jsp:forward>
复制代码
  形貌

  jsp:forward标签从一个JSP文件向另外一个文件传送一个包括用户哀求的request对象。jsp:forward标签以下的代码,将不克不及实行。

  你可以向方针文件传送参数和值,在这个例子中我们传送的参数名为username,值为scott,假如你利用了jsp:param标签的话,方针文件必需是一个静态的文件,可以处置参数。

  假如你利用了非缓冲输入的话,那末利用jsp:forward时就要当心。假如在你利用jsp:forward之前,jsp文件已有了数据,那末文件实行就会堕落。

  属性
  1. page="{relativeURL|<%=expression%>}"
复制代码
  这里是一个表达式或是一个字符串用于申明你将要定向的文件或URL。这个文件能够是JSP、程序段、大概别的可以处置request对象的文件(如asp、cgi、php)。
  1. <jsp:paramname="parameterName"value="{parameterValue|<%=expression%>}"/>+
复制代码
  向一个静态文件发送一个或多个参数,这个文件必定是静态文件。

  假如你想传送多个参数,你能够在一个JSP文件中利用多个jsp:param。name指定参数名,value指定参数值。
<P>  jsp:getProperty

  猎取Bean的属性值,用于显现在页面中。

  JSP语法
海妖 该用户已被删除
沙发
发表于 2015-1-20 16:04:10 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
金色的骷髅 该用户已被删除
板凳
发表于 2015-1-24 18:08:25 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
活着的死人 该用户已被删除
地板
发表于 2015-1-25 09:34:28 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
谁可相欹 该用户已被删除
5#
发表于 2015-1-25 15:14:41 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
简单生活 该用户已被删除
6#
发表于 2015-2-2 22:34:50 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
小魔女 该用户已被删除
7#
发表于 2015-2-8 17:08:34 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
小女巫 该用户已被删除
8#
发表于 2015-2-12 00:51:49 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
再现理想 该用户已被删除
9#
发表于 2015-2-14 01:06:16 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
变相怪杰 该用户已被删除
10#
发表于 2015-3-4 03:37:39 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
老尸 该用户已被删除
11#
发表于 2015-3-11 16:01:09 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
乐观 该用户已被删除
12#
发表于 2015-3-19 00:44:55 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
愤怒的大鸟 该用户已被删除
13#
发表于 2015-3-26 20:02:28 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-24 03:27

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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