Web应用程序的工作原理

大多数的Web应用程序结构都是采用最为流行的B/S软件开发体系结构,将Web应用程序部署在Web服务器上,只要Web服务器启动,用户就可以通过客户端浏览器发送HTTP请求到Web服务器,此时运行在Web服务器上对应的Web应用程序将处理客户端请求,处理完成后做出响应。

Web应用程序工作原理图如下:

Web应用开发技术

Web应用开发技术又分为客户端开发技术,服务器开发技术。
客户端开发技术:

  1. HTML
  2. CSS
  3. JavaScript

服务器开发技术:

  1. PHP
  2. ASP.NET
  3. Servlet
  4. JSP

两个概念:
静态页面:类似于HTML这种单纯的客户端页面,在每次访问的时候得到的信息都是相同的吗吗,和后台没有任何交互,它是实际存在的,无需经过服务器的编译,直接加载到客户浏览器上显示出来。我们称之为静态页面。

动态页面:相对静态页面,显示的内容可以随着时间、环境或者数据库操作的结果而发生改变的。我们称之为动态页面。

Web 服务器

进行Java Web开发环境的搭建,首先我们需要了解下Web服务器。
WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务,Web服务器可以解析HTTP协议。当Web服务器接收到一个HTTP请求,会返回一个HTTP响应,例如送回一个HTML页面。为了处理一个请求Web服务器可以响应一个静态页面或图片,进行页面跳转或者把动态响应的产生委托给一些其它的程序例如CGI脚本,JSP脚本,servlets,ASP脚本,服务器端JavaScript,或者一些其它的服务器端技术。
关于HTTP协议详细信息可以查看网络协议之HTTP

几种常见的Web服务器。

  1. Resin
    Resin是CAUCHO公司的产品,是一个非常流行的application server,对servlet和JSP提供了良好的支持,性能也比较优良,resin自身采用JAVA语言开发。
  2. JBoss
    是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
  3. WebSphere
    WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的软件。
  4. WebLogic
    WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。
  5. Tomcat
    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

安装与配置JDK

Java web开发首先我们需要配置web服务器,这样我们才能通过web服务器部署发布web项目,才可以进行访问,这里选择Tomcat作为web服务器,Tomcat基于运行基于Jre环境,因此我们在配置Tomcat 之前需要配置Java环境。

jdk的下载与安装这里不说,只顺便说一下win下环境变量的配置。

  1. 配置环境变量 :右键我的电脑 → 属性→ 高级系统设置 → 环境变量
  2. 在系统变量里新建JAVA_HOME 变量,值为JDK安装路径
  3. 新建classpath变量,值为:

    .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
  4. 修改PATH变量值,在值后添加:

    %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

配置完毕后运行命令java -version有版本信息打印说明配置成功

1
2
3
4
5
6
7
8
9
Microsoft Windows [版本 10.0.15063]
(c) 2017 Microsoft Corporation。保留所有权利。 C:\Users\Niu>java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode) C:\Users\Niu>

安装与启动Tomcat

Tomcat是免费的开源软件,可在直接在官方网站下载。
http://tomcat.apache.org/
1.可以直接在左侧选择版本:

2.选择版本后可以在下方进行下载,可以选择下载安装版或者解压版,这里选择了解压版
tar.gz文件是Linux操作系统下的安装版本
exe文件是Windows系统下的安装版本
zip文件是Windows系统下的压缩版本

3.下载完成后解压缩,得到Tomcat目录,

4.可以在%Tomcat%\conf\server.xml中修改默认端口号(默认为8080)

1
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

5.配置完毕后可以运行%Tomcat%\bin\startup.sh进行启动

6.浏览器访问http://localhost:8080 进行测试

Eclipse中使用Tomcat

点击菜单:Window → Prefences → Server → Runtime Environments
点击左边Add按钮,选择Apache,选择Tomcat版本,点击NEXT

至此,Java Web集成开发环境配置完成,可以在Eclipse中Server面板中新建Tomcat Server进行启动。

新建Server:

完成创建:

完成创建之后可以在新建的server上右键选择start进行启动,启动效果如同双击startup.bat,console控制台会同步显示启动信息。

web项目开发

在环境搭建完成之后,我们应该使用这个环境进行Web项目的开发。这里使用一个简单的例子,来演示如何使用Eclipse开发并且部署一个Web项目。

创建web项目

首先我们打开Eclipse,点击菜单File -> new -> project 新建项目

选择Web Project项目进行创建

填写项目名称等信息

点击两次Next之后,创建web.xm信息,完成项目创建

查看项目目录结构

为了实验效果,我们在WebContent下创建一个index.html文件,编写Hello web内容进行部署演示。
WebContent 上右键 NEW - >File - >输入文件名index.html完成文件创建。
编写内容:

1
2
3
4
5
6
7
8
9
<!DOCTYPE html>
<html>
<head>
<title>Web test</title>
</head>
<body>
<h3>Hello web</h3>
</body>
</html>

部署web项目

在eclipse中使用Tomcat进行启动项目
在已经创建完毕的Tomcat server上右键添加项目,然后进行启动即可

访问web项目

可以看到项目启动在8080端口,启动完毕,此时可以通过浏览器进行项目访问。

http://localhost:8080/web-Test/index.html

此时,在Eclipse中创建部署启动一个Web项目已经完成。

作者: 雪漫士兵

博客: https://www.codingme.net

 

Web笔记(一) Web 简介与开发环境搭建的更多相关文章

  1. Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通

    原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...

  2. Django之Django简介,开发环境搭建,项目应用创建

    软件及Django框架简介 软件框架 一个软件框架是由其中各个软件模块组成的: 每一个模块都有特定的功能: 模块与模块之间通过相互配合来完成软件的开发. 软件框架是针对某一类软件设计问题而产生的. M ...

  3. Python简介及开发环境搭建

    Python简介 Python是一门动态解释性的强类型定义的计算机程序设计语言,是一种完全面向对象的语言,由荷兰人"龟叔"-Guido van Rossum于1989年开发,于19 ...

  4. 工作流--JBPM简介及开发环境搭建

    一. 工作流简介 项目中不断的接触工作流,点点滴滴积累了一些,下面把一些学习到的东西整理记录下来. 工作流一般的适用场景:公文流转.行政审批.订单处理.产品研发.制造过程等.用专业一点的语言来描述工作 ...

  5. JSP Web第三章整理复习 开发环境搭建

    P86  WEB工作原理 用户使用浏览器通过HTTP协议请求服务器上的Web资源,服务器接收到该请求后,读取请求的URI所标识的资源,加上其他资源发送给客户端的浏览器,浏览器解析响应中的HTML数据, ...

  6. 【系列】Python编程思想(1):Python简介与开发环境搭建

    李宁老师的 开始学习.   本系列文章深入介绍了Python的各种技术,堪称是目前最全的Python教程.主要目的是让读者可以了解Python的各种核心技术,包括各种Python函数库.本教程使用Py ...

  7. 使用wifi网卡笔记1----网卡选型、开发环境搭建、内核配置

    1.wifi的STA模式和AP模式 Ap(Access Point)模式指的是可以将网卡设置为路由器用来共享流量或有线网络给别人使用, sta模式指的是当做网卡连接路由器上网 (1):AP也就是无线接 ...

  8. Android学习笔记(一)——安卓开发环境搭建

    安装教程以及资源(2015.11.8最新版):链接:http://pan.baidu.com/s/1kTnOsMr 密码:0ogf

  9. Scala语言简介和开发环境配置

    Scala语言的简介和开发环境搭建 Scala是一门结合了面向对象特征和函数式编程特征的语言,它是一个创新的编程语言产品.Scala可以做脚本(就像shell脚本一样),可以做服务端编程语言,可以写数 ...

随机推荐

  1. python jieba库

    https://www.cnblogs.com/snailclimb/p/9086433.html https://blog.csdn.net/codejas/article/details/8035 ...

  2. drools规则引擎中易混淆语法分析_相互触发导致死循环分析

    整理了下最近在项目中使用drools出现的问题,幸好都在开发与测试阶段解决了,未波及到prod. 首先看这样两条规则: /** * 规则1_set默认利率a */ rule "rate_de ...

  3. h5上传视频文件

    从一开始我就掉坑里了,<input type="file" style="display: block;" id="img-upload&quo ...

  4. 《笔记篇》非JS方法跳转到一个新页面,主要防止客户端禁止浏览器JS以后的跳转异常

    用非JS方法打开一个新页面,主要防止客户端禁止浏览器JS以后的跳转失效 <meta http-equiv="refresh" content="0; url=htt ...

  5. vue computed计算属性和watch监听属性解疑答惑

    computed计算属性     计算属性类似于方法,用于输出data中定义的属性数据的结果,data数据变化时,计算属性的结果会同步变化,需要注意的是计算属性不可与data定义的属性同名. 相比于方 ...

  6. eclipse项目无故报错,markers信息为An error occurred while filtering resources

    eclipse项目无故报错,markers信息为An error occurred while filtering resources 描述:eclipse项目和resource文件上有红色的叉,其m ...

  7. win10个人助理conrtana软件能否支持用户反馈、后续优化

    上网查找了一下,win10的个人助理不支持用户反馈.这些反馈都是用户通过别的途径来发表反馈的信息,这个缺陷让用户不是特别满意,因为反馈信息不再那么简答,变得越来越繁琐.有些人还会担心自己反馈的问题会不 ...

  8. JDK8 新增的日期时间API

    背景 JDK8中增加了一套全新的日期时间API,这里进行总结下,方便查询使用. 新的时间及日期API位于 java.time 包中,下面是一些关键类. Instant:代表的是时间戳. LocalDa ...

  9. spring cloud config配置记录

    1. spring cloud config配置记录 1.1. pom <!-- 分布式配置中心 --> <dependency> <groupId>org.spr ...

  10. GDB dump mem example和命令

    使用方法: You can use the commands dump, append, and restore to copy data between target memory and a fi ...