开发者社区> XOSG> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

ASP.net与JavaEE语法、内置对象的对比

简介:
+关注继续查看

1 各自的HelloWord版本

1.1 ASP

<%
 Response.Write("hello asp")
%>

文件名为test.asp。

1.2 ASP.net

<%@ page Language="C#" %>
<%
 Response.Write("hello asp.net");
%>

文件名为test.aspx。

需要注意的是由于ASP.net支持多种语言开发,而默认的语言是VB.net,这里使用的是C#语言,所以必须对其进行明确控制。否则编译时会按照VB.net进行,从而报错!

1.3 JSP

<%
    out.println("hello jsp");
%>

文件名为 test.jsp

1.4 分析

asp,aspx,jsp都采用了相同的嵌入语法<%代码%>,都内置了用于输出文本的对象,ASP-Response,ASP.net-Response, JSP-out。

对于语言来讲,VBScript不区分大小写,而C#和Java都区分;

对于命名习惯,VBScript和C#的类、属性、方法首字母都大写,而Java除了类其它的统统都习惯以小写字母开头。

2 基本语法

2.1 嵌入表达式

(1)ASP

<%= %>

(2)ASP.net

<%= %>

(3)JSP

<%= %>

可见,三者完全相同。

2.2 嵌入声明

(1)ASP

<script Language="VBScript" runat="server>

 sub f
      Response.Write("hello asp from script")
 end sub

</script>

(2)ASP.net

<script Language="C#" runat="server">

void f()

{

    Response.Write("asp.net from script");

}

</script>

(3)JSP

<%!

   public void f()

  {

       out.println("jsp ");

  }

%>

可见,ASP和ASP.net使用的语法相同,而JSP不一样。

2.4 嵌入程序片段

(1)ASP

<%程序片段%>

(2)ASP.net

<%程序片段%>

(3)JSP

<%程序片段%>

可见三者的语法完全一样。

3 内置对象

3.1 ASP

(1)Request对象

代表了客户端发送到服务器端的信息。携带了如用户端浏览器信息、请求字符串、表单数据、cookies等。

(2)Response对象

代表了服务器端返回到客户端的相关内容与操作,可以通过它设置返回内容,返回cookie设置,是否缓存等。

(3)Application对象

代表了整个应用,是应用范围内的变量。多个页面共享它,所以会涉及到并发访问的问题,所以提供了Lock和Unlock方法进行同步处理。

(4)Session对象

代表了一个会话,会话有一个唯一的ID标识,客户端一般通过cookie或者请求字符串来提供会话的标识。

(5)Server对象

代表了服务器端的环境,提供了注册组件、映射路径等基本操作。

(6)ObjectContext对象

用于控制ASP的事务处理,编程时很少直接用到。

3.2 ASP.net

(1)Request对象

作用与ASP中的Request相同。

(2)Response对象

作用与ASP中的Request相同。

(3)Application对象

作用与ASP中的Application相同。

(4)Session对象

作用与ASP中的Session相同。

(5)Server对象

作用与ASP中的Session相同。

(6)Page对象

代表当前的页面,或者编译后的类。

3.3 JSP

(1)request对象

作用与ASP,ASP.net中的Request相同,JSP里是小写。

(2)response对象

作用与ASP,ASP.net中的Response类似,JSP里是小写。

(3)application对象

作用与ASP,ASP.net中的Application相同,JSP里是小写。

(4)session对象

作用与ASP,ASP.net中的Session相同,JSP里是小写。

(5)out对象

实现向客户端的输出,作用类似ASP,ASP.net中的Response.Write()。

(6)page对象

代表当前页面,或者编译后的Servlet。

4 数据库访问使用的对象

4.1 ASP

ASP采用了ADO技术访问数据库。

(1)Connection类

代表了一个数据库管理系统的连接。

Set conn = Server.CreateObject("ADODB.Connection")

(2)Command类

对连接好的数据库执行命令。

(3)RecordSet类

记录集。

Set rs = Server.CreateObject("ADODB.Recordset")

(4)Field类

(5)Parameter类

(6)Property类

(7)Error类

4.2 ASP.net

ASP.net采用ADO.net技术访问数据库。

(1)SqlConnection

与ASP中的Connection一样。

(2)SqlCommand

与ASP中的Command一样。

(3)DataSet

与ASP中的RecordSet类似。

4.3 JSP

JSP采用了JDBC技术来访问数据库。

(1)Connection类

负责数据库的 连接。

(2)Statemaent类

类似于ASP中的Command,负责SQL语句的执行。

(3)ResultSet

结果集,类似于ASP的RecordSet,以及ASP.net的DataSet。

5 结论

通过分析比较可以看出ASP,ASP.net,JSP有着非常多的共同点,都是对Http以及SQL数据库处理的规范化与流程化,其设计思路完全一致,只是技术实现存在细节差异。

尽管各自的开发环境、编码规范等等也存在不小的差异,但是由于其设计理念和处理流程极其类似,所以一个项目一开始往往只有一个版本,一旦后来发展的 比较好,就会陆续推出其他平台的版本,比如discuz最早就是PHP开发的,后来有了ASP.net的版本。同样一个程序员如果真正掌握了任何一种平 台,其开发经验90%都可以用到其他平台上,很多程序员在ASP.net和JSP之间转换只需要2周时间,这并不奇怪。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Asp.Net4.0/VS2010新变化(6):内置的图表控件
.net4.0以前,要想在网页上画个饼图,那还真不是个轻松的活儿,得有点技术含量,比如:可以用System.Drawing下的那些东东,再或者用Silverlight/Flash或第三方控件   现在asp.
829 0
ASP.NET自定义控件组件开发 第一章 第二篇 接着待续
原文:ASP.NET自定义控件组件开发 第一章 第二篇 接着待续      ASP.NET自定义控件组件开发 第一章 第二篇 接着待续     很感谢大家给我的第一篇ASP.NET控件开发的支持!在写这些之前,我也看了一些例子,想选中一些好上手的例子,这样,可能一些例子大家以前都见过,但是我想说:同样是弹钢琴,同样一首“命运交响曲”,有的人弹的让人荡气回肠,有的人弹的就很一般。
892 0
ASP.NET自定义控件组件开发 第一章 第三篇
原文:ASP.NET自定义控件组件开发 第一章 第三篇                                             第三篇:第一章的完结篇     系列文章链接: ASP.
880 0
一起谈.NET技术,asp.net控件开发基础(10)
  集合属性相信大家都很熟悉也很常用,如DropDownList,ListBox等控件             测试1            测试2            测试3           1.实现集合属性效果   经过前面几篇的学习,相信这一篇看起来已经相对简单了.我们要做的就是,先定义一个复杂属性,然后用迭代语句获取数组数据即可。
751 0
+关注
XOSG
半路出家的MEAN全栈工程师; 从运维转型开发的佛系程序员
514
文章
18
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载