Eclipse + Tomcat + Servlet : web项目从0到0.1

Eclipse + Tomcat + Servlet : web项目从0到0.1

1 Servlet、Tomcat

①Servlet:
就是一个服务器端的Java程序,用于对来自客户端的请求进行处理;
Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层;

②Tomcat:
在市场上有许多 Web 应用服务器支持 Servlet,Tomcat 就是其中的一个。

2 安装Tomcat

① 可以前往: http://tomcat.apache.org下载各个版本的Tomcat
② Liquid使用的是 7.0 版本,建议先下载 7.0 版本,与教程保持一致
③ 下载后把Tomcat安装在某个位置(哪里都可以),Liquid的安装目录为:E:\Apache Software Foundation\apache-tomcat-7.0.107

3 Eclipse添加Tomcat服务器

window → Preferences
在这里插入图片描述
Server → Runtime Environment → Add
注意:若找不到Servers这个选项,请查看问题集锦
在这里插入图片描述

Apache → 选择与下载的 Tomcat一致的版本 → Next
在这里插入图片描述
选择刚刚安装 Tomcat 的位置 → Finish
在这里插入图片描述

显示 Server控制台:Windows → Show view → Servers
在这里插入图片描述

在这里插入图片描述

4 创建web项目(Liquid将其命名为MyFirstWeb)

① File → New → Project → Web → Dynamic Web Project → Next
在这里插入图片描述

在这里插入图片描述
填写Project name → 选择 Target runtime → Next
在这里插入图片描述

Next → 勾选Generate web.xml deployment descriptor → Finish
在这里插入图片描述
在这里插入图片描述

5 创建首页html文件(访问服务器时第一个打开的页面)

① 先简单介绍一下web项目的配置文件
配置文件:MyFirstWeb -> WebContent -> WEB-INF -> web.xml
红色框框里的welcome-file标签即:访问服务器的MyFirstWeb时的第一个打开的页面,优先级由上至下降低
在这里插入图片描述

② 简单编写一个html文件,例如test.html,并放入WebContent目录中,如下图所示:
右键 WebContent → New → HTML File → 填写 File Name → Finish
在这里插入图片描述
在这里插入图片描述

③ 打开test.html ,在body标签内写入页面内容,例如:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<H1>This is my FirstWebProject's welcome page!</H1>
</body>
</html>

在这里插入图片描述

④ 打开配置文件web.xml,编写以下内容(使test.xml作为首页)
在这里插入图片描述

6 运行Web项目

① 方式1:在Eclipse中运行

(1)右键 MyFirstWeb → Run As → Run on Server
在这里插入图片描述

(2)选择我们刚刚创建的服务器 → Finish
注意:此处可能出现找不到我们已经创建好的服务器,而且也无法在运行时创建的问题,请移步下文的 问题集锦
在这里插入图片描述

(3)不出意外的话,首先会启动 tomcat 服务器,然后弹出我们刚刚编写的 test.html 页面
在这里插入图片描述
② 方式2:在浏览器中运行
浏览器中输入 localhost:8080/MyFirstWeb 或 127.0.0.1:8080/MyFirstWeb → 回车
说明:localhost == 127.0.0.1 , 8080是Tomcat默认的端口号
在这里插入图片描述

7 将项目部署到Tomcat

将项目导出为WAR包:右键项目名 MyFirstWeb → Export → WAR file
在这里插入图片描述
将导出的 WAR 包放入 tomcat/webapps(Tomcat的webbapps文件夹内)
在这里插入图片描述
重启 Tomcat 服务器
apache-tomcat-7.0.107 → bin
在bin文件夹中找到startup 和 shutdown;先双击执行shutdown,再执行startup
说明:startup用于启动tomcat,shutdown用于关闭tomcat;因为刚刚我们在eclipse当中启动了tomcat,所以需要先关闭再重新启动
在这里插入图片描述
浏览器中访问项目
在浏览器中输入 localhost:8080/MyFirstWeb 或 127.0.0.1:8080/MyFirstWeb → 回车
说明:localhost == 127.0.0.1 , 8080是Tomcat默认的端口号
在这里插入图片描述

8 使用 Servlet

新建servlet类 :右键MyFirstWeb → New → Servlet → 填写相关信息 → Finish
在这里插入图片描述
在这里插入图片描述
② 配置Servlet : MyFirstWeb → WebContent → WEB-INF → 打开web.xml
在web-app标签内写入以下代码
在这里插入图片描述

<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>MyFirstWeb</display-name>
  <welcome-file-list>
    <welcome-file>test.html</welcome-file>
  </welcome-file-list>
  
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>servlet.MyServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/servlet/MyServlet</url-pattern>
  </servlet-mapping>	
  
</web-app>

MyFirstWeb → Java Resources → src → servlet → 打开 MyServlet.java
当以服务器接收到一个get请求时,就会自动调用 doGet 方法
我们在doGet方法中写入一些测试代码:

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	    PrintWriter out = response.getWriter();
		out.println("<h1>GET SUCCESSFULLY BY liquid</h1>");// 返回给页面
		
        Enumeration parameterNames=request.getParameterNames();
        while(parameterNames.hasMoreElements()) {// 若果get请求含有参数,则连名带值打印出来
            String paramName = (String)parameterNames.nextElement();
            String parameterValue=request.getParameter(paramName);
            System.out.println(paramName + ":" + parameterValue);
        }
	}

在这里插入图片描述
④ 启动Tomcat服务器
在这里插入图片描述
⑤ 在浏览器中输入(如果你的命名跟我一样,可以点击打开):http://localhost:8080/MyFirstWeb/servlet/MyServlet?a=1&b=2
在这里插入图片描述
在这里插入图片描述
提示:如果直接在Eclipse上运行servlet:右键MyServlet.java → Run as → Run on Server → 选择相应的服务器

与servlet相关的内容,请参考 : https://www.runoob.com/servlet/servlet-life-cycle.html

9 问题集锦

(1) 问题2: 找不到Server选项
该问题的原因:Eclipse不是Java EE版本,点击下载Eclipse Java EE
提示:不建议使用网上流传的更新插件的方法(速度慢,出错概率高,往往折腾了半天却发现没有用)

(2) 问题1: 运行Web项目,既无法找到已创建的Tomcat服务器,也无法创建新的服务器

① 找到项目所在位置,setting → 用记事本打开xml文件 :org.eclipse.wst.common.project.facet.core → 修改version (默认值可能不是3.1,根据实际的初始值来逐一减小尝试即可)
在这里插入图片描述
② 回到Eclipse,右键MyFirstWeb → Refresh → 再次运行项目

(3) 问题3 :执行servlet,报 classNotFoundException 错误
错误如下图所示
在这里插入图片描述

在这里插入图片描述
参考解决方案:https://blog.csdn.net/happy_bigqiang/article/details/69931279

10 总结

至此,我们已经在Eclipse中初步建立了一个Web项目,并进行了简单测试。如果一切顺利,那么恭喜你,你的web之路踏出了0.1步,前路漫漫,路途遥远,请保护好头发,Liquid与你同行!
后续会更新与Servlet相关的内容,走过路过请君莫错过!
不足之处、理解不到位之处、欢迎指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Liquid-Li

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值