学习笔记是参考的how2j

开发第一个Servlet

Servlet 本身不能独立运行,需要在一个web应用中运行的,而一个web应用是部署在tomcat中的

所以开发一个servlet需要如下几个步骤

创建web应用项目

编写servlet代码

部署到tomcat中

本例使用Eclipse EE版 结合独立的 tomcat进行一次java普通项目的创建。

java ee可以自动创建web项目,但是,自动创建会让我们忽略一些细节,因此,在这里,我们先用eclipse手动创建一个简单的项目,熟悉一下创建流程

在这里,我们先使用一个不依赖JAVA_HOME的tomcat(称为纯净版tomcat)进行测试,可以和商品文章中的tomcat共存在D盘中。纯净版tomcat下载地址为https://how2j.cn/frontdownload?bean.id=1177,然后将下载的压缩包还是解压在D盘根目录下,文件夹名称为tomcat_80,因为这个纯净版tomcat默认端口号为80。

需要说明的时,我是通过how2j来学习Javaweb的,笔记和资料都是基于how2j。

先看一下项目的效果

通过输入网址127.0.0.1/hello可以访问网页显示如下内容。

创建java项目j2ee

打开eclipse,file-other-java-javaproject,输入项目名称j2ee,不使用默认位置,而是将项目建立在E:\project\j2ee下,然后finish。

导入必须的jar包

编写servelet需要用到servlet-api.jar 这个包里的相关类,而这个包位于D:\tomcat_80\lib\servlet-api.jar.

导入方式为:项目名上右键-properties-Java Build Path -Libraries-Add External JARs-浏览找到servelet-api.jar加入到里面-Apply and close

编写HelloServelet类

在eclipse中创建一个普通类,步骤为File-New-Class-需要注意的是要把默认包名删除掉-finish。

复制以下代码到HelloServelet.java中

import java.io.IOException;

import java.util.Date;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet{

public void doGet(HttpServletRequest request, HttpServletResponse response){

try {

response.getWriter().println("

Hello Servlet!

");

response.getWriter().println(new Date().toLocaleString());

} catch (IOException e) {

// TODO Auto-generated catch block e.printStackTrace();

}

}

}

配置web.xml

现在j2ee项目下新建文件夹web

然后在web文件夹下新建文件夹WEB-INF

然后再WEB-INF中新建xml文件web.xml

复制下列代码到web.xml中

HelloServlet

HelloServlet

HelloServlet

/hello

指定项目输出到classes目录

现在WEB-INF文件夹中新建文件夹classes。

然后把项目的class文件输出默认路径由原来的j2ee/bin重新设置为j2ee/web/WEB-INF/classes。

修改方式为:项目名称上右键->properties->Java Build Path->Source->右下角的 Brower-> 指定位置是 j2ee/web/WEB-INF/classes。

【这么做是为什么?】:eclipse中默认class文件输出目录是bin目录下,但是tomcat启动后,默认去 WEB-INF/classes目录下去寻找文件,所以需要这样配置使得eclipse和tomcat兼容。

配置server.xml中的context

打开D:\tomcat_80\conf\server.xml,在下列位置添加一句

path="/"表示可以直接使用127.0.0.1/hello访问网页。

如果添加的语句使用的是,那么必须使用127.0.0.1/j2ee/hello访问网页。

然后重启tomcat,即关闭已经打开的tomcat然后双击D:\tomcat_80\bin\satrtup.bat,然后在浏览器中输入127.0.0.1/hello,可以看到正常访问,如下图

java 创建servlet_javaweb02-创建第一个Servlet相关推荐

  1. java程序servlet_JavaWeb之第一个Servlet程序

    我使用的编辑器是Intellj Idea,并且配置maven插件,无论是Intellj还是eclipse,重要的是编程思想,无所谓编辑器. 1. 编写一个Servlet实现类:HelloServlet ...

  2. 创建您的第一个servlet

    在本教程中,我们将学习如何使用Servlet创建非常基本的Web应用程序. Servlet是一类,扩展了服务器拦截和响应传入请求的功能. Servlet是一个Web组件,可在服务器上进行编写,构建和部 ...

  3. java反射减少servlet_利用java 反射机制来实现一个servlet处理多种请求

    如果我们想在一个servlet中处理多种请求(比如新闻的添加.删除),简单的可以在jsp提交表单的action路径中添加一个键值对,然后再servlet中接收后根据不同的值来调用不同的方法. jsp端 ...

  4. 利用抽象工厂创建DAO、利用依赖注入去除客户端对工厂的直接依赖、将有关Article的各种Servlet封装到一个Servlet中(通过BaseServlet进行

    利用抽象工厂创建DAO.利用依赖注入去除客户端对工厂的直接依赖.将有关Article的各种Servlet全部封装到一个Servlet中(通过BaseServlet来进行ArticleServlet方法 ...

  5. 使用IDEA创建一个Servlet应用程序

    使用IDEA创建一个Servlet应用程序 第一步:创建web应用 选择web application应用,之后填写项目名称等. 第二步:项目配置 在WEB-INF目录下创建两个文件夹:classes ...

  6. Spring MVC:使用基于Java的配置创建一个简单的Controller

    这是我博客上与Spring MVC相关的第一篇文章. 开端总是令人兴奋的,因此我将尽量简洁明了. Spring MVC允许以最方便,直接和快速的方式创建Web应用程序. 开始使用这项技术意味着需要Sp ...

  7. 教你用Java的方式创建一个自己的Tomcat容器

    当我们开始接触到SpringBoot项目的时候,我们特别惊讶,为什么没有了tomcat服务器,web项目还能跑起来.为什么只用了一个main方法就能讲一个web项目跑起来.学习了这篇文章你就能明白了. ...

  8. 玩转Web之servlet(一)---怎样创建一个servlet

    Servlet概念:servlet就是用java编写的服务器端的小程序,用来完成下B/S架构(即浏览器和服务器架构)下客户端请求的响应处理. servlet通常在容器中运行Tomcat是常见的serv ...

  9. Idea2020创建一个Servlet

    前言:在创建一个web项目的基础上,创建一个Servlet.Servlet可以用来接收页面的请求并可以做出响应Idea2020 创建web项目_txj的博客-CSDN博客目录一.创建一个空项目二.创建 ...

最新文章

  1. Linux/Centos下/lib64/libc.so.6: version `GLIBC_2.14' not found问题
  2. Clipboard还能玩出花
  3. 27 | 案例篇:为什么我的磁盘I/O延迟很高?
  4. rabbitmq中消息的存储
  5. 精简ABP的模块依赖
  6. 《Oracle高性能自动化运维》一一2.3 Library Cache
  7. java成组链接法的实现_c++磁盘存储空间的管理模拟(UNIX存储管理的成组链接法的设计与实现)...
  8. paip.提升性能---string split
  9. opencv android 车牌,OpenCV + Android +车牌号识别
  10. 关注手机病毒:重点手机安全事件盘点
  11. php ucfirst();函数
  12. python就业方向-学完Python的7大就业方向,哪个赚钱多?
  13. MedianFlow代码 程序示例
  14. 台计算机的本地打印机 并且,三台电脑,怎么共用一台打印机?
  15. Linux修改用户ID
  16. 小程序获取视频第一帧
  17. AVL树的理解及自写AVL树
  18. 封装篇——图片模块(Glide)
  19. 37岁生日快乐哦:说点大实话
  20. SAP ABAP开发个别概念理论区分理解

热门文章

  1. Zookeeper源码分析:选举流程
  2. python浪漫表白代码
  3. python将一个json字典转换为一个python对象
  4. VSCODE安装必要的插件实现浏览器中打开,以及显示网址
  5. 为什么123 and 456结果是456而123 or 456结果是123?
  6. 【从零学习OpenCV 4】4种读取Mat类元素的的方法
  7. 第七篇:并发-恢复机制
  8. 【译】理解Javascript函数执行—调用栈、事件循环、任务等
  9. Zabbix安装配置(CentOS7.3)
  10. 邮件客户端WebMail Pro v7.7.5发布,在线订购限时75折优惠!