Servlet+JSP

需要说明的是,其实工具的版本不是主要因素,所以我下面忽略版本。

你能搜到这篇文章,说明你已经知道怎么部署Tomcat,并运行自己的网页了。

但是,我们知道,每次修改源文件,我们总得手工把文件copy到tomcat目录里。这很麻烦,而且说不定你就乱了,忘记哪个要修改什么的。这对于调试非常不利。

所以,如果能把编辑和部署都在eclipse里面完成,那就省事多了。

要做到这一点,我们需要一个eclipse插件:Sysdeo。

 

插件的安装不用多说了吧,下载后解压到eclipse的plugins文件夹里。

然后需要做一点配置:

安装完插件后,就能在Eclipse里面启动和关闭tomcat了。

 

然后,这个插件很重要的一点是:为我们提供了创建项目的功能。

在file->new里面找到“Tomcat Project”的选项。

创建一个项目后,我们可以看到这样的目录结构:

可以发现,Servlet相关的类库已经帮忙加载了。

里面比较重要的文件夹有:

WEB-INF:这个很熟悉吧,web.xml文件放在里面。

WEB-INF/src:要创建Servlet,只需要在这里建普通的java类就可以了。

work:jsp编译后生成的.java文件,就放在这里。

 

首先,创建一个Servlet:

复制代码
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<HTML><BODY>Hello world!</BODY></HTML>");
}
}
复制代码

然后创建web.xml并配置:

复制代码
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/Info</url-pattern>
</servlet-mapping>
</web-app>
复制代码

再创建一个jsp文件(逻辑有问题,勿深究):

NumberGuess.jsp

复制代码
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>NumberGuess</title>
</head>
<body>
<%@ page import="java.util.*" %>
<%! int answer=0; %>
<%! int numberGuesses=0; %>
<% String guess=request.getParameter("guess");
if(guess==null) { %>
Welcome to the Number Guess game.<p>
<% answer=Math.abs(new Random().nextInt()%100)+1;
numberGuesses=0;
} else { 
int value=Integer.parseInt(guess);
if(value==answer) { %>
Congratulation! You got it.<br>
And after just <%= numberGuesses %> tries.<p>
Care to <a href="NumberGuess.jsp">try again</a>?<p>
<% } else { %>
Good guess, but nope. Try
<% numberGuesses++;
if(value<answer) { %>
<b>higher.</b>.<p>
<% } else if (value>answer) { %>
<b>lower</b>.<p>
<% }
}
} %>
I'm thinking of a number between 1 and 100.<p>
<form method=get action="NumberGuess.jsp">
What's your guess? <input type=text name=guess>
<input type=submit value="Submit">
</form>
</body>
</html>
复制代码

 

在eclipse里启动Tomcat,然后分别在浏览器里敲入:

http://localhost:8080/nihao/Info

http://localhost:8080/nihao/NumberGuess.jsp

正常运行!bingo!

 

我们发现,整个操作过程中,我们并没有把文件拷贝到Tomcat的工作目录下。而且,就算eclipse关闭了,依然能跑,这是为什么?

通过观察,发现在tomcat->conf->server.xml里面增加了这么一行:

<Context path="/nihao" reloadable="true" docBase="C:\Users\Administrator\Desktop\WorkSpace05\nihao" workDir="C:\Users\Administrator\Desktop\WorkSpace05\nihao\work" />

所以,是这个插件把tomcat的工作目录重定向了,这样很方便开发。

 

如果要重新加载项目,右键目录树->import->General->Existing Projects into Workspace->选择项目

如果缺少包什么的,右键项目->Properties->Libraries->AddJars

Add External JARs就是把JDK压缩一下ZIP加载下

Add Library.. 添加 JRE System Library

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/388508.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

正态分布高斯分布泊松分布_正态分布:将数据转换为高斯分布

正态分布高斯分布泊松分布For detailed implementation in python check my GitHub repository.有关在python中的详细实现&#xff0c;请查看我的GitHub存储库。 介绍 (Introduction) Some machine learning model like linear and logistic regression assumes a Gaussian di…

BABOK - 开篇:业务分析知识体系介绍

本文更新版已挪至 http://www.zhoujingen.cn/itbang/328.html ---------------------------------------------- 当我们作项目时&#xff0c;下面这张图很多人都明白&#xff0c;从计划、构建、测试、部署实施后发现提供的方案并不能真正解决用户的问题&#xff0c;那么我们是…

对象-检测属性

<h3>判断某个属性是否存在于某个对象中&#xff1b;</h3><ol><li>in&#xff1a;检查一个属性是否属于某个对象&#xff0c;包括继承来的属性&#xff1b;<pre>var person {name:yourname, age:10};console.log(name in person); //trueconsole…

黑苹果 wifi android,动动手指零负担让你的黑苹果连上Wifi

动动手指零负担让你的黑苹果连上Wifi2019-12-02 10:08:485点赞36收藏4评论购买理由黑苹果Wifi是个头疼的问题&#xff0c;高“贵”的原机Wifi蓝牙很贵&#xff0c;比如我最近偶然得到的BCM94360CS2&#xff0c;估计要180。稍微便宜的一点的&#xff0c;搞各种ID&#xff0c;各种…

洛谷——P2018 消息传递

P2018 消息传递 题目描述 巴蜀国的社会等级森严&#xff0c;除了国王之外&#xff0c;每个人均有且只有一个直接上级&#xff0c;当然国王没有上级。如果A是B的上级&#xff0c;B是C的上级&#xff0c;那么A就是C的上级。绝对不会出现这样的关系&#xff1a;A是B的上级&#xf…

axios异步请求数据的简单使用

使用Mock模拟好后端数据之后&#xff08;Mock模拟数据的使用参考&#xff1a;https://segmentfault.com/a/11...&#xff09;&#xff0c;就需要尝试请求加载数据了。数据请求选择了axios&#xff0c;现在都推荐使用axios。 axios&#xff08;https://github.com/axios/axios&a…

float在html语言中的用法,float属性值包括

html中不属于float常用属性值的是float常用的值就三个:left\right\none。没有其他的值了。 其中none这个值是默认的&#xff0c;所以一般不用写。css中float属性有几种用法&#xff1f;值 描述left 元素向左浮动。 right 元素向右浮动。 none 默认值。元素不浮动&#xff0c;并…

它们是什么以及为什么我们不需要它们

Once in a while, when reading papers in the Reinforcement Learning domain, you may stumble across mysterious-sounding phrases such as ‘we deal with a filtered probability space’, ‘the expected value is conditional on a filtration’ or ‘the decision-mak…

LoadRunner8.1破解汉化过程

LR8.1版本已经将7.8和8.0中通用的license封了&#xff0c;因此目前无法使用LR8.1版本&#xff0c;包括该版本的中文补丁。 破解思路&#xff1a;由于软件的加密程序和运行的主程序是分开的&#xff0c;因此可以使用7.8的加密程序覆盖8.1中的加密程序&#xff0c;这样老的7.8和…

TCP/IP网络编程之基于TCP的服务端/客户端(二)

回声客户端问题 上一章TCP/IP网络编程之基于TCP的服务端/客户端&#xff08;一&#xff09;中&#xff0c;我们解释了回声客户端所存在的问题&#xff0c;那么单单是客户端的问题&#xff0c;服务端没有任何问题&#xff1f;是的&#xff0c;服务端没有问题&#xff0c;现在先让…

谈谈iOS获取调用链

本文由云社区发表iOS开发过程中难免会遇到卡顿等性能问题或者死锁之类的问题&#xff0c;此时如果有调用堆栈将对解决问题很有帮助。那么在应用中如何来实时获取函数的调用堆栈呢&#xff1f;本文参考了网上的一些博文&#xff0c;讲述了使用mach thread的方式来获取调用栈的步…

python 移动平均线_Python中的移动平均线

python 移动平均线There are situations, particularly when dealing with real-time data, when a conventional average is of little use because it includes old values which are no longer relevant and merely give a misleading impression of the current situation.…

Ireport制作过程

Ireport制作过程 1、首先要到Option下设置一下ClassPath添加文件夹 2、到预览->报表字段设置一下将要用到的字段 3、到编辑->查询报表->写sql语句&#xff0c;然后把语句查询的字段结果与上面设置的报表字段的名要对应上 4、Option->选项->Compiler设置一下…

2018.09.16 loj#10243. 移棋子游戏(博弈论)

传送门 题目中已经给好了sg图&#xff0c;直接在上面跑出sg函数即可。 最后看给定点的sg值异或和是否等于0就判好了。 代码&#xff1a; #include<bits/stdc.h> #define N 2005 #define M 6005 using namespace std; int n,m,k,sg[N],first[N],First[N],du[N],cnt0,an…

html5字体的格式转换,font字体

路由器之家网今天精心准备的是《font字体》&#xff0c;下面是详解&#xff01;html中的标签是什么意思HTML提供了文本样式标记&#xff0c;用来控制网页中文本的字体、字号和颜色&#xff0c;多种多样的文字效果可以使网页变得更加绚丽。其基本语法格式&#xff1a;文本内容fa…

红星美凯龙牵手新潮传媒抢夺社区消费市场

瞄准线下流量红利&#xff0c;红星美凯龙牵手新潮传媒抢夺社区消费市场 中新网1月14日电 2019年1月13日&#xff0c;红星美凯龙和新潮传媒战略合作发布会在北京召开&#xff0c;双方宣布建立全面的战略合作伙伴关系。未来&#xff0c;新潮传媒的梯媒产品将入驻红星美凯龙的全国…

机器学习 啤酒数据集_啤酒数据集上的神经网络

机器学习 啤酒数据集Artificial neural networks (ANNs), usually simply called neural networks (NNs), are computing systems vaguely inspired by the biological neural networks that constitute animal brains.人工神经网络(ANN)通常简称为神经网络(NNs)&#xff0c;是…

实例演示oracle注入获取cmdshell的全过程

以下的演示都是在web上的sql plus执行的&#xff0c;在web注入时 把select SYS.DBMS_EXPORT_EXTENSION.....改成   /xxx.jsp?id1 and 1<>a||(select SYS.DBMS_EXPORT_EXTENSION.....)   的形式即可。(用" a|| "是为了让语句返回true值)   语句有点长…

html视频位置控制器,html5中返回音视频的当前媒体控制器的属性controller

实例检测该视频是否有媒体控制器&#xff1a;myViddocument.getElementById("video1");alert("Controller: " myVid.controller);定义和用法controller 属性返回音视频的当前媒体控制器。默认地&#xff0c;音视频元素不会有媒体控制器。如果规定了媒体控…

ER TO SQL语句

ER TO SQL语句的转换&#xff0c;在数据库设计生命周期的位置如下所示。 一、转换的类别 从ER图转化得到关系数据库中的SQL表&#xff0c;一般可分为3类&#xff1a; 1&#xff09;转化得到的SQL表与原始实体包含相同信息内容。该类转化一般适用于&#xff1a; 二元“多对多”关…