当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP与JSP的区别和联系

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

ASP与JSP的区别和联系


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 99 ::
收藏到网摘: n/a

今天上论坛看了看,有一个网友bluesky提出问题说“ASP与JSP哪个好,他们有什么区别?”

ASP好像不存在线程安全问题,而JSP是存在线程安全问题。这不是说ASP好,恰恰相反说明ASP不如JSP好。

对于ASP:每次请求都要解释执行服务器端代码,执行完除了Session和Application在,其他的都没了,这样的话ASP就无法实现静态变量,不知道是不是真的没有办法实现,请高手指点。

而在JSP中,Servlet(JSP也会变成Servlet)是多线程的,执行完后不但Session和Application还在,而且Servlet实例还在内存,以后请求的话就可以直接用它了,正是这个提高了效率。

我总感觉Servlet模型比ASP先进,而且Java语言使它很专业!这点真的是ASP远远无法比的。

JSP和ASP的几点区别

Session管理

为了跟踪用户的操作状态,ASP应用SESSION对象。JSP使用一个叫HttpSession的对象实现同样的功能。Session的信息保存在服务器端,Session的id保存在客户机的cookie中。如果客户机禁止cookie,Session Id就必须带在url后面。Session一般在服务器上设置了一个30分钟的过期时间,当客户停止活动后自动失效。Session 中保存和检索的信息不能是基本数据类型(primitivedatatypes)如(int, double)等,而必须是java的相应的object(对象)如(Integer,Double)。

HttpSessionsession=request.getSession();//得到一个session对象或创建一个session.getId()//得到sessionID数Integerid=(Integer)session.getValue("id")//检索出session的值并转化为整型 session.putValue("ItemValue",itemName);//ItemValue必须不是must简单类型

Application管理

有时服务器需要管理面向整个应用的参数,使得每个客户都能获得同样的参数值。和Session一样,ASP使用Application对象而JSP使用ServletContext对象,操作的方法和Session一样。

getServletContext().setAttribute("Item",ItemValue);//设置一个应用变量
Integeri=(Integer)getServletContext().getAttribute("ItemName");//得到//item

ServerSideIncludes

在服务器端引用上ASP和JSP有着相同之处。ASP和JSP都可以支持此功能的服务器(IIS,APACHE)上实现服务器端包含虚文件。但JSP是将动态页面的结果包含进来,而不是包含文件的代码本身。当你包含的文件在另一个服务器上时,不包含任何代码和对象是一个非常有效的功能。

ASP:<!--#includefile="subfile.asp"-->
JSP:%@includefile="subfile.jsp"--