1 JavaWeb概述

Java在服务器端的应用有Servlet,JSP和第三方框架等。

Java的Web框架基本都遵循特定的路数:使用Servlet或者Filter拦截请求,使用MVC的思想设计架构,使用约定,XML或 Annotation实现配置,运用Java面向对象的特点,面向对象实现请求和响应的流程,支持Jsp,Freemarker,Velocity等视图。

常见Web服务器有 Apache(开源,占有率最高),Tomcat(开源,良好的Servlet/JSP容器),WebLogic(Oracle),WebSphere(IBM),IIS(Internet Information Services,Microsoft )。

Web开发中的资源:

  静态:HTML,CSS,JS

  动态:Servlet,JSP,PHP

2 Tomcat

2.1 Tomcat概述

Tomcat 默认端口号8080,若被占用,在 tomcat/conf/server.xml 中修改端口号。

Tomcat 部分目录结构用途

bin:存放 Tomcat 命令,包括.sh结尾的 linux 命令、.bat结尾的 windows 命令。设置 JDK 路径、Tomcat 路径等环境变量。startup/shutdown:启动/关闭 Tomcat,catalina:设置 Tomcat 内存。
lib:Tomcat所需要的 jar 包
webapps:需要发布的项目
work:JSP 编译成 Servlet 产生的代码

Tomcat 动态 web 项目目录结构:

website
  |------静态页面(HTML、CSS、JS、图片)
  |------JSP页面
  |------WEB-INF
    |-----web.xml (必须的)
    |-----classes (可选的)
    |-----lib (可选的)

2.2 Tomcat 的使用

Tomcat 项目发布的三种方式:

  1. 直接将项目复制到tomcat/webapps下
  2. 在tomcat/conf/server.xml配置tomcat的虚拟路径,<Context path="/你需要的虚拟路径" docBase="C:\实际路径"></Context>,sever.xml是核心配置文件不要改错。
  3. 在tomcat/conf/Catalina/localhost/下配置tomcat的虚拟路径,新建一个xxx.xml,xxx即你需要的虚拟路径,里面加入<Context docBase="C:\实际路径"></Context>即可。

Eclipse 中集成 Tomcat

  Eclipse 工具栏 --Window--Preferences--Server--Runtime Envrionments--Add--选择 Apache Tomcat v7.0

  控制台 Servers 窗口 --New--Server--选择 Apache Tomcat v7.0--Finish

  右键控制台 Servers 窗口刚才新建的 Server--Open--Server Locations 勾选 UseTomcat installation,Deploy path 选择 webapps

  Eclipse--New--Dynamic Web Project--Dynamic web module version选2.5--编写项目代码

  发布项目--Server 右键 Add and Remove--选择刚才编写的项目名--Finish--Server Start

网站访问寻址过程:现在本地hosts文件中查找对应域名,有则返回,没有去网络DNS服务器上查找域名对应的ip地址并返回,DNS上没有找到则报错。

Tomcat 本地虚拟主机配置:用一个任意想要的访问名称,跟本地路径绑定,访问该名称时指向绑定的本地路径。

  ①在Tomcat的server.xml中添加一个Host标签,<Host appBase="C:\项目本地路径" autoDeploy="true" name="想要的任意访问名称" unpackWARS="true"></Host>

  ②修改本地hosts文件,加入(xxx.xx.x.xxx(本地id) 想要的任意访问名称),让想要的名称指向本地ip。

   此时浏览器访问:名称/website/项目主页.html即可指向本地项目页面

  ③在Tomcat的server.xml中修改Connector标签,将默认端口号改为http的默认端口号80,这样浏览器输入地址栏不用加:8080。在server.xml添加<Context path="/"          docBase="wensite"/>,这样浏览器输入地址不用加website

  ④在conf/web.xml中的<Welcome-file-list>标签中加入<Welcome-file>项目主页.html</Welcome-file>,这样浏览器输入地址栏不用加/项目主页.html

  ⑤此时再访问想要的任意名称如xxx.com即可直接指向本地项目的web页面。

JavaWeb & Tomcat的更多相关文章

  1. –IDEA+Maven+JavaWeb+tomcat项目搭建(图文并茂,详细)

    一.创建Maven项目 1:如果刚打开IDEA,显示的是这个页面,我们直接单击 Create New Project(创建项目) 或者 File-> New-> Project 2:选中左 ...

  2. JavaWeb——tomcat安装及目录介绍

    一.web web可以说,就是一套 请求->处理->响应 的流程.客户端使用浏览器(IE.FireFox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Reque ...

  3. javaweb + tomcat + 部署 + 域名绑定 + 默认首页

    ①:把javaweb项目打包成war(不会的自行百度) ②:把war拷贝到服务器的tomcat里面的webapps下 ③:到bin文件夹下.bat文件启动tomcat,启动后会解压war包 ⑤:解压后 ...

  4. WebSocket基于javaweb+tomcat的简易demo程序

    由于项目需要,前端向后台发起请求后,后台需要分成多个步骤进行相关操作,而且不能确定各步骤完成所需要的时间 倘若使用ajax重复访问后台以获取实时数据,显然不合适,无论是对客户端,还是服务端的资源很是浪 ...

  5. JavaWeb——tomcat manager 403 Access Denied .You are not authorized to view this page.

    403 Access Denied You are not authorized to view this page. If you have already configured the Manag ...

  6. JAVAWEB tomcat服务器启动错误原因总结

    tomcat服务器启动错误: org.apache.catalina.LifecycleException    这种异常的原因是  servlet的代码出现了错误 实例: 这里的servlet由于使 ...

  7. Javaweb Tomcat 项目部署方式

    一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中     Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP ...

  8. JavaWeb—Tomcat

    简介 Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台.安全域管理 ...

  9. JavaWeb:Tomcat服务器的安装与配置

    Tomcat服务器的安装与配置 安装 输入网址进入Tomcat的官网            在左边导航栏选择对应下载的版本            下载安装包形式            下载并解压到我们 ...

随机推荐

  1. ANTLR v4 权威参考笔记(目录)

    ANTLR v4是一款强大的语法分析器生成器,可以用来读取.处理.执行和转换结构化文本或二进制文件.通过称为文法的形式化语言描述,ANTLR可以为该语言自动生成词法分析器.生成的语法分析器可以自动构建 ...

  2. python itertools 模块讲解

    1.介绍itertools 是python的迭代器模块,itertools提供的工具相当高效且节省内存. 使用这些工具,你将能够创建自己定制的迭代器用于高效率的循环. - 无限迭代器 itertool ...

  3. SSM 整合 quartz JDBC方式实现job动态增删改查记录

    虽然网上有很多资料,但是都不够系统,本文记录下自己的整合过程. 1. 搭建一个SSM项目,此处略. 2. 按照quartz官方要求,建立quartz相关的数据库和表,相关sql语句如下: /* Nav ...

  4. Python Every Class Needs a __repr__

    一.思考 当我们在Python中定义一个类的时候,如果我们通过print打印这个类的实例化对象,或者我们直接输入这个类实例化对象会返回怎么样的结果,如下代码: >>> class P ...

  5. Atitit mysql 存储过程捕获所有异常,以及日志记录异常信息

    Atitit mysql 存储过程捕获所有异常,以及日志记录异常信息 1.1. 异常的处理模式exit  continue undo模式 1 1.2. 捕获所有异常使用        DECLARE ...

  6. FFmpeg: 一个简单测试手机解码效率的方法

    先写一个获取当前时间戳的方法 long long GetNowMs() { struct timeval tv; gettimeofday(&tv, NULL); ; // 为了简化计算,否则 ...

  7. Python中的string模块的学习

    代码为主,相信有python基础的都能看懂: ? [python] view plain copy >>> import string   >>> string.a ...

  8. 猿题库从 Objective-C 到 Swift 的迁移

    猿题库从 Objective-C 到 Swift 的迁移 引言 相信没有人会怀疑,Swift 是 iOS 开发未来的主流语言,但是由于 Swift 语言的不断变化以及庞大的迁移成本,真正把项目迁移到 ...

  9. [Linux]Linux下signal function传参方式

    https://stackoverflow.com/questions/6970224/providing-passing-argument-to-signal-handler This is a r ...

  10. caffe网络结构可视化在线工具

    http://ethereon.github.io/netscope/#/editor shift+enter