Java手动创建Web项目
原文链接: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项目的更多相关文章
- 使用MAVEN手动创建web项目
问题:如下图,使用maven创建webapp项目时,默认使用maven-archetype-webapp这个archetype,由于这个archetype比较古老,有如下缺点: 1. 默认生成的项目会 ...
- 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)
微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...
- maven命令行创建web项目报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
早上一上班就想新建一个web项目玩玩,没想到一敲命令创建就失败了,真是出师不利.各种折腾无果,当然我也可以用eclipse直接创建的,就是不甘心被这破问题给耍了.刚刚才发现问题原因,这个结果我也是醉了 ...
- 【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 ...
- eclipse中Maven创建WEB项目
刚刚学到Maven的时候总是容易忽视到一些创建Maven项目是的步骤, 这里记录笔者熟悉一种,直接创建Maven Project 下面开始吧--- 选择web-app,没得说,然后那些groupID ...
- Intellij IDEA 创建Web项目并在Tomcat中部署运行(不使用maven)【转载】
原文链接:http://www.thinksaas.cn/topics/0/350/350000.html 一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选 ...
- Intellij IDEA 创建Web项目并在Tomcat中部署运行
一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module name 处输入项目名,点击Next 3.勾选 Web Applica ...
- Intellij Idea 创建Web项目入门(一)
相关软件: Intellij Idea14:http://pan.baidu.com/s/1nu16VyD JDK7:http://pan.baidu.com/s/1dEstJ5f Tomcat(ap ...
- IntelliJ IDEA创建web项目及异常问题解决
IDEA配置Tomcat: 1.下载Tomcat,本次使用的是apache-tomcat-6.0.43 2.IDEA配置Tomcat 在idea中的Settings(Ctrl+Alt+s)(或者点击图 ...
随机推荐
- Linux提取命令grep 有这一篇就够了
grep作为linux中使用频率非常高的一个命令,和cut命令一样都是管道命令中的一员.并且其功能也是对一行数据进行分析,从分析的数据中取出我们想要的数据.也就是相当于一个检索的功能.当然了,grep ...
- 数组队列如何手撕?解密ArrayBlockingQueue的实现内幕!
队列 聊起队列,你一定会联想到一个与队列相似的数据结构:栈. 为了更好的理解什么是队列,我们将它和栈来比较一下: 队列的特点是:先进先出,如下图,1先进,1就先出. 图1:队列的图解 栈的特点是:先进 ...
- CF1547A Shortest Path with Obstacle 题解
Content 给定两个在二维平面上的网格 \(A(x_A,y_A)\) 和 \(B(x_B,y_B)\),另外,还有一个不可通过的网格 \(F(x_F,y_F)\).你需要求出在不经过 \(F\) ...
- Nginx加载新的模块,编译报错记录
参考:https://www.cnblogs.com/Leechg/p/9969000.html ---------如下我的操作记录--------------- nginx -V查看当前nginx信 ...
- 辅助函数和高阶函数 map、filter、reduce
辅助函数和高阶函数 map.filter.reduce: 一.辅助函数:(1-1)响应式函数 (数组更新检测): push() pop() shift() unshift() ...
- UDP&串口调试助手用法(4)
接收配置用法 概览 保存文件 可将数据保存到文件和文件夹 如果选择的时文件,则需要自己手动选择保存的文件. 如果选择的时文件夹,则需要指定文件夹的类型和文件的后缀 支持保存文件类型: 文本文件和二进制 ...
- ubuntu用户、用户组设置命令总结
1.ubuntu创建新用户: sudo adduser username(新建一个用户username) 2.设置用户 username 的密码(设置用户username密码) sudo passwd ...
- 【LeetCode】93. Restore IP Addresses 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 回溯法 日期 题目地址:https://leetco ...
- 防止 jar 包被反编译
1.隔离Java程序 最简单的方法就是让用户不能够访问到Java Class程序,这种方法是最根本的方法,具体实现有多种方式.例如,开发人员可以将关键的Java Class放在服务器端,客户端通过访问 ...
- element message多次点击出现多个提示框,如何显示一个或者在同一位置显示
/* message在同一位置弹出 */ /* reset elementUI message */ .el-message { top: 20px !important; } .el-message ...