08.BS和CS与Tomcat详细介绍

1.cs与bs架构的简介及区别

  CS和BS是软件架构模式:
C/S: Client/Server :客户端/服务端架构:
B/S: Browser/Server:浏览器/服务器架构:
C/S:
   VB,Delphi,C#,Java awt/swing:比如桌面QQ,办公软件等运行在电脑桌面的程序(需要安装的程序).
   特点:
       在服务端主要就是一个数据库,把所有业务逻辑以及界面的渲染操作交给客户端完成.
   优点:较安全,用户界面很丰富,用户体验不错等.
   缺点:每次升级都需要重新安装,针对于不同的操作系统开发,可移植性很差.
B/S:
  JSP,ASP,PHP:基于浏览器访问的应用,把业务逻辑交给服务端完成,客户端仅仅只做界面渲染和数据交换.
 
  特点: BS是特殊的CS,此时浏览器充当了客户端.基于HTTP协议的.
  优点:只开发服务端,可以跨平台,移植性很强等.
  缺点:安全性较低,用户体验较差等;
 
现在的应用综合了BS和CS的优点:部分应用不再是单纯BS.
   富客户端技术: 客户端会处理部分的业务逻辑,也会做界面的渲染和数据交互.界面丰富好比是CS.
   EasyUI,Flex,Extjs,Java FX等
   瘦客户端技术: 基于传统的html界面,客户端只界面的渲染和数据交互.(传统的BS)

2.服务器

服务器:
      软件服务器:就是一个软件.
      硬件服务器:安装了软件服务器的主机.

分类:
    1.http服务器,专门处理静态页面的.
    2.javaweb服务器,Tomcat等. 仅仅实现了JavaEE13种规范中的几个规范.(Servlet容器)
        不能运行EJB.
    3.应用服务器: 实现了JavaEE13种规范.WebSphere(IBM),WebLogic(Oracle),JBoss(red hat),TomEE.

Tomcat是使用Java语言编写的一个服务器(程序),要运行Tomcat,必须得有jre.
安装启动:
   0.检查操作系统位数(64  32)
     32位:    使用x86 的 Tomcat
     64位:     使用x64 的 Tomcat
   1.安装目录不能是中文的,并且安装路径不允许出现空格.
     如:D:\Development\apache-tomcat-7.0.42:我们把该路径称之为Tomcat的根路径
   2.启动Tomcat服务器:Tomcat根/bin/startup.bat
     但是提示:必须先配置JAVA_HOME或者JRE_HOME的环境变量:
     一般的我们只配置JAVA_HOME:配置为JDK的根路径
    JAVA_HOME=D:\Development\jdk1.7.0_06
    配置好之后,再点击Tomcat根/bin/startup.bat:如果控制台没有打印重大的错误,doc窗口,没有一闪而过,就表示启动成功.   
    Tomcat的默认端口是8080:
访问:
     打开浏览器:
     http://服务器所在主机的IP:服务器的端口号/资源名字
     http://服务器所在主机的名字:服务器的端口号/资源名字
     
若服务在本机:
     http://本机的IP:服务器的端口号/资源名字
     http://127.0.0.1:服务器的端口号/资源名字
     http://localhost:服务器的端口号/资源名字
Tomcat根下的目录:
bin:存放了启动/关闭Tomcat的等工具.
conf:存放了Tomcat软件的一些配置文件.
lib:存放了Tomcat软件启动运行的依赖jar文件.
logs:存放Tomcat日志记录(成功,失败)
temp:临时目录,比如把上传的大文件存放于临时目录
webapps:里面存放需要部署的javaweb项目.
work:工作目录,存放了jsp翻译成Servlet的java文件以及字节码文件.

3.Tomcat服务器的安装

  Tomcat是使用Java语言编写的一个服务器(程序),要运行Tomcat,必须得有jre.
安装启动:
   0.检查操作系统位数(64  32)
     32位:    使用x86 的 Tomcat
     64位:     使用x64 的 Tomcat
   1.安装目录不能是中文的,并且安装路径不允许出现空格.
     如:D:\Development\apache-tomcat-7.0.42:我们把该路径称之为Tomcat的根路径
   2.启动Tomcat服务器:Tomcat根/bin/startup.bat
     但是提示:必须先配置JAVA_HOME或者JRE_HOME的环境变量:
     一般的我们只配置JAVA_HOME:配置为JDK的根路径
    JAVA_HOME=D:\Development\jdk1.7.0_06
    配置好之后,再点击Tomcat根/bin/startup.bat:如果控制台没有打印重大的错误,doc窗口,没有一闪而过,就表示启动成功.   
    Tomcat的默认端口是8080:
访问:
     打开浏览器:
     http://服务器所在主机的IP:服务器的端口号/资源名字
     http://服务器所在主机的名字:服务器的端口号/资源名字
     
若服务在本机:
     http://本机的IP:服务器的端口号/资源名字
     http://127.0.0.1:服务器的端口号/资源名字
     http://localhost:服务器的端口号/资源名字
Tomcat根下的目录:
bin:存放了启动/关闭Tomcat的等工具.
conf:存放了Tomcat软件的一些配置文件.
lib:存放了Tomcat软件启动运行的依赖jar文件.
logs:存放Tomcat日志记录(成功,失败)
temp:临时目录,比如把上传的大文件存放于临时目录
webapps:里面存放需要部署的javaweb项目.
work:工作目录,存放了jsp翻译成Servlet的java文件以及字节码文件.

09.Tomcat常见问题

  Tomcat常见问题:   有问题咨询QQ:851298348,也是微信
   若JDK是32位的大哥,请使用32位的Tomcat;
   若JDK是64位的大哥,请使用64位的Tomcat;
   1.还没启动Tomcat或者Tomcat启动失败,就去访问地址:
   2.Tomcat启动成功,但是出现404的页面.
     就是我们自己把资源的路径写错了,自己检查,如访问了一个不存在的页面.
   3.Tomcat还未关闭,又再次重新启动Tomcat.
      出现:java.net.BindException: Address already in use: JVM_Bind异常
      该程序的端口以及被其他程序所占用:
     注意:出错之后,要习惯去查看日志信息:
          Tomcat根/logs/catalina.2017-03-26.log
   4.Tomcat下的配置文件的结构不能乱改:
     如:org.xml.sax.SAXParseException; systemId: file:/D:/Develop/Tomcat7/apache-tomcat-7.0.42/conf/server.xml; lineNumber: 140; columnNumber: 7; 元素类型 "Host" 必须由匹配的结束标记 "</Host>" 终止。
   5.要保证XML内容编码和文件编码相同,若有中文,建议使用UTF-8,否则不能使用中文:
    如:WARNING: Catalina.start using conf/server.xml:
com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效。

  

10.修改Tomcat默认端口号

  

11.tomcat管理简单认识

  

  

  

12.http协议介绍

  HTTP: 特点:无状态,默认端口就是80  https:

WEB浏览器与WEB服务器之间的一问一答的交互过程必须遵循一定的规则,这个规则就是HTTP协议。
HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议之上的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程以及数据本身的格式。

HTTP协议到底约束了什么:
    1.约束了浏览器以何种格式向服务端发生数据:
    2.约束了服务器应该以何种格式来接受客户端发生的数据:

3.约束了服务器应该以何种格式来反馈数据给浏览器;
    4.约束了浏览器应该以何种格式来接收服务器反馈的数据.

浏览器给服务器发送数据:一次请求
服务器给浏览器反馈数据:一次响应

HTTP协议的版本
 HTTP/1.0、HTTP/1.1、HTTP-NG

13.14.15web项目创建部署启动

  

  

  

  

  

  

  

04_web基础(三)之进一步理解web的更多相关文章

  1. 04_web基础(二)之web构建

    03.04.05.06web项目创建 07.第一个Servlet程序 1.拷贝tomcat 中的 servlet-api.jar 在lib包下面 2.新建一个HelloWordServlet类并实现 ...

  2. 深入理解 Web 协议 (三):HTTP 2

    本篇将详细介绍 HTTP 2 协议的方方面面,知识点如下: HTTP 2 连接的建立 HTTP 2 中帧和流的关系 HTTP 2 中流量节省的奥秘:HPACK 算法 HTTP 2 协议中 Server ...

  3. .NET基础拾遗(7)Web Service的开发与应用基础

    Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开发基 ...

  4. 深入理解 web 协议(一)- http 包体传输

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/WlT8070LlrnSODFRDwZsUQ作者:吴越 开坑这个系列的原因,主要是在大前端学习的 ...

  5. day 53-1 Django基础三之视图函数

    Django基础三之视图函数   本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...

  6. day 67 Django基础三之视图函数

    Django基础三之视图函数   本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...

  7. 深入理解Web标准(网站标准)

    深入理解Web标准(网站标准)   我觉得一名Web前端应该好好理解Web标准到底是什么,为什么要在我们的实际实践中遵循Web标准. 什么是Web标准.百度百科的解释是: WEB标准不是某一个标准,而 ...

  8. 零基础如何系统学习Java Web

    零基础如何系统学习Java Web?   我来给你说一说 你要下决心,我要转行做开发,这样你才能学成. 你要会打字,我公司原来有一个程序员,打字都是两个手一指禅,身为程序员你一指禅怎么写出的代码,半个 ...

  9. Bootstrap<基础三> 排版

    Bootstrap 使用 Helvetica Neue. Helvetica. Arial 和 sans-serif 作为其默认的字体栈. 使用 Bootstrap 的排版特性,您可以创建标题.段落. ...

随机推荐

  1. java.lang.ClassNotFoundException: org.thymeleaf.spring5.view.ThymeleafViewRe。。。。。。。。。。。

    直接上代码问题: java.lang.IllegalStateException: Failed to introspect Class [org.springframework.boot.autoc ...

  2. 在linux环境下mongodb的安装和启动

    安装 下载mongodb的版本,两点注意 根据业界规则,偶数为稳定版,如1.6.X,奇数为开发版,如1.7.X 32bit的mongodb最大只能存放2G的数据,64bit就没有限制 到官网,选择合适 ...

  3. 开源 人脸识别 openface 实用介绍 实例演示 训练自己的模型

    1.OpenFace 是 卡耐基梅陇(CMU)大学的一个图像+机器学习项目,整体程序包含:人脸发现,特征提取,特征神经网络训练,人脸识别这四部分. github   https://github.co ...

  4. Dubbo(1)--初识Dubbo

    1. 为什么需要 Dubbo 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当 ...

  5. django之ModelBase类及mezzanine的page link类

    class ModelBase(type): """ Metaclass for all models. """ def __new__(c ...

  6. Oracle服务无法启动,报:Windows无法启动OracleOraDb10g_home1TNSListener服务,错误 1067:进程意外终止。

    运行配置和移植工具中的Net Configuration Assistant,进行监听程序配置.删除配置,然后重新配置. 切记 一定是先删除配置,再重新配置,而不是新建配置. 或者 打开Net Man ...

  7. oracle中查询表是否存在

    select count(*) from user_tables where table_name='表名' 或者 select 1 from user_tables where table_name ...

  8. MongoDB 全部笔记

    1. MongoDB: 是NOSQL的一种, 特长是分布式用的,用于处理爬虫数据 2. mongoDB 与 redis mongoDB是最像关系型的非关系型数据,更加适用于大数据,redis则更倾向于 ...

  9. beego注解路由 [自定义方法]

    背景: beego生成的controller里面,默认get请求到由Get()方法处理:post请求由Post()方法处理 etc. 如果想自定义方法来处理请求,改怎么做? 直接拿beego的文档来说 ...

  10. 机器学习进阶-项目实战-信用卡数字识别 1.cv2.findContour(找出轮廓) 2.cv2.boudingRect(轮廓外接矩阵位置) 3.cv2.threshold(图片二值化操作) 4.cv2.MORPH_TOPHAT(礼帽运算突出线条) 5.cv2.MORPH_CLOSE(闭运算图片内部膨胀) 6. cv2.resize(改变图像大小) 7.cv2.putText(在图片上放上文本)

    7. cv2.putText(img, text, loc, text_font, font_scale, color, linestick) # 参数说明:img表示输入图片,text表示需要填写的 ...