菜菜菜鸟学习之JavaWeb 入门1(自己的学习理解,不对之处请大神们多多指教啊)
一、相关基础知识
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(自己的学习理解,不对之处请大神们多多指教啊)的更多相关文章
- 安装虚拟机以及学习Linux基础入门
安装虚拟机 参考基于VirtualBox虚拟机安装Ubuntu图文教程完成了虚拟机的安装,主要遇到了以下2个问题 在新建虚拟电脑的时候,如果类型选择了Linux,则版本就只能选择Ubuntu(32 位 ...
- JMeter学习-004-WEB脚本入门实战
此文为 JMeter 入门实战实例.我是 JMeter 初学菜鸟一个,因而此文适合 JMeter 初学者参阅.同时,因本人知识有限,若文中存在不足的地方,敬请大神不吝指正,非常感谢! 闲话少述,话归正 ...
- java学习路线-从入门到入土
以下是个人学习路线,资源等我找到了 share,如果没找到请自行百度: 1.javase 观看 毕向东的 javase ,主要是老毕口才略屌,听着不容易打瞌睡,冷不丁吓你一大跳 老毕的年代久远,我已经 ...
- Java工程师学习指南(入门篇)
Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...
- JavaWeb入门——在Linux环境下安装Tomcat服务器
JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...
- JavaWeb入门——在Windows环境下安装Tomcat服务器
JavaWeb入门——在Windows环境下安装Tomcat服务器 摘要:本文主要学习如何在Windows环境中下载并安装Tomcat服务器. 下载 获取安装包 推荐去官网上下载Tomcat: htt ...
- 从零开始学习jQuery (一) 入门篇
本系列文章导航 从零开始学习jQuery (一) 入门篇 一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案, 即使你会使用jQuery也能在阅读中发现些 ...
- Java入门-浅析Java学习从入门到精通【转】
一. JDK (Java Development Kit) JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库 ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
随机推荐
- UVA 624 (0 1背包 + 打印路径)
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<ctype.h> #i ...
- Perl初识笔记
前两天项目中遇到了一个Perl脚本程序,需要读懂该程序,由于以前重来没有用过Perl语言,所以没法搞定.今天抽空把该语言的基础看了一遍,基本上内读懂Perl脚本程序了吧.真是如网上很多分享的经验所说, ...
- POJ 2342 Anniversary party (树dp)
题目链接:http://poj.org/problem?id=2342 有n个人,每个人有活跃值.下面n-1行u和v表示u的上司是v,有直接上司和下属的关系不能同时参加party,问你party最大的 ...
- LeetCode 刷题记录(二)
写在前面:因为要准备面试,开始了在[LeetCode]上刷题的历程.LeetCode上一共有大约150道题目,本文记录我在<http://oj.leetcode.com>上AC的所有题目, ...
- java -X 这不是标准的选项只是为了获取帮助信息
-? -help 输出此帮助消息 获取帮助信息方式有三种: java java -? java -help -X 输出非标准选项的帮助 java -X -Xms< ...
- 利用HTML5开发Android(4)---HTML5本地存储之Web Storage
Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Sto ...
- redis的文件事件处理器
前言 C10K problem提出了一个问题,如果1w个客户端连接到server上,间歇性的发送消息,有哪些好的方案? 其中的一种方案是,每个线程处理多个客户端,使用异步I/O和就绪通 ...
- 系列文章--SharePoint 开发教程
SharePoint 2013 图文开发系列之入门教程 学习地址:http://www.cnblogs.com/jianyus/p/3461719.html 里面有2007.2010.2013各个版本 ...
- TMsgThread, TCommThread -- 在delphi线程中实现消息循环
http://delphi.cjcsoft.net//viewthread.php?tid=635 在delphi线程中实现消息循环 在delphi线程中实现消息循环 Delphi的TThread类使 ...
- Android Studio开发JNIproject
使用Android Sutdio创建一个新的project后,接下来记录创建NDKproject的基本步骤. 本文将达到: 1. 创建NDKproject 2. 在JNI中输出Log语句 3. 指定编 ...