【Java框架型项目从入门到装逼】第四节 - 编写第一个Servlet程序

在开始这一节之前呢,我们还需要把Tomcat配置到Eclipse中,配置的方式很简单,打开Eclipse,Window,Preferences,进入到这个页面:

image.png

将Tomcat的安装目录配置到Eclipse中。 然后,可以看到左侧多出来一个Servers文件夹:

image.png

这个是Eclipse虚拟了一个Tomcat进来,以后我们都操作这个虚拟的Tomcat,其中也有一个Server.xml,我们也可以在里面添加Web项目,配置端口号之类的。

image.png

启动Tomcat有如图两种方式,第一种是debug模式,第二种是run模式,在debug模式中,我们就可以给程序打一个断点,然后一步一步调试。

1、新建一个dynamic web项目 “wzry”,注意要勾选Generate web.xml deployment descriptor(部署描述符);

2、在src中新建一个名叫com.wzry.web.servlet的包,其中新建一个类叫LoginServlet;

3、Servlet程序没有main方法 , 类一般都需要继承HttpServlet类 ,重写init、destroy、doGet、doPost四个方法,但在实际开发中,我们往往不会重写destroy方法;

image.png

我们暂时就重写init方法,里面加上一句话即可。

4、在web.xml里面添加Servlet配置;

◆添加<servlet>:把Servlet内部名映射到一个Servlet类名(包名+类名); ◆添加<servlet-mapping>:把用户访问的URL映射到Servlet的内部名; ■注意啦:<servlet-mapping>中的<servlet-name>要与<servlet>中的<servlet-name>必须一致。

 <servlet>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>com.wzry.web.LoginServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/login.do</url-pattern>
  </servlet-mapping>

按住ctrl,鼠标划上去,如果com.wzry.web.LoginServlet下面出来一个短横线,说明引入正确。 如果是Eclipse,还要修改编译路径:

image.png

这个路径是错误的,因为web项目中,Java类编译后的class文件都应该在这个地方:

image.png

这里需要自己手动新建一个classes文件夹。然后,他会提示你是否需要重新编译?选择Yes。

image.png

配置server.xml,部署该项目,端口号为80(浏览器中可以忽略)。启动Tomcat,然后打开浏览器,输入:http://localhost/wzry/login.do,回车,可以看到控制台打印了init方法中的内容:

image.png

这就说明,我们的流程已经走通了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏分享达人秀

HelloWorld,我的第一趟旅程出发点

经过前面几期的学习,我们知道了Android的前世今生,也大致了解了Android的系统架构和应用组件,然后花了几期来学习掌握Android的开发环境搭...

20770
来自专栏猿天地

Spring Cloud Gateway 之 AddRequestHeader GatewayFilter Factory

今天我们来学习下GatewayFilter Factory,中文解释就是过滤器工厂。

19520
来自专栏Rovo89

Unix/Linux常用的命令

20350
来自专栏pangguoming

Nodejs开发框架Express3.0开发手记–从零开始

转载请注明出处: http://blog.fens.me/nodejs-express3/ 程序代码已经上传到github有需要的同学,自行下载。 http...

426120
来自专栏AndroidTv

继续封装个 Volley 组件前言二次封装Github地址

那么,今天继续再来封装一个网络组件,基于 volley 的二次封装,目的也是为了简化外部使用,以及新项目可快速接入使用。

12120
来自专栏程序员互动联盟

【专业技术】linux中驱动异步通知探秘

驱动程序运行在内核空间中,应用程序运行在用户空间中,两者是不能直接通信的。 但在实际应用中,在设备已经准备好的时候,我们希望通知用户程序设备已经ok,用户程序可...

31660
来自专栏SpringBoot 核心技术

SpringBoot核心技术:探究Actuator的默认开放节点 & 详细健康状态

系统的监控在分布式的设计中显得尤为重要,因为分开部署的缘故,并不能及时的了解到程序运行的实时状况,之所以重要所以SpringBoot也给我提供了一套自动监控的A...

34330
来自专栏向治洪

cocos2d 在windows环境下搭建

详细搭建步骤如下: 1、Android 开发环境搭建 Android开发环境搭建不是重点,相信看此文章的很多人都已经搭建成功,这里随便概述性的说说。 1、下载 ...

23770
来自专栏从零开始学自动化测试

python测试开发django-1.开始hello world!

当你想走上测试开发之路,用python开发出一个web页面的时候,需要找一个支持python语言的web框架。django框架有丰富的文档和学习资料,也是非常成...

21430
来自专栏零基础使用Django2.0.1打造在线教育网站

零基础使用Django2.0.1打造在线教育网站(十四):用户密码找回

努力与运动兼备~~~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!

36810

扫码关注云+社区

领取腾讯云代金券