原文链接:https://www.toutiao.com/i6495693288043971086/

为了便于理解Web项目结构,我们手动创建整个过程。

先启动Tomcat

下载Tomcat7.0

解压目录

目录结构

打开"运行"命令,输入"sysdm.cpl",打开"系统属性"对话框


进入"环境变量"配置

首先配置:CATALINE_HOME,新建一个环境变量

环境变量的值是我们刚才解压的目录

修改环境变量PATH的值

添加两个值:%CATALINA_HOME%\bin和%CATALINA_HOME%\lib\servlet-api.jar

打开DOS界面进入到Tomcat\bin目录下

执行以下命令

出现以下窗口

浏览器中出现

表示Tomcat已经启动

手动创建Web项目

我们首先在tomcat/webapps下创建一个目录

里面创建一个WEB-INF目录

WEB-INF目录下创建两个目录和一个文件

classes:主要存放编译好的.class 文件

lib:存放你所需要依赖的jar包

web.xml :配置文件

其中样例内容:

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

id="WebApp_ID" version="2.5">

<display-name>dsj</display-name>

<servlet>

<servlet-name>HandleServer</servlet-name>

<servlet-class>dsj.HandleServer</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>HandleServer</servlet-name>

<url-pattern>/do</url-pattern>

</servlet-mapping>

<welcome-file-list>

<welcome-file>index.html</welcome-file>

</welcome-file-list>

</web-app>

编写一个Java文件

package dsj;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.Date;

public class HandleServer extends HttpServlet {

//init method

public void init() throws ServletException {}

//handle get request

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// 首先将访问修饰符覆写为public

// 设置内容类型

response.setContentType("text/html");

PrintWriter out = response.getWriter();

out.println("<html><head><title>Hello World Sample</title></head>");

out.println("<body><h1>Hello World Title<h1><h2>" +new Date().toLocaleString() + "</h2></body></html>");

out.flush();

}

//handle post request

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}

//handle put request

protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

}

//handle delete request

protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

}

//destroy

public void destroy() {}

}

我们编译这个Java文件

javac -cp apache-tomcat-7.0.82\lib\servlet-api.jar -d . HandleServer.java

将生成class文件放到之前的classes中(注意包结构)

在tomcat 下的conf目录下的server.xml 中配置

重新启动Tomcat,在浏览器中输入地址,输出数据

Java手动创建Web项目的更多相关文章

  1. 使用MAVEN手动创建web项目

    问题:如下图,使用maven创建webapp项目时,默认使用maven-archetype-webapp这个archetype,由于这个archetype比较古老,有如下缺点: 1. 默认生成的项目会 ...

  2. 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)

    微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...

  3. maven命令行创建web项目报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils

    早上一上班就想新建一个web项目玩玩,没想到一敲命令创建就失败了,真是出师不利.各种折腾无果,当然我也可以用eclipse直接创建的,就是不甘心被这破问题给耍了.刚刚才发现问题原因,这个结果我也是醉了 ...

  4. 【maven】maven创建web项目-pom文件提示web.xml is missing and <failOnMissingWebXml> is set to true

    使用maven创建web项目,选择war类型后,pom文件红叉 提示web.xml is missing and <failOnMissingWebXml> is set to true ...

  5. eclipse中Maven创建WEB项目

    刚刚学到Maven的时候总是容易忽视到一些创建Maven项目是的步骤, 这里记录笔者熟悉一种,直接创建Maven Project 下面开始吧--- 选择web-app,没得说,然后那些groupID ...

  6. Intellij IDEA 创建Web项目并在Tomcat中部署运行(不使用maven)【转载】

    原文链接:http://www.thinksaas.cn/topics/0/350/350000.html 一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选 ...

  7. Intellij IDEA 创建Web项目并在Tomcat中部署运行

      一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module name 处输入项目名,点击Next 3.勾选 Web Applica ...

  8. Intellij Idea 创建Web项目入门(一)

    相关软件: Intellij Idea14:http://pan.baidu.com/s/1nu16VyD JDK7:http://pan.baidu.com/s/1dEstJ5f Tomcat(ap ...

  9. IntelliJ IDEA创建web项目及异常问题解决

    IDEA配置Tomcat: 1.下载Tomcat,本次使用的是apache-tomcat-6.0.43 2.IDEA配置Tomcat 在idea中的Settings(Ctrl+Alt+s)(或者点击图 ...

随机推荐

  1. TCP链接请求的10种状态

    一.状态显示 SYN_SENT:这个状态与SYN_RCVD遥相呼应,当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,随即进入到了SYN_SENT状态,并等待服务端的发送三次握手中的 ...

  2. 开发中的PR和MR

    GitLab的是Pull Request缩写.GitHub则是Merge Request也就是MR. 当项目下载后进行更改并提交,每次过程算一次PR,一般会加入管理员审核,通过才能合并到master主 ...

  3. M-SOLUTIONS Programming Contest 2021(AtCoder Beginner Contest 232) 题解

    目录 G - Modulo Shortest Path H - King's Tour 因为偷懒就只写G和H的题解了. G - Modulo Shortest Path 首先可以观察到对于一条从点\( ...

  4. CF616B Dinner with Emma 题解

    Content 翻译很明白,或者你也可以看我的简化版题意: 求一个 \(n\times m\) 的矩阵中每行的最小值的最大值. 数据范围:\(1\leqslant n,m\leqslant 100\) ...

  5. Nacos——注册中心

    目录 1.什么是nacos 2.使用--依赖+配置文件 3.Nacos服务分级存储模型 4.服务跨集群调用问题 5.服务集群属性--配置服务集群 6. Nacos-NacosRule负载均衡 7.根据 ...

  6. JAVA整合kaptcha生成验证码 (字母验证码和算术验证码)

    引入maven <!--图片验证码--> <dependency> <groupId>com.github.penggle</groupId> < ...

  7. 痞子衡嵌入式:把玩i.MXRT1062 TencentOS Tiny EVB_AIoT开发板(1) - 开发环境搭建与点灯

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1062 TencentOS Tiny EVB_AIoT开发板环境搭建与点灯. 腾讯 TencentOS 团队于2021年1 ...

  8. 【LeetCode】804. Unique Morse Code Words 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述: 题目大意 解题方法 set + map set + 字典 日期 题目地 ...

  9. Interesting Yang Yui Triangle(hdu3304)

    Interesting Yang Yui Triangle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  10. bugku的一道XFF转发代理服务器题 “本地服务器”

    X-Forwarded-For requests包内构造方式: X-Forwarded-For: client1, proxy1, proxy2