Web开发——服务器端应用技术简单比较
在开发动态网站时,离不开服务器端技术,服务器端技术主要有CGI、ASP、PHP、ASP.NET和JSP。
1、CGI
CGI(Common Gateway Interface 通用网关接口)是最早用来创建动态网页的技术,它可以使浏览器与服务器之间产生互动。它允许使用不同语言来编写适合的CGI程序,该程序被放在Web服务器上运行。当客户端发出请求给服务器时,服务器根据用户请求建立一个新的进程来执行指定的CGI程序并将执行结果以网页形式返回给客户端的浏览器上显示出来。虽说CGI是当前应用程序的基础技术,但这种技术的编制比较困难,且效率低下,因为每次页面被请求时,都要求服务器重新将CGI程序编写成可执行的代码。在CGI中最常用的语言有C/C++、Java和Perl。
2、ASP
ASP(Active Server Page 动态服务页面)是一种很广泛的开发动态网站的技术。它通过在页面代码中嵌入VBScript或JavaScript脚本语言来生成动态的内容。但必须得在服务器端安装了适当的解释器后,才可以通过调用此解释器来执行脚本程序,然后将执行结果与静态内容部分结合并传送到客户端浏览器上。对于一些复杂的操作,ASP可以调用存在于后台的COM组件来完成,所以说COM组建无限地扩充了ASP的能力,正因为如此一来本地的COM组件,使得它主要用于Windows NT平台中。它的优点是简单易学,并且ASP是与微软的IIS捆绑在一起,在安装WIndows操作系统的同时安装上IIS就可以运行ASP程序了。
3、PHP
PHP(Hypertext Preprocessor 超文本预处理器)的语法类似于C,并且混合了Perl、C++和Java的一些特性,它是一种开源的Web服务器脚本语言,与ASP一样可以在页面中加入脚本代码来生成动态内容。对于一些复杂的操作可以封装到类或函数中。在PHP中提供了许多已经定义好的函数,例如提供的标准数据库接口,数的数据库连接方便,扩展性强。PHP可以被多个平台支持,但被应用最广泛的还是UNIX/Linux平台。由于PHP本身的代码对外开放,经过了许多软件工程师的检测,因此,该技术具有公认的安全性能。
4、ASP.NET
这种建立动态Web应用程序的技术,是.NET框架的一部分,可以使用任何.NET兼容的语言来编写ASP.NET应用程序。使用VisualBasic.NET,C#,J#,ASP.NET 页面(Web Forms)进行编译可以提供比脚本语言更出色的性能。Web Forms允许在网页基础上建立强大的窗体。当建立页面时,可以使用ASP.NET服务端控件来建立常用的UI元素,并对他们编程来完成一般的任务。这些控件允许开发者使用内建可重用的组建和自定义组建来快速建立Web Forms,使代码简单化。
5、JSP
JSP(Java Server Pages)是以Java为基础开发的,所以它沿用Java强大的API功能,JSP页面中的HTML代码用来显示静态内容部分,嵌入到页面中的Java代码与JSP标记来生成动态内容部分。JSP可以被预编译,从而提高了程序的运行速度。另外JSP开发的应用程序经过一次编译后,可以随时随地地运行,所以在大部分系统平台中,代码无需做修改就可以在支持JSP的任何服务器中运行。
Web开发——服务器端应用技术简单比较的更多相关文章
- Bootstrap 简洁、直观、强悍的前端开发框架,让web开发更迅速、简单。
Bootstrap 简洁.直观.强悍的前端开发框架,让web开发更迅速.简单.
- 基于gin的golang web开发:Gin技术拾遗
本文是对前几篇文章的一些补充,主要包含两部分:单元测试和实际项目中使用路由的小问题. 拾遗1:单元测试 Golang单元测试要求代码文件以_test结尾,单元测试方法以Test开头,参数为*testi ...
- Python Web开发:Django+BootStrap实现简单的博客项目
创建blog的项目结构 关于如何创建一个Django项目,请查看[Python Web开发:使用Django框架创建HolleWorld项目] 创建blog的数据模型 创建一个文章类 所有开发都是数据 ...
- 关于java web开发需要哪些技术要求(简单的web界面管理系统)
目前, 国内外信息化建设已经进入基于Web应用为核心的阶段, Java作为应用于网络的最好语言,前景无限看好.然而,就算用Java建造一个不是很烦琐的web应用,也不是件轻松的事情.概括一下,实施Ja ...
- Bootstrap 简洁、直观、强悍、移动设备优先的前端开发框架,让web开发更迅速、简单。
http://v3.bootcss.com/ 从2.x升级到3.0版本 Bootstrap 3并不向后兼容Bootstrap v2.x.下面章节列出的内容可以作为从v2.x升级到v3.0的通用指南.如 ...
- 这些年常用的WEB开发工具和技术, 学会一半你找工作没问题
前言: 技术选型并不是一成不变的,需要根据技术的发展.项目实际情况和人员技能构成实际考虑,在此列出的只是这些年常用的. 开发环境 1. 主要开发语言:Java7, HTML, Javascript等 ...
- Asp.NetCore Web开发之会话技术
这节讲一下会话技术,首先了解一下什么是会话,会话是指浏览器打开到关闭的过程中,多次与服务器发送接收数据的过程. 由于HTTP是无状态协议,一次请求响应过后,产生的数据就随之释放了,可是在某些情况下,我 ...
- Java Web开发后端常用技术汇总
技术名称及官网 Spring Framework Spring容器 http://projects.spring.io/spring-framework/ SpringMVC Spring MVC框架 ...
- web开发简史与技术选型
视频地址:http://v.youku.com/v_show/id_XMTQxNzM1MzAwOA==.html?firsttime=0&from=y1.4-2
随机推荐
- 网站访问日志User Agent对照表
percent useragent system user_agent_string_md5 8.9% Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleW ...
- springsecurity basic 认证
Basic Access Authentication scheme是在HTTP1.0提出的认证方法,它是一种基于challenge/response的认证模式,针对特定的realm需要提供用户名和密 ...
- 怎样在hibernate的HQL语句中使用mysql 的自定义函数?
问题:怎样在hibernate中使用mysql的函数? 1.hibernate支持原生态的sql语句查询,使用session.createSQLQuery()创建查询对象: 2.怎样在hql中使用my ...
- hdu4699-Editor
Sample Input 8 I 2 I -1 I 1 Q 3 L D R Q 2 Sample Output 2 3 发现IDLR四种操作都在光标处发生,且操作完成后光标至多移动1个位置,根据这种“ ...
- 【BZOJ】3173: [Tjoi2013]最长上升子序列(树状数组)
[题意]给定ai,将1~n从小到大插入到第ai个数字之后,求每次插入后的LIS长度. [算法]树状数组||平衡树 [题解] 这是树状数组的一个用法:O(n log n)寻找前缀和为k的最小位置.(当数 ...
- 【BZOJ】4555: [Tjoi2016&Heoi2016]求和 排列组合+多项式求逆 或 斯特林数+NTT
[题意]给定n,求Σi=0~nΣj=1~i s(i,j)*2^j*j!,n<=10^5. [算法]生成函数+排列组合+多项式求逆 [题解]参考: [BZOJ4555][Tjoi2016& ...
- mysql-front导入数据失败:“在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符”
mysql-front导入sql文件失败,弹出框显示如下: 解决方法:在选择文件时,选择合适的字符集即可 参考:http://www.th7.cn/db/mysql/201604/185149.sht ...
- B - GuGuFishtion(莫比乌斯 欧拉函数 预处理mu函数的欧拉函数的模板)
题目链接:https://cn.vjudge.net/contest/270608#problem/B 题目大意:题目中说,就是对欧拉函数的重新定义的一种函数的求和. 证明方法: AC代码: #inc ...
- 用js拼接url为pathinfo模式
用js拼接url为pathinfo模式
- 全面了解 Nginx 主要应用场景
前言 本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解到过得.所以还请见谅,同时欢迎留言交流 N ...