【Servlet】超详细开发步骤|在idea上配置Tomcat|网页显示当前系统时间

简介: 【Servlet】超详细开发步骤|在idea上配置Tomcat|网页显示当前系统时间

1、为什么要学习Servlet?


因为单纯的HTML是一个静态页面,在实际开发中会面临很多的非静态资源的显示场景,此时HTML+CSS将无法完成此类需求,因此需要结合起来能够进行逻辑判断的java代码。


Servlet 就是一个可以生成动态页面的技术


Servlet 项目对应的是javaweb项目


1.1、javaweb项目的创建步骤


跟着下面的步骤来创建javaweb项目并正确导入Servlet包:


创建java项目找到图示选项



进入后勾选Web并选中Create web.xml,点击OK



在WEB-INF里创建lib目录,用来存放一些必要的jar包:servlet-api.jar(在Tomcat的lib目录)



2、第一个Servlet 程序


开发步骤:


书写Servlet代码

继承HttpServlet类

获取当前系统时间

将得到的时间放入html页面

配置Servlet 的对外访问路径

通过web.


2.1、编写Servlet类(超详细流程)


编写该类并不是靠名字,而是要实现Servlet 接口,但是该接口中只有service方法需要我们维护,但是还有其他四种方法我们是用不上的,因此直接实现该接口是不合理的。

GenericService类帮我们实现了Servlet 接口,重写了另外四个不需要我们维护的方法,只保留一个service方法需要重写。但是考虑到该方法与浏览器协议无太大关系,因此也不能继承该抽象父类。

实际上,我们要继承HttpServlet类,重写service方法即可

有两个service方法,一定要选择自带http参数的方法



req是request的缩写,是对请求的处理,后续文章会有实战详解

resp是respond的缩写,是用来响应页面的,后续也会有解释

使用日期类获取当前系统时间:Date date=new Date();

浏览器再得到html代码后将其解释执行从而可以搭建页面,因此我们要使用java来把这些代码送到浏览器外部,那么我们使用什么呢?我们选择输出流:

书写html代码:String html = "<html><head meta charset='UTF-8'></head><body>当前系统时间为:" + date + "</body></html>";

PrintWriter pw = resp.getWriter();

通过pw.println(html)将代码送到浏览器外部,交给浏览器解释执行

设置流的编码方式和响应类型:

设置流的编码方式:resp.setCharacterEncoding("UTF-8");

设置响应类型,方便浏览器解析:resp.setContentType("text/html");

关流:pw.flush();

这里不使用pw.close(),这是因为关闭由Tomcat服务器控制,请接着往下看。

全部代码一览:



2.2、配置Servlet 的对外访问路径


2.2.1、在web.xml中配置


请看下图:



一定要在web-app标签内配置访问路径,且一定要有servlet和servlet-mapping标签。

servlet标签:

name标签一般写该类的名称,当然也可以随便写

class标签用来存放权限定名(一般是从包名到类名)

servlet-mapping标签:

name标签必须和servlet标签里的name一致

url-pattern标签里存放对外访问的路径,必须先以/开头


2.2.2、 注解开发


可以使用@WebServlet注解直接在类中配置该类的访问路径

例如:@WebServlet("/time")



ps:可与web.xml中配置的访问路径同时存在,但是路径不能完全一致(谨记)


3、配置Tomcat


按照图示顺序:






ps:将下方光标选中的部分删掉即可,这样是为了方便写访问路径


4、运行效果和乱码解决方案


运行效果:



乱码解决步骤:


找到图中所示选项



添加上15行位置的代码



修改Tomcat配置,加上刚才添加的代码


相关文章
|
4天前
|
Java Maven
Idea配置项目的热启动
Idea配置项目的热启动
31 5
Idea配置项目的热启动
|
30天前
|
开发工具 开发者 git
IntelliJ IDEA 插件推荐:提升开发效率的神器
本文介绍了 IntelliJ IDEA 的多个实用插件,涵盖从提高开发效率到美化界面的各个方面。
84 1
|
30天前
|
前端开发 Java 开发工具
Git使用教程-将idea本地Java等文件配置到gitte上【保姆级教程】
本内容详细介绍了使用Git进行版本控制的全过程,涵盖从本地仓库创建到远程仓库配置,以及最终推送代码至远程仓库的步骤。
38 0
|
2月前
|
Java Spring
【Spring配置】idea编码格式导致注解汉字无法保存
问题一:对于同一个项目,我们在使用idea的过程中,使用汉字注解完后,再打开该项目,汉字变成乱码问题二:本来a项目中,汉字注解调试好了,没有乱码了,但是创建出来的新的项目,写的注解又成乱码了。
|
2月前
|
IDE 开发工具
【开发IDE升级】如何对IDEA版本进行升级
本文介绍了如何将 IntelliJ IDEA Ultimate 从 2020.2.2 版本升级到 2022.3.2 版本。主要内容包括准备工作、卸载旧版本和安装新版本的步骤。首先,从官网下载所需版本并备份旧版配置;接着,通过 Uninstall.exe 卸载旧版,保留配置和插件;最后,安装新版并完成激活。详细的操作步骤和截图帮助用户顺利完成升级过程。
2342 1
【开发IDE升级】如何对IDEA版本进行升级
|
2月前
|
前端开发 Java 开发者
这款免费 IDEA 插件让你开发 Spring 程序更简单
Feign-Helper 是一款支持 Spring 框架的 IDEA 免费插件,提供 URL 快速搜索、Spring Web Controller 路径一键复制及 Feign 与 Controller 接口互相导航等功能,极大提升了开发效率。
|
3月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
471 0
|
4月前
|
数据可视化 关系型数据库 MySQL
【IDEA】配置mysql环境并创建mysql数据库
【IDEA】配置mysql环境并创建mysql数据库
469 0
|
4月前
|
人工智能 Java 数据库连接
IDEA开发 常用代码规范插件 常用辅助类插件
IDEA开发 常用代码规范插件 常用辅助类插件
124 0
|
4月前
|
Oracle IDE Java
IDEA安装教程配置java环境(超详细)
IDEA安装教程配置java环境(超详细)
2024 1