【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配置,加上刚才添加的代码


相关文章
|
6月前
|
人工智能 Java 测试技术
【556AI】(一)IntelliJ IDEA全流程AI设计开发平台
556AI支持IDEA、PHPSTORM、PYCHARM最新版 AI平台定位是开发大型软件项目,大型软件项目代码AI生成引擎,OA/ERP/MES 百万行代码一次性AI生成 支持axure原型导入预览,集成AI软件设计/AI软件开发/AI软件测试整个流程 支持 若依 JEECG SmartAdmin THINKPHP Django等多种JAVA/PHP/python框架 实现了java php python 的统一增强行调试方式 可以链接多个AI大模型,进行AI生成代码
749 8
|
Java 应用服务中间件 API
Servlet开发流程 (里面有Idea项目添加Tomcat依赖详细教程)
本文详细介绍了Servlet的开发流程,包括在IntelliJ IDEA中添加Tomcat依赖的详细教程。通过上述步骤,开发者可以快速搭建并运行一个基本的Servlet应用,理解并掌握Servlet的开发流程对于Java Web开发至关重要。希望本文能够帮助开发者顺利进行Servlet开发,提高工作效率。
1569 78
|
11月前
|
Java 应用服务中间件 Maven
在IntelliJ IDEA中如何配置使用Maven以创建Tomcat环境
所以,别担心这些工具看起来有些吓人,实际上这些都是为了帮助你更好的完成工作的工具,就像超市里的各种烹饪工具一样,尽管它们看起来可能很复杂,但只要你学会用,它们会为你烹饪出一道道美妙的食物。这就是学习新技能的乐趣,让我们一起享受这个过程,攀登知识的高峰!
738 27
|
11月前
|
Java 应用服务中间件 Apache
在IntelliJ IDEA中使用Maven配置Tomcat环境
此配置方法具有较高的实用性,简单易懂。遵循以上步骤,您将能顺利在IntelliJ IDEA中使用Maven配置Tomcat环境,从而进行Web项目的开发和调试。
1423 18
|
IDE 开发工具
【开发IDE升级】如何对IDEA版本进行升级
本文介绍了如何将 IntelliJ IDEA Ultimate 从 2020.2.2 版本升级到 2022.3.2 版本。主要内容包括准备工作、卸载旧版本和安装新版本的步骤。首先,从官网下载所需版本并备份旧版配置;接着,通过 Uninstall.exe 卸载旧版,保留配置和插件;最后,安装新版并完成激活。详细的操作步骤和截图帮助用户顺利完成升级过程。
16444 1
【开发IDE升级】如何对IDEA版本进行升级
|
开发工具 开发者 git
IntelliJ IDEA 插件推荐:提升开发效率的神器
本文介绍了 IntelliJ IDEA 的多个实用插件,涵盖从提高开发效率到美化界面的各个方面。
1752 1
|
前端开发 Java 开发者
这款免费 IDEA 插件让你开发 Spring 程序更简单
Feign-Helper 是一款支持 Spring 框架的 IDEA 免费插件,提供 URL 快速搜索、Spring Web Controller 路径一键复制及 Feign 与 Controller 接口互相导航等功能,极大提升了开发效率。
2858 1
|
前端开发 JavaScript Java
idea中如何不重启tomcat 即可看到修改内容变化
这篇文章介绍了在IntelliJ IDEA中实现对Java Web应用的热部署(Hot Swap)的多种方法,包括启用自动构建、使用Exploded Artifact、安装JRebel插件、更改静态资源、使用Spring Boot的devtools以及IDEA的HotSwap功能,以便在不重启Tomcat服务器的情况下看到修改内容的变化。
idea中如何不重启tomcat 即可看到修改内容变化
|
人工智能 Java 数据库连接
IDEA开发 常用代码规范插件 常用辅助类插件
IDEA开发 常用代码规范插件 常用辅助类插件
2013 1
|
Java 应用服务中间件 Maven
idea+maven+tomcat+spring 创建一个jsp项目
这篇文章介绍了如何在IntelliJ IDEA中使用Maven和Tomcat创建一个JSP项目,包括配置Maven依赖、设置Tomcat服务器、编写JSP页面、创建控制器和配置文件,以及项目的运行结果。
1122 0
idea+maven+tomcat+spring 创建一个jsp项目
下一篇
开通oss服务