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

ASP
asp取动态表单中数据并写入xml文件,用xsl显示
一个非常简单的将半角转换为中文的函数
Jmail发邮件的例子
ASP常用的几个功能模块
改进性能和样式的 24个 ASP 技巧
给blog加上运行代码功能
关于静态页生成问题 突破form数量限制
UTF-8编码
utf-8编码转换成gb2312
Utf-8和Gb2312乱码问题的终结
UTF-8转GB2312函数
防止网站内容被小偷采集的ASP代码
ASP中过滤UBB和Html标签
在线数据库管理工具(db007) v1.5
Response.Flush的使用心得
域名查询系统用到的类
检测函数 asp class
利用ASP规划聊天室
聊天室实现私聊
多域名绑定到一个空间访问不同首页的技巧

ASP与JSP的区别和联系


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 112 ::
收藏到网摘: 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"--