一、安装配置Tomcat

1.下载

2.配置环境变量

配置JAVA_HOME环境变量,路径为JDK的根目录

3.测试Tomcat

打开浏览器,在地址栏输入http://localhost:8080可以访问,说明配置成功

4.Tomcat中的文件目录

  • bin:存放启动和关闭Tomcat的工具
  • conf:存放软件的配置文件
  • lib:存放软件运行所依赖的jar包
  • logs:存放 Tomcat日志信息
  • temp:临时文件
  • webapps:存放需要部署的项目
  • work:工作目录,存放了jsp翻译成Servlet的java文件以及字节码文件。

5.Tomcat的使用

5.1.修改Tomcat的默认端口

  • 打开tomcat/conf/service.xml文件、

  • 把默认端口8080修改端口port为80

  • 重启Tomcat

5.2.查看服务器状态

需要在Tomcat/conf/tomcat-users.xml添加

<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="123" roles="manager-gui,admin-gui"/>

在服务器配置成功页面可以查看当前系统的状态信息,用户名和密码需要在上述文件中如此配置

6.常见问题

  • 还没启动Tomcat或者Tomcat启动失败,就去访问地址
  • Tomcat还未关闭,又再次重新启动Tomcat
  • 要保证XML内容编码和文件编码相同,一般把编码修改为utf-8

二、搭建JavaWeb项目

1.搭建javaweb项目的目录结构

必须严格按照这个结构组成的,

2.eclipse下创建web项目

  • 先创建一个java项目

  • 在项目中创建一个文件夹(Folder),这个目录为web项目的根目录,一般起名为webapp,当然名字无所谓。

  • 在webapp中创建一个WEB-INF的目录,这个目录中的文件是由服务器负责调用的,外界无权访问。

  • 在WEB-INF目录中创建一个classes目录和lib目录。

  • 在WEB-INF目录中创建一个名为web.xml的文件。方便起见这个文件可以去Tomcat的WEB-INF目录下复制一个,并且把编码改为UTF-8。

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    version="3.0"
    metadata-complete="true">
    </web-app>
  • 把classes目录作为字节码的输出路径,默认是bin路径,改为这里的classes目录,此时classes目录会消失。

3.部署javaweb项目

部署项目有三种方法

3.1 直接部署到Tomcat的webapps目录

访问:http://项目名/资源名

缺点:

  • 不支持热部署,代码改变后需要重新部署。
  • 后期项目越来越多,服务器启动变慢,维护起来很难。

3.2 从service.xml文件中找到项目路径

  • 打开Tomcat目录中的config目录下的service.xml文件
  • 在Host元素里面添加一个子元素
  • Context表示的是上下文,也就是当前的项目环境,doBase为需要被部署的项目的根路径。path表示的是上下文路径

注意:多个Context元素的path属性值不能相同。

访问:http://ip:port/ContextPath/资源名称,例如:http://localhost:80/pss/index.html

3.3 在Tomcat/conf/Catalina/localhost目录下创建xml文件

  • 在在Tomcat/conf/Catalina/localhost目录下创建一个xml文件,这个xml文件的名称相当于是上面方法的path,比如abc.xml
  • 文件内容为:,与上面方法相比就少了path,path其实是文件名,这两种方法本质是相同的

访问:http://ip:port/文件名/资源名称,例如http://localhost:8080/abc/index.html

JavaWeb入门环境搭建的更多相关文章

  1. CentOS上javaweb开发环境搭建

    CentOS上javaweb开发环境搭建 安装jdk yum list java* yum install java-1.7.0-openjdk* -y java -version 安装tomcat ...

  2. Windows C#入门环境搭建

    Windows C#入门环境搭建 1. 安装Microsoft .NET Framework目录: C:\Windows\Microsoft.NET\Framework,查看已经安装的版本. 如果未安 ...

  3. ArcGIS API for Silverlight/ 开发入门 环境搭建

    Silverlight/ 开发入门 环境搭建1 Silverlight SDK下载ArcGIS API for Microsoft Silverlight/WPF ,需要注册一个ESRI Gloab ...

  4. 基于IDEA的JavaWeb开发环境搭建

    基于IDEA的JavaWeb开发环境搭建 基于IDEA的JavaWeb开发环境搭建 jdk下载安装配置环境变量 下载 安装 配置环境变量 下载安装激活使用IntelliJ IDEA 下载 安装 激活 ...

  5. Android开发使用控件入门--环境搭建

    Android开发使用控件入门--环境搭建 软件名称(,梦,,想.CAD  ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android S ...

  6. 57.NodeJS入门--环境搭建 IntelliJ IDEA

    转自:https://blog.csdn.net/wang19891106/article/details/51127133 NodeJS入门–环境搭建 IntelliJ IDEA 本人也刚开始学习N ...

  7. NodeJS入门--环境搭建 IntelliJ IDEA

    NodeJS入门–环境搭建 IntelliJ IDEA 本人也刚开始学习NodeJS,所以以此做个笔记,欢迎大家提出意见. 1.首先 下载安装NodeJS,下载安装IntelliJ IDEA 2.接下 ...

  8. Couchbase入门——环境搭建以及HelloWorld

    一.引言 NoSQL(Not Only SQL),火了很久了,一直没空研究.最近手上一个项目对Cache有一定的要求,借此机会对NoSQL入门一下.支持NoSQL的数据库系统有很多,  比如Redis ...

  9. Jenkins入门-环境搭建(1)

    因为Jenkins的环境搭建比较简单,本来不想来介绍,但是发现有些入门小朋友,从各种网站上下载的各种安装包来搭建,最后导致出现了各种千奇百怪的问题,介于这种情况下我决定还是来写一下Jenkins的环境 ...

随机推荐

  1. 2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017) Solution

    A. Drawing Borders Unsolved. B. Buildings Unsolved. C. Joyride Upsolved. 题意: 在游乐园中,有n个游玩设施,有些设施之间有道路 ...

  2. uva11090 Bellman-Ford 运用

    给定一一个n个点m条边的加权有向图, 平均值最小的回路. 二分答案,对于每个二分的mid 做一次Bellman-Fprd , 假设有k条边组成的回路. 回路上各条边的权值为  w1 , w2 ..wk ...

  3. 2017-2018-2 20165207 实验三《敏捷开发与XP实践》实验报告

    java 实验三 实验报告 实验内容 代码规范 不规范的代码可能妨碍阅读,在粘贴下来老师在云班课中设置的提交点一的代码之后,我首先使用了IDEA中Code选项卡的Reformat Code功能规范代码 ...

  4. python中小数点后取2位(四舍五入)以及取2位(四舍五不入)

    一.小数点后取2位(四舍五入)的方法方法一:round()函数其实这个方法不推荐大家使用,查询资料发现里面的坑其实很多,python2和python3里面的坑还不太一样,在此简单描述一下python3 ...

  5. mssql查询所有上下级

    if exists (select * from sys.all_objects where name='GetOrgTreeByID') begin drop proc GetOrgTreeByID ...

  6. c++编译时打印宏定义

    #pragma message("this is message") #pragma message只能打印字符串,如果想打印任何宏定义可使用: #define PRINT_MAC ...

  7. 微信小程序:JS 交互逻辑

    微信小程序:JS 交互逻辑 一.JS 交互逻辑 一个服务仅仅只有界面展示是不够的,还需要和用户做交互:响应用户的点击.获取用户的位置等等.在小程序里边,我们就通过编写 JS 脚本文件来处理用户的操作. ...

  8. ubuntu如何使zsh替换bash

    答:  1.安装zsh sudo apt-get install zsh 2.zsh替换bash sudo chsh -s `which zsh` 3.重启 (注:重启后打开一个终端会自动进入zsh的 ...

  9. pip安装tensorflow-gpu好慢怎么办

    答:为pip换源,如换成清华源 cat ~/.pip/pip.conf(没有此文件,自行创建即可,然后加入以下内容) [global]index-url = https://pypi.tuna.tsi ...

  10. 框架-springmvc源码分析(一)

    框架-springmvc源码分析(一) 参考: http://www.cnblogs.com/heavenyes/p/3905844.html#a1 https://www.cnblogs.com/B ...