Servlet配置使用

本文详细介绍了Servlet的配置与使用,包括Servlet的生命周期、调用过程、Web.xml配置、错误排除、中文乱码处理、数据传递以及与JSP的交互。通过实例解析了如何在Eclipse中配置Servlet,并展示了如何与MySQL数据库进行连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、配置servlet
(1).Servlet是sun公司提供的一门用于开发动态web资源的技术。
Sun公司在其API中提供了一个servlet接口,用户若想开发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:
1、编写一个Java类,实现servlet接口。
2、把开发好的Java类部署到web服务器中。
(2).按照一种约定俗成的称呼习惯,通常我们也把实现了servlet接口的java程序,称之为Servlet 。
2.servlet的调用过程
Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后:
①Web服务器首先检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第④步,否则,执行第②步。
②装载并创建该Servlet的一个实例对象。
③调用Servlet实例对象的init()方法。
④创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的 HttpServletResponse对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。
⑤WEB应用程序被停止或重新启动之前,Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的 destroy()方法。
3.servlet的生命周期:
实例化 ------------→ Servlet 容器创建 Servlet 的实例

初始化 ------------→ 调用 init() 方法
在这里插入图片描述

服 务 ------------→ 调用 service() 方法(doGet()或者doPost())

销 毁 ------------→ 调用 destroy() 方法
当类发生关闭的时候,servlet进行重新加载并且把前面的类销
毁。
在这里插入图片描述

不可用------------→ 销毁实例并标记为垃圾收集
4.在Web.xml文件中添加servlet名字,及servlet类,servlet类由包名和项目名字组成,检验是否配置,按住Ctrl键,鼠标点击servlet类名能够跳转到servlet类页面中就成功一步了。而还有一步是servlet-mapping,两者的区别上面的是控制servlet执行哪一个类,下面是请求哪一个路径。
在这里插入图片描述
5.错误排除:配置好servlet后重新执行,可能会重新错误,原因是之前的网页服务没有正常关闭,打开apache-tomcat-9.0.44存放在电脑中的目录,在bin文件夹中找到shutdown.bat文件双击打开指令进行服务关闭。
在这里插入图片描述
(1).servlet配置调试:把web.xml文件中页面显示路径复制,打开浏览器在localhost:8080/2021-04-07/后面添加路径进行访问。
在这里插入图片描述
6.如果添加中文进去,浏览器输出会出现中文乱码,原因是 response流默认没有指定编码格式,所以在输出流上面添加一串中文编码。第一个request(输入)这边添加UTF-8编码格式,第二个response(响应,输出)添加UTF-8编码格式,这时在浏览器那边输出中文就不会出现中文乱码了。
在这里插入图片描述
(1).输入传参:传递数据,如用户名、密码通过字符串拼接,在浏览器中进行拼接,是换行。
在这里插入图片描述
在这里插入图片描述

7.在打印台Servers中把之前的项目服务终止,把新的项目服务添加,鼠标右键找到点击Add and Remove重新部署。
在这里插入图片描述
在这里插入图片描述

8.在index.jsp新建一个form表单,在类那边接收参数,浏览器输出简单的验证表单出来了,在表单输入数据提交,路径/demo中新增数据成功,一般不会在启动页面(index)写代码。
在这里插入图片描述
9.jsp
(1)、在调用控制器的时候要么返回数据,要么返回页面,如果想返回一个页面:在WebContent目录中新建一个login.jsp文件,在类那边写跳转页面,在index.jsp中写跳转连接。使用meta属性,使用http-equiv,refresh(刷新页面),content=0(0代表立刻执行、1代表延迟1秒),url(为login.jsp里的form表单的路径,后面的后缀是类页面的跳转命名)。
(2)、serlet只支持打开默认jsp页面,不像MVC支持打开一个默认路径,如果你在浏览器打开的是项目的根目录,则会自动跳转到登录页面去。
在这里插入图片描述
10、(1).连接数据库,在dao包里创建接口,包名后缀.impl去掉,名字前面加大写i表示impl文件,而名字要以数据库对应且以dao结尾。
在这里插入图片描述
(2).在service包里创建接口,不用去掉包名后缀.impl,名字前面加大写i表示impl文件,而名字不需要以数据库对应且以service结尾。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值