一、相关基础知识

1、C/S(Client/Server)架构和B/S(Browser/Server)架构

首先说C/S架构,简单讲其实很常见,类似QQ等需要下载客户端的应用程序就是建立在C/S架构中。往深一点讲,它是分布式架构,每个客户端直接连接数据库服务器,并且数据的处理需要依赖客户端,所以说我们经常见到QQ用着用着就卡死了。这么一来,软件开发时选择C/S架构会出现以下问题:

1)所有客户端并发连接数据库,这直接限制客户端程序同时运行的数量。

2)需要安装,麻烦。(不过,这阻挡不了现在各种APP的盛行)

3)一旦甲方需要更新软件,就需要广大客户机也一起更新。(百度浏览器(手机端)天天跳出更新提示也很烦,也没个关闭更新的按钮,其实类似QQ每隔一段时间才更新就挺好啊,太频繁更新的后果就是最后我弃用百度浏览器(手机端))

其次就是B/S架构了,它是对C/S架构的一种改进版。举例说明就是现在很多在线视频已经不用安装客户端了,只要你有一个浏览器,那个所有的WEB服务都是在浏览器上进行。它与数据库的连接经历了一道门:客户端--web服务器(门!)--数据库服务器,这样一来,客户端同时连接数据库的数量就不受限制啦。顺便说一下,现在很多信息管理系统首选B/S架构,本人今年的毕业设计也准备选择这个架构,加油吧,少年!

(以下都是建立在B/S架构上的)

2、通信协议

上面说了,B/S架构会经历一道门:web服务器(还不是数据库服务器),那么开发应用程序时,总会涉及到浏览器与服务器之间的交互,过程如下:客户端浏览器--向服务器端发送请求--服务器端处理请求--服务器端返回响应结果--客户端浏览器接收响应结果(其实就相当于你上网点击一个链接,然后浏览器跳出一个你想要的页面这个过程)。其中涉及两个东西:URL地址和HTTP协议。详细后面讲

3、Web资源

Web服务器中供外界访问的资源有很多。根据呈现的效果不同分为静态资源(HTML、css、jpg等)和动态资源(jsp、Servlet等),其实也不是说静态资源就是一动不动,其中动态的意思是随着时间的推移,访问的内容会发生变化(比如每次去看火车票的数量都不一样)。

(以下大部分是动态资源的开发相关)

4、Tomcat服务器

还是Web服务器(依旧不是数据库服务器哦),其实现在早就有很多不同类型的服务器(Apache、IIS服务器)了,用于企业的、用于教学的等等,区别在我看来就是处理数据的能力不同而已(应该是我目前还见识浅薄才不知道而已)。其中tomcat是Apache下的一款轻便的、常用于web开发学习的web服务器。它不仅具有web服务器的基本功能,还提供了数据库连接池等许多组件。(为什么要有tomcat服务器?你要开发一个动态网页,总要在各大浏览器上运行看看做得怎么样了吧,那么一个网页怎么在网上运行?很简单,输入网址点击就行,也就是说你发送了一个请求,但是你要得出结果,也就是要别人给你响应,就需要有WEB服务器,并且其中已经保存了你做好的、可以给人响应的资源,这时候你才能得出你的请求结果。话说回来,这结果就是你开发的动态网页啦!)

怎么安装和使用tomcat服务器,这里就不说了。不过我可以大概说说安装好之后你的电脑里会有什么文件出现。

1)bin:用于存放tomcat的可执行文件和脚本文件,比如启动tomcat的exe文件(starup.bat)就放在里面,只要双击starup.exe就能启动tomcat

2)conf:用于存放一些配置文件,比如web.xml、server.xml(这里有个xml和HTML语言的区别,xml语言是用来描述数据的性质和结构,HTML语言是用来显示数据的)

3)lib:用于存放jar包

4)logs:用于存放tomcat的日志文件

5)temp:临时文件

6)webapps:web应用程序(就是web服务器上运行的web资源,就是你开发的页面文件)的主要发布目录放在这,也就是说开发的web文件在这里,当浏览器用户请求的时候,就是请求这里的文件资源。同时需要注意的一点是:放在webapps目录下的web应用可以直接被外界访问。简单地说,你现在在地址栏点击http://127.0.0.1:8080(默认端口号是8080)进入网页看到一只猫,就表示已经成功启动tomcat,这时表示已经在webapps的目录中啦,那么如果你在webapps中放入你开发的网页,比如welcome.jsp,这时候你要打开你开发的网页只要在服务器的前提下进入网页就得到正确地址:http://127.0.0.1:8080/welcome.jsp    那么,可以更改地址么?可以,且看下文

7)work:工作目录

5、配置Web应用虚拟目录

不满意你开发的一个网页的地址,想改?OK,配置一个虚拟目录(因为你实际上不是把文件放在这个目录下(还是在webapps下),所以这个时候的目录叫做虚拟目录)

1)在server.xml文件中配置虚拟目录(上面说了,xml文件就是用来描述数据的性质和结构的,不是用来显示的)

用记事本格式打开server.xml文件,然后添加代码如下:

<Host>中加上<Context path="/文件名" docBase="d:\文件名"  />   其中文件名就是指你要一打开服务器就出现的开始目录,也就是你把webapps的位置占走了

注意,保存好文件后要重启tomcat才能生效

这篇先结束,下篇再走起

菜菜菜鸟学习之JavaWeb 入门1(自己的学习理解,不对之处请大神们多多指教啊)的更多相关文章

  1. 安装虚拟机以及学习Linux基础入门

    安装虚拟机 参考基于VirtualBox虚拟机安装Ubuntu图文教程完成了虚拟机的安装,主要遇到了以下2个问题 在新建虚拟电脑的时候,如果类型选择了Linux,则版本就只能选择Ubuntu(32 位 ...

  2. JMeter学习-004-WEB脚本入门实战

    此文为 JMeter 入门实战实例.我是 JMeter 初学菜鸟一个,因而此文适合 JMeter 初学者参阅.同时,因本人知识有限,若文中存在不足的地方,敬请大神不吝指正,非常感谢! 闲话少述,话归正 ...

  3. java学习路线-从入门到入土

    以下是个人学习路线,资源等我找到了 share,如果没找到请自行百度: 1.javase 观看 毕向东的 javase ,主要是老毕口才略屌,听着不容易打瞌睡,冷不丁吓你一大跳 老毕的年代久远,我已经 ...

  4. Java工程师学习指南(入门篇)

    Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...

  5. JavaWeb入门——在Linux环境下安装Tomcat服务器

    JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...

  6. JavaWeb入门——在Windows环境下安装Tomcat服务器

    JavaWeb入门——在Windows环境下安装Tomcat服务器 摘要:本文主要学习如何在Windows环境中下载并安装Tomcat服务器. 下载 获取安装包 推荐去官网上下载Tomcat: htt ...

  7. 从零开始学习jQuery (一) 入门篇

    本系列文章导航 从零开始学习jQuery (一) 入门篇 一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些 ...

  8. Java入门-浅析Java学习从入门到精通【转】

    一. JDK (Java Development Kit)  JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库 ...

  9. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

随机推荐

  1. esb异常20160322_1948

    异常1. Failed to find entry point for component, the following resolvers tried but failed: [ 2016-03-2 ...

  2. 全球各大运营商黑莓ROM官网下载链接汇总

    全球各大运营商黑莓ROM官网下载链接汇总: 先来关于8830的. 4.2.2.196的rom  8830EFS_PBr4.2.2_rel365_PL3.0.0.85_A4.2.2.196_Sprint ...

  3. 使用UIGestureRecognizer监听屏幕事件

    转载自  http://blog.csdn.net/samguoyi/article/details/7911499 如果只是想获取屏幕点击事件有一个最简单的办法,就是写一个透明的uibutton覆盖 ...

  4. oracle学习 二(持续更新中)

    oracle数据库的启动停止 以oracle用户身份登录 登录后输入以下命令: oracle-> sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Pro ...

  5. CodeForces Gym 100685C Cinderella (水题)

    题意:给定 n 个杯子,里面有不同体积的水,然后问你要把所有的杯子的水的体积都一样,至少要倒少多少个杯子. 析:既然最后都一样,那么先求平均数然后再数一下,哪个杯子的开始的体积就大于平均数,这是一定要 ...

  6. button 禁止

    1.按钮的id为btnzhuce==> 控制按钮为禁用:  $("#btnzhuce").attr({"disabled":"disabled& ...

  7. IC各元器件封装形式图解

    CDIP-----Ceramic Dual In-Line Package CLCC-----Ceramic Leaded Chip Carrier CQFP-----Ceramic Quad Fla ...

  8. 阿里聚安全攻防挑战赛第三题Android PwnMe解题思路

    阿里聚安全攻防挑战赛第三题Android PwnMe解题思路 大家在聚安全挑战赛正式赛第三题中,遇到android app 远程控制的题目.我们今天带你一探究竟,如何攻破这道题目. 一.题目 购物应用 ...

  9. JAX-RS入门 一 :基础

    简介 JAX-RS是一套用java实现REST服务的规范,提供了一些标注将一个资源类,一个POJOJava类,封装为Web资源.标注包括: @Path,标注资源类或方法的相对路径 @GET,@PUT, ...

  10. Server-U与IIS端口占用问题解决

    在新版的ftp软件Server-U(11.X)中,由于其默认设置中监听了80端口,经常会导致IIS不能服务不能正常启用,下面记录如何修改server-u的80端口.     打开Server-U软件, ...