ASP,ASP.net,JSP语法、内置对象对比
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,ASP.net,JSP语法、内置对象对比的更多相关文章
- JSP的执行原理、JSP的内置对象、四大作用域解析、MVC模式理解>从零开始学JAVA系列
目录 JSP的执行原理.JSP的内置对象.四大作用域解析.MVC模式理解 JSP的执行原理 这里拿一个小例子来解析JSP是如何被访问到的 首先将该项目部署到tomcat,并且通过tomcat启动 通过 ...
- JSP的内置对象以及作用域。
最近在面试,一些基础的问题总是会被问到,虽然是基础,但是有些东西在工作中用的少,所以就有些记不清了,在面试的时候更因为紧张很容易造成原先知道的知识也会突然忘了的情况发生.所以在重新组织一下jsp的内置 ...
- JSP的内置对象(上)
1.JSP内置对象的概念:JSP的内置对象时Web容器所创建的一组对象,不使用new关键字就可以使用的内置对象 2.JSP九大内置对象内置对象:out ,request ,response ,sess ...
- JSP&EL 内置对象
JSP&EL 内置对象 转载▼ 具体的JSP和El中的内置对象见下表,由于我写在了excel中,也不知道怎么把excel发出来,就截了图. 相关问题: Q1: JSP:EL中 pageCo ...
- struts访问jsp api内置对象的集中方式
1 default-action-ref元素改元素用来配置默认的action,如果struts找不到对应的action,就会调用这个默认的action 2 dmi处理方式是通过请求action中的一个 ...
- 什么是jsp?jsp的内置对象有哪些?
这里是修真院前端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [什么是jsp? ...
- JSP的内置对象 request和response
文章目录 1.request对象 2.response响应对象 3.out输出对象 4.session会话对象 5.application应用对象 概述 在使用JSP内置对象的时候.不需要先定义这些对 ...
- 菜鸟日记之JSP二 内置对象的理解
·最近学习JSP了,对编程和网络又有了一些理解.无论是现实中人与人的交流,还是网络世界的接触,都是在相互表达自己的意思让别人知道,并理解对方的信息.然后我们知道的事情不断的变多,会又交杂出新的内容,不 ...
- jsp的内置对象
JSP内置对象即无需声明就可以直接使用的对象实例,在实际的开发过程中,比较常用的JSP对象有request,response,session,out和application等,笔者在本文章中将简单介绍 ...
随机推荐
- C# EF Attach 与 Entry
先了解一下 EF 框架的 EntityState 在使用EF框架时, 我们通常都是通过调用 SaveChanges() 方法把增加/修改/删除的数据提交到数据库,但是上下文是如何知道实体对象是增加.修 ...
- 【BZOJ】1854: [Scoi2010]游戏【二分图】
1854: [Scoi2010]游戏 Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 6759 Solved: 2812[Submit][Status] ...
- Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息
Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息 本文目录: 获取手机信息 设置权限 申请权限 查询联系人 获取手机定位信息 调用高德地图,设置显示2个坐标点的位置,以及 ...
- windows下用nginx配置https服务器
1.安装nginx 先到nginx官网下在nginx http://nginx.org/en/download.html 将下载好的文件解压出来修改文件名为 nginx ,然后拷贝到C盘下,目录如下: ...
- 分享下使用 svn,测试服务器代码自动更新、线上服务器代码手动更新的配置经验
分享下使用 svn,测试服务器代码自动更新.线上服务器代码手动更新的配置经验 利用SVN的POST-COMMIT钩子自动部署代码 Linux SVN 命令详解 Linux SVN 命令详解2 使用sv ...
- TCP编程的迷惑
server : ip -- 192.168.96.132 client: ip--192.168.96.131 在服务端,accept函数的其中一个入参是listen-socket,会返回一个新的c ...
- GoDaddy Linux主机支持机房的更换
GoDaddy Linux主机支持机房的更换 http://godaddy.idcspy.com/godaddy-change-data-center GoDaddy推出中文界面后,小编发现虚拟主机有 ...
- Win10系统下如何禁止同步主机session?windows 10禁止同步主机session的方法
近来,有些刚刚升级Win10正式版的用户反映自己的电脑开机时有个同步主机session启动项占用了将近半分钟,而选择用360禁止后,下次会出现同步主机session3,再禁止下次又会出现同步主机ses ...
- 恶意软件正在利用SSLserver窃取用户个人信息!
安全套接层协议(SSL)及安全传输层协议(TLS)旨在提供一个安全.加密的client和server之间的连接网络.为进一步进行身份验证和加密,server必须提供证书,从而直接有效地证明其身份. 使 ...
- java的异常和java web容器的异常
一.java的异常,只要catch住异常了,程序就不会挂,依然会执行catch之后的语句 Java程序发生异常就挂了吗? 为了验证程序不会挂,我写了个例子给大家看看. 测试代码: import jav ...