javaWeb学习(一)——web基础内容

1.一、WEB开发的相关知识

  WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。
  Internet上供外界访问的Web资源分为:php

  1. 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变。
  2. 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不一样时间点访问web页面看到的内容各不相同

  静态web资源开发技术:Html
  经常使用动态web资源开发技术:JSP/Servlet、ASP、PHP等
  在Java中,动态web资源开发技术统称为Javaweb。css

1.二、WEB应用程序

  WEB应用程序指供浏览器访问的程序,一般也简称为web应用。例若有a.html 、b.html…..多个web资源,这多个web资源用于对外提供服务,此时应把这多个web资源放在一个目录中,以组成一个web应用(或web应用程序)
  一个web应用由多个静态web资源和动态web资源组成,如:html、css、js文件,Jsp文件、java程序、支持jar包、配置文件等等。
  Web应用开发好后,若想供外界访问,须要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射html

1.三、WEB发展史

  WEB发展的两个阶段:静态、动态java

1.四、静态WEB

  *htm、*html,这些是网页的后缀,若是如今在一个服务器上直接读取这些内容,那么意味着是把这些网页的内容经过网络服务器展示给用户。整个静态WEB操做的过程图以下:程序员

  在静态WEB程序中,客户端使用WEB浏览器(IE、FireFox等)通过网络(Network)链接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我如今须要获得哪一个页面,全部的请求交给WEB服务器,以后WEB服务器根据用户的须要,从文件系统(存放了全部静态页面的磁盘)取出内容。以后经过WEB服务器返回给客户端,客户端接收到内容以后通过浏览器渲染解析,获得显示的效果。web

  静态WEB中存在如下几个缺点:数据库

  一、Web页面中的内容没法动态更新,全部的用户每时每刻看见的内容和最终效果都是同样的。编程

  为了可让静态的WEB的显示更加好看,能够加入了JavaScript以完成一些页面上的显示特效,可是这些特效都是在客户端上借助于浏览器展示给用户的,因此在服务器上自己并无任何的变化。浏览器

  实现静态WEB客户端动态效果的手段:安全

  •  JavaScript
  •  VBScript

  在实际的开发中JavaScript使用得最多。

  二、静态WEB没法链接数据库,没法实现和用户的交互。

  使用数据库保存数据是如今大多数系统的选择,由于数据库中能够方便地管理数据,增删改查操做可使用标准的SQL语句完成。

1.五、动态WEB

  所谓的动态不是指页面会动,主要的特性的是:“WEB的页面展现效果因时因人而变”,并且动态WEB具备交互性,WEB的页面的内容能够动态更新。整个动态WEB操做的过程图以下:

  动态WEB中,程序依然使用客户端和服务端,客户端依然使用浏览器(IE、FireFox等),经过网络(Network)链接到服务器上,使用HTTP协议发起请求(Request),如今的全部请求都先通过一个WEB Server Plugin(服务器插件)来处理,此插件用于区分是请求的是静态资源(*.htm或者是*.htm)仍是动态资源。

  若是WEB Server Plugin发现客户端请求的是静态资源(*.htm或者是*.htm),则将请求直接转交给WEB服务器,以后WEB服务器从文件系统中取出内容,发送回客户端浏览器进行解析执行。

  若是WEB Server Plugin发现客户端请求的是动态资源(*.jsp、*.asp/*.aspx、*.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中链接数据库,从数据库中取出数据等一系列操做后动态拼凑页面的展现内容,拼凑页面的展现内容后,把全部的展现内容交给WEB服务器,以后经过WEB服务器将内容发送回客户端浏览器进行解析执行。

1.六、动态WEB应用的实现手段

  动态WEB如今的实现手段很是多,较为常见的有如下几种:

  • Microsoft ASP、ASP.NET
  • PHP
  • JAVA Servlet/JSP

一、Microsoft ASP、ASP.NET

  微软公司动态WEB开发是比较早的,并且最先在国内最流行的是ASP。ASP就是在HTML语言之中增长了VB脚本,可是标准的开发应用应该是使用ASP+COM,可是实际状况来看,在开发ASP的时候基本上都在一个页面中写上成百上千的代码,页面代码极其混乱。

  ASP自己有开发平台的限制:Windows+IIS+SQL Server/Access,ASP只能运行在Windows操做系统上,ASP如今基本上已经淘汰,如今基本上都是使用ASP.NET进行开发,ASP.NET在性能有了很大的改善,并且开发迅速,可是依然受限于平台。ASP.NET中主要是使用C#语言。

2.PHP

  PHP开发速度很快,功能强大,跨平台(平台指的就是运行的操做系统),并且代码也简单。

3.Servlet/JSP

  这是SUN公司(SUN如今已经被Oracle公司收购)主推的B/S架构的实现语言,是基于JAVA语言发展起来的,由于JAVA语言足够简单,并且很干净。

  Servlet/JSP技术的性能也是很是高的,不受平台的限制,各个平台基本上均可以使用。并且在运行中是使用多线程的处理方式,因此性能很是高。

  SUN公司最先推出的WEB技术推出的是Servlet程序,Servlet程序自己使用的时候有一些问题,全部的程序是采用JAVA代码+HTML的方式编写的,即,要使用JAVA输出语句,一行一行地输出全部的HTML代码,以后,SUN公司受到了ASP的启发,发展出了JSP(Java Server Page),JSP某些代码的编写效果与ASP是很是类似的。这样能够很方便地使一些ASP程序员转向JSP的学习,加大市场的竞争力度。

2、WEB服务器

2.一、WEB服务器简介

  一、Web服务器是指驻留于因特网上某种类型计算机的程序,是能够向发出请求的浏览器提供文档的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。

   

  二、服务器是一种被动程序:只有当Internet上运行在其余计算机中的浏览器发出请求时,服务器才会响应。
   

 

2.二、常见的Web服务器介绍

  一、WebLogic(Orcale)(要钱的!支持JavaEE,适合大型项目)

  WebLogic是美国bea公司出品的一个application server。BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。是目前应用最普遍的Web服务器,支持J2EE规范,并且不断的完善以适应新的开发要求,启动界面如图

  二、WebSphere(IBM)(要钱的!支持JavaEE,适合大型项目)

  WebSphere Application Server 是一种功能完善、开放的Web应用程序服务器,是IBM公司电子商务计划的核心部分,它是基于 Java 的应用环境,用于创建、部署和管理 Internet 和 Intranet Web 应用程序。这一整套产品进行了扩展,以适应 Web应用程序服务器的须要,范围从简单到高级直到企业级。启动界面如图:

  三、Tomcat(Apache)(当前应用最广的JavaWeb服务器)

  TomcatTomcat是一个实现了JAVA EE标准的最小的WEB服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其余一些公司及我的共同开发而成。由于Tomcat 技术先进、性能稳定,并且开源免费,于是深受Java 爱好者的喜好并获得了部分软件开发商的承认,成为目前比较流行的Web 应用服务器。学习JavaWeb开发通常都使用Tomcat服务器,该服务器支持所有JSP以及Servlet规范,启动界面如图:

   四、IIS

  Microsoft的Web服务器产品为Internet Information Services (IIS),IIS 是容许在公共Intranet或Internet上发布信息的Web服务器。ⅡS是目前最流行的Web服务器产品之一,不少著名的网站都是创建在ⅡS的平 台上。IIS提供了一个图形界面的管理工具,称为Internet信息服务管理器,可用于监视配置和控制Internet服务。
  
  IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。它提供ISAPI(Intranet Server API)做为扩展Web服务器功能的编程接口;同时,它还提供一个Internet数据库链接器,能够实现对数据库的查询和更新。

 

  五、JBoss(Redhat红帽):支持JavaEE,应用比较广;

  六、GlassFish(Orcale):Oracle开发JavaWeb服务器,应用不是很广;

  七、Resin(Caucho):支持JavaEE,应用愈来愈广;

   学习web开发,须要先安装一台web服务器,而后再在web服务器中开发相应的web资源,供用户使用浏览器访问。

相关文章
相关标签/搜索