java服务器端开发-servlet:1_2_2、如何开发一个servlet,实战写一个servlet

文章目录

 3、在MyEclipse工具开发第一个Servlet

step1,启动myeclipse,让myeclipse配置管理tomcat

step2,建立一个web工程

(1)写一个HelloServlet类

(2)配置web.xml

(3)在 myEclipse 打印控制台找到 Servers,启动 tomact 容器

(4)部署 web 项目

(5)查看运行效果

4、注意点

(1)自动生成  Servers 文件

(2)报错:The ResourceConfig instance does not contain any root resource classes


 3、在MyEclipse工具开发第一个Servlet

step1,启动myeclipse,让myeclipse配置管理tomcat

前提是你这三篇博文,你已经搞定:

MyEclipse2017安装:MyEclipse2017安装方法(Mac)

tomact安装:Apache Tomact安装和配置步骤详解(Mac)

MyEclipse2017配置tomact:MyEclipse配置apache Tomact步骤详解(Mac)

step2,建立一个web工程

如果是新建web工程,参见上面例子“建立一个web工程”就行,

这里直接在上一个例子中,新建一个包名类名

(1)写一个HelloServlet类

package t02_写第一个Servlet;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 写一个简单的Servlet
 * @UpdateTime:2011年02月28日 下午17:30:00
 * @ProjectName: web01
 * @ClassName:HelloServlet
 * @CategoryName:java类
 * @author:luminal、邮箱 [email protected]
 * @since 1.0
 * @Description:(可以在这里描述这个类的作用)
 * 1、照着写代码,体会、解释执行过程
 * 2、继承HttpServlet、写service方法【固定格式,先照着写】
 * 3、Servlet配置、访问地址,在WebRoot/WEB-INF/web.xml文件里面
 * 4、Servlet执行过程介绍【见:博文 或 Doc( 文档 )】
 */
public class HelloServlet extends HttpServlet{
		protected void service(HttpServletRequest request, HttpServletResponse response) 
		throws ServletException, IOException {
			//step1:输出处理结果
			//通过response,设置一个消息头(content-type),
			//告诉浏览器,服务器返回的数据类型
			response.setContentType("text/html");
			
			//step2:通过response(响应对象)获得一个输出流
			PrintWriter out = response.getWriter();
			
			//step3:将处理结果数据缓存到response对象上
			//-->处理结果,打包发送给浏览器
			//-->浏览器拆包,生成页面【详见Servlet执行过程介绍】
			out.println("Hello Servlet");
//			out.println("<div style='font-size:90px;font-style:italic;color:red;'>Hello Servlet</div>");
			
			//关闭流
			out.close();
			
		}
}

(2)配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
version="3.1">

<display-name>web01</display-name>

<!--   
  <servlet>
    <description>JAX-RS Tools Generated - Do not modify</description>
    <servlet-name>JAX-RS Servlet</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>JAX-RS Servlet</servlet-name>
    <url-pattern>/jaxrs/*</url-pattern>
  </servlet-mapping> -->
  
  
  <!--
		<servlet>
		<servlet-name>自定义名</servlet-name>
		<servlet-class>包名.类名</servlet-class>
		</servlet>
		<servlet-mapping>
		<servlet-name>自定义名</servlet-name>
		<url-pattern>/自定义名</url-pattern>
		</servlet-mapping>

//  访问地址:
//  http://localhost:8080/项目名/ 【WebRoot\WEB-INF\web.xml里面的<url-pattern>” 】对应的名字
//  http://localhost:8080/web01/hello
	-->
	
		<servlet>
		<servlet-name>xxx</servlet-name>
		<!-- 包名里面有汉字和下划线,不会报错 -->
		<servlet-class>t02_写第一个Servlet.HelloServlet</servlet-class>
		</servlet>
		<servlet-mapping>
		<servlet-name>xxx</servlet-name>
		<url-pattern>/hello</url-pattern>
		</servlet-mapping>
  
  
 
</web-app>


(3)在 myEclipse 打印控制台找到 Servers,启动 tomact 容器

         

或者你这样启动 tomact 也行

(4)部署 web 项目

或者你这样部署 web 项目 也行

        

finish,ok,部署完以后,查看 Console

二月 27, 2020 1:34:51 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory /Users/luminal/Documents/LuminalCode/Luminal_Java/t03_Web_Servlet_JSP_Jquery_Ajax/code/.metadata/.me_tcat85/webapps/web01
二月 27, 2020 1:34:53 下午 org.apache.jasper.servlet.TldScanner scanJars
信息: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
二月 27, 2020 1:34:53 下午 org.apache.catalina.startup.HostConfig deployDirectory

信息: Deployment of web application directory 
/Users/luminal/Documents/LuminalCode/Luminal_Java/t03_Web_Servlet_JSP_Jquery_Ajax/code
/.metadata/.me_tcat85/webapps/web01 
has finished in 1,487 ms

部署成功,我们看最后一条信息即可,它的大概意思:

部署web应用项目到目录xxxxxxx下已完成,耗时1478毫秒 

部署失败,一般会有错误提示

(5)查看运行效果

//  访问地址:
//  http://localhost:8080/项目名/ 【WebRoot\WEB-INF\web.xml里面的<url-pattern>” 】对应的名字
//  http://localhost:8080/web01/hello

在本地浏览器输入:http://localhost:8080/web01/hello

效果如下:

我的源代码:Java服务器开发(二)写第一个Servlet-Java文档类资源-CSDN下载

4、注意点

(1)自动生成  Servers 文件

myEclipse2017 貌似会在工作目录中自动生成一个 Servers 文件,这个我没有管它了,

就没有研究了,谁知道是什么鬼欢迎留言!

(2)报错:The ResourceConfig instance does not contain any root resource classes

可参考博文:The ResourceConfig instance does not contain any root resource classes

猜你喜欢

转载自blog.csdn.net/YuDBL/article/details/126576422