jsp初级语法和php对比

作者 FarLee 2010年4月6日 1:43:58   ‖浏览(12,258)

最近看了几个JSP架构的网站源码,发现JSP的入门级语法标记和PHP长得还挺像的,同样作为服务器端的脚本代码,无事就摘出来对比一下。

1. 首先看看JSP和PHP语言标记(Mark)

  • JSP代码(代码片段)标记以 <%开头,以%> 结尾,即<% code fragment %>。
  • PHP脚本代码(代码片段)以<?php 开头,以 ?> 结尾。

2. JSP指令(Directives)

JSP指令不会直接产生任何可见输出的HTML代码,而只是告诉JSP引擎如何处理其余JSP页面代码。JSP指令的格式为:<%@directive %> 标记中。最经常用到的两个jsp指令是“page”和“include”。如

指定语言编码和编程语言:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

指定java出错页面:

< %@ page errorPage="error.jsp" %>

“include”指令包含jsp网页的一部分,如网页头部:

<%@ include file="/farlee/includes/header.jsp" %>

而PHP也有类似的语法结构,如PHP Include 和 require:

如包含导航部分代码: <?php include("menu.php"); ?>

3. JSP声明 (Declarations)

JSP声明可以简化繁多的代码,将它们写成一个独立的Java类别声明就可以了。JSP声明的格式标记为< %! declaration %>。用分号(;)结束变量声明,如:<%! int year=2010; %>< %! circle a = new circle (2,0); %>

PHP中的变量声明仍然在<?php 和 ?>之间,变量名前加一个美元符号$:<?php $year=2010; ?>。同时分号结尾也是必须。

4. JSP表达式(EXPressions)

JSP表达式结果会输出字符串显示在HTML页面代码上。JSP 表达式格式标记为<%= expression %>,表达式结尾是没有分号的,如:

<strong><%=numguess.gethint() %></strong>

上面的java脚本看起来是不是很繁? 还好有JSP表达式语言这个JSP2.0规范的技术,JSP表达式可以像这样使用了:${EL expression}。

美元符号$表示表达式的开始,EL expression 就是表达式了。

5. JSP注释(Comments)

HTML注释由<–开头,–>结束;Javascript注释和CSS注释都可以由/*开头,*/结尾进行注释;PHP注释和JS注释都可以用//注释一行,用/**/注释多行。

JSP 注释的格式标记为:<%– comment for 远方博客 farlee.info only –%>

用户仍然会在网页代码上看到HTML 注释,如果你不想让用户看到一些注释,就可以使用PHP注释或者JSP注释,只在服务器端可以看到,因此也被称为隐藏注释。

6. 其他JSP 语法

相比PHP,其他JSP特色的语法标记还有以下这些等等:

  • Taglib 指令 定义一个标签库以及其自定义标签的前缀:<%@ taglib uri=”URIToTagLibrary” prefix=”tagPrefix” %>
  • <jsp:forward>重定向一个HTML文件,JSP文件,或者是一个程序段.
  • <jsp:getProperty>获取Bean的属性值,用于显示在页面中
  • <jsp:include>包含一个静态或动态文件.
  • <jsp:plugin>执行一个applet或Bean,有可能的话还要下载一个Java插件用于执行它.
  • <jsp:useBean>创建一个Bean实例并指定它的名字和作用范围.

“jsp初级语法和php对比”文章评论(8)

  1. 最近就在学jsp~~

    • jsp比php难那么一些哦

  2. 学的时候学了点JSP,工作以后竟然用上了PHP
    咳,现在是什么都不精

    • 哈哈,没办法谁让php应用更广泛,大项目才找jsp,jsp主机也不普及阿

  3. 我来点下广告,我不留言啦,哈哈

  4. 哥们,你现在是在用IE6么?

    • 不是的,是Firefox 3.5 +Ubuntu9.10。

  5. 开始学PHP的时候还是PHP3见到PHP4的时候,后来转投ASP.NET,现在PHP基本上忘干净了

来说兩句