Java之Tomcat、Dynamic web project与Servlet
一、Tomcat配置
Conf Config configration -->配置
Service.xml:用来配置Tomcat
Tomcat_users.xml:用来配置Tomcat的管理账户和角色
Web.xml:Tomcat应用的配置(应用的配置从它继承而来)
二、Service.xml结构
主机、虚拟机---->多个(靠域名区分)
域名: name
程序:appBase
是否支持自动解压WAR包 unpackWARs
是否支持自动部署 autoDeploy
Context[path] [docBase]
应用虚拟目录
Path 访问路径
docBase 程序文件的保存位置
一个主机可以拥有多个应用 这些应用的访问路径不同
报名应用: www.zhiyou100.com/baoming
三、Tomcat默认应用
1>Root文件夹中的应用就是默认应用
当访问域名时,打开就是默认应用
其他应用都需要带应用路径
如:/等
2>Tomcat自带一个管理应用
可以查看Tomcat服务器的运行状态
可以管理主机以及应用
这个管理应用只能在服务器本身中访问,不能再其他电脑访问
需要配置管理角色和用户:tomcat-users.xml中添加role和user
管理应用
服务器运行状态:操作系统的信息、JVM的信息、端口的连接情况
应用管理
列出主机的应用、启动停止应用、卸载应用、发布应用
主机管理
列出所有主机、添加主机
四、Web.xml应用的根配置
Web-app 一个web应用
Servlet 多个
默认所有应用都支持2个servlet
Default 用来处理html\css\js图等静态文件
Jsp用来jsp转码成java并编译成class类,然后使用编译出的类生成页面(处理请求)
Filter
默认带了filter但未启用,比如编码转换的filter
Session-config : 配置了session,指定了默认超时时间30minute
Mime-mapping : 配置mime类型,它会影响请求头和响应头中的Content-Type头。决定Tomcat是否要处理相应资源。
五、Dynamic Web project
第一次Dynamic Web project时
1>需要创建Tomcat运行时环境
2>Tomcat安装位置
3>JDK安装位置
Preferences --> server--->Runtime
Java Resouces /src : 是存放java源码的位置
Build /classes: 存放生成的类
Web Content:是web应用的存放位置,可以打包成WAR包
META-INF:存放第三方jar包,jsp等web资源、web.xml应用配置文件、部署描述符
HTML、CSS、JS图片在开发时,可以放在Webcontent中,部署时,如果需要可以存放其他位置(虚拟目录)
六、JSP文件的相关设置
设置编码为UTF-8:preferences-->web-->JspFiles-->Editor-->Templates
七、Build Path
Dynamic web project 在编译运行过程中需要很多类或jar包,Build Path为Eclipse指明了项目需要类和jar的位置(也包括项目源代码的位置和项目源代码生成类的位置)
其中最重要的是libraies里面的Apache Tamcat和jdk(jre)
八、修改启动浏览器
Window-->web Browser 改成现代浏览器(谷歌/Firebox)
九、Eclipse中修改应用路径
项目上点右键-->properties -->web projectSetting-->Context root
找Server视图(Window-->show view)--> 找到主机server-->在主机下面删除应用重启
十、Eclipse与Tomcat的关系
默认情况下,Eclipse会在当前workspace中收集Dynamic web project运行所需的各种资源(包含类)放入.metada\.plugins\org.eclipse.wst.server.core
另外将Tomcat的配置文件也复制有一份到WorkSpace的server文件夹中
通过调用javaw来启动Tomcat安装目录中的tomcat.jar包,在这个过程中{指定classpath;指定主类}
在Run configuration --> Apache Tomcat -->我们创建Tomcat的服务器
里面包括这些内容:Arguments ---->启动参数 classpath--->寻找类的位置
Source:源代码和Jar包
创建Servlet类
默认情况下,创建的Servlet类以javax.servlet.http.HttpServlet类为父类
HttpServlet类由Tomcat提供(在servlet-api.jar包中)
最少要选中一个doXXX的方法,通过这个方法处理请求,有2个参数
request :请求报文 (请求行、请求头、请求体)中所有数据全部都在里面
response:响应报文(响应行、响应体、响应头)都要通过response设置
处理请求
新建一个Servlet类,选择一个doXXX方法
在这个方法中通过request参数获取请求报文中的数据
加工之后通过response设置响应报文
最重要是:如果想在当前页面展示数据,或者把数据传递到某一个特定的页面 需要 Servlet 和 JSP 合作完成
把需要传递的数据通过 key-value 的形成存入到 request 中
request.setAttribute("username", username);
request.setAttribute("password", password);
请求转发:把 request 和 resopne 再发送到 index.jsp 中
request.getRequestDispatcher("/index.jsp").forward(request, response); 第一个括号中为接受的文件名
Java之Tomcat、Dynamic web project与Servlet的更多相关文章
- Eclipse Java EE 创建 Dynamic Web Project
1. 创建一个web工程,此处用eclipse创建(如果对创建web工程很熟悉,可以不看的,本文目的是做一个记录) 1) 打开新建工程对话框,选择Dynamic web Proje ...
- Eclipse 将Java项目转为Dynamic web project
1.打开项目根目次下的.project 在<buildSpec>节点下是否存在 <buildCommand> <name>org.eclipse.wst.commo ...
- 在eclipse中新建Dynamic web project时选择2.5和3.0的区别(里面涉及servlet和tomcat的问题)
1.是指servlet的版本,是2.5的还是3.0的 servlet3.0以后支持异步 2.dynamic web module和对应的TOMCAT 版本 http://blog.sina.com.c ...
- Eclipse创建第一个Servlet(Dynamic Web Project方式)、第一个Web Fragment Project(web容器向jar中寻找class文件)
创建第一个Servlet(Dynamic Web Project方式) 注意:无论是以注解的方式还是xml的方式配置一个servlet,servlet的url-pattern一定要以一个"/ ...
- java中dynamic web project与web project 的区别 [转]
原帖地址:http://blog.sina.com.cn/s/blog_46726d2401013jlk.html 文章框架: 1.Dynamic Web Project 概念 2.eclipse ...
- MyEclipse Web Project导入Eclipse Dynamic Web Project,无法部署到tomcat问 题
做作业遇到一个小问题,将MyEclipse Web Project导入到Eclipse中开发.在部署到tomcat时,发现无法发布这个项目. 问题分析: MyEclipse Web Project被识 ...
- Mac 下 Eclipse 添加 Dynamic Web Project 并配置 Tomcat
最近拿到了一个 Dynamic Web Project,我的 Mac 上的 Eclipse 之前没有过这类型的项目,所以导入之后无法正常运行.下面是我记录的如何配置 Eclipse 使之能够运行 Dy ...
- Eclipse整合Tomcat开发Dynamic Web Project环境总结
一.引子 习惯了MyEclipse的你是否曾想过基于Eclipse进行Dynamic Web Project项目开发呢?网上资料颇多,但是实践起来却发现总有这样那样的问题,设计Lucene搜索引擎项目 ...
- 创建Dynamic Web Project时 显示最新Apache Tomcat 8.0 的方法
创建Dynamic Web Project时 显示最新Apache Tomcat 8.0 等的方法 解决办法如下: 第一步:eclipse菜单help->eclipse marketplac ...
随机推荐
- Hadoop知识汇总
Hadoop的两大功能:海量数据存储和海量数据分析 Hadoop2的三大核心组件是:HDFS.MapperReducer和yarn 1.HDFS:分布式文件系统海量数据存储 2.MapperReduc ...
- [Jobdu] 题目1139:最大子矩阵
题目描述: 已知矩阵的大小定义为矩阵中所有元素的和.给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵.比如,如下4 * 4的矩阵 0 -2 -7 09 2 -6 2-4 1 -4 ...
- Linux下编译、使用静态库和动态库 自己测过的
每个程序实质上都会链接到一个或者多个的库.比如使用C函数的程序会链接到C运行时库,GUI程序会链接到窗口库等等.无论哪种情况,你都会要决定是链接到静态库(static libary)还是动态库(dyn ...
- C#多枚举值的写法与读法
首先,定义枚举的时候必须是2,4,8,16这种2的次方的值. using System; using System.Collections.Generic; using System.Linq; us ...
- Delphi映射模式实验
unit FrmMappingMode; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Contro ...
- Spring Oauth2 with JWT Sample
https://www.javacodegeeks.com/2016/04/spring-oauth2-jwt-sample.html ******************************** ...
- love2d教程32--碎图打包器texturepacker
texturepacker是一个碎图打包器,可以把小图合并成一张大图,并对大图做优化.我用的是特别版(只好用xx版了, 不然导出的图片会被变成红色),网盘下载,文件会提示有毒,我也是在网上找的,其实是 ...
- 使用shell读取文本文件发送到kafka
#!/bin/sh ## 参数定义 dt=`date +"%Y%m%d" -d "-1 days"` outpath=/xxxx_log_${dt}.txt b ...
- 数据库 proc编程五
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <stri ...
- TensorFlow基础笔记(1) 数据读取与保存
https://zhuanlan.zhihu.com/p/27238630 WholeFileReader # 我们用一个具体的例子感受tensorflow中的数据读取.如图, # 假设我们在当前文件 ...