Servlet

一、什么是Servlet

Servlet 是运行在 Web 服务器或应用服务器上的程序,它是一种实现动态页面的技术, 作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层.


🐻🐻🐻使用 Servlet,可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,甚至可以动态创建网页.
Servlet 的优势:
  • 具有可移植性,因为它是用 Java 语言编写的.
  • 性能高,用Servlet处理请求的N个线程,只需要一份Servlet类代码.
  • 便捷, Servlet提供了大量的实用工具,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等.

二、创建一个Servlet项目

Maven 是一个项目管理工具,它包含了一个项目对象模型 ,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中插件目标的逻辑.

Maven的作用

  • 构建工程,
  • 管理jar,
  • 编译代码
  • 自动运行单元测试
  • 打包
  • 生成报表
  • 部署项目
  • 生成web站点

💡 1.打开IDEA,选择 Maven 选项,注意不要选错,我们以前使用选的是 java, 然后点击next.

💡 2.修改一下你要放置的文件路径就行. GroupId 为公司名称,ArtifactId 为项目名称,Version 为开发的版本号.然后点击 next , 此时自动生成的目录下 Java 文件夹一般存放开发代码,resources 一般存放项目资源,test 文件夹下的 Java 文件夹一般存放测试代码. pom.xml 文件是一个项目总的配置文件,这是文件很重要.

💡 3.引入依赖,去maven中央仓库下载 Servlet,地址:https://mvnrepository.com/
注意版本的配套:Java8,Tomcat 8.5 Servlet 3.1, 我自己用的是java8系列,所以下载 Servlet 3.1.在pom.xml文件下增加一个标签,然后粘贴.

💡 4.创建目录,在main文件夹下先创建一个webapp目录,接着在webapp下创建一个WEB-INF的目录,
最后在 WEB-INF下创建一个web.xml的文件,并将下面代码粘贴进去即可.

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
    <display-name>Archetype Created Web Application</display-name>
</web-app>

💡 5.编写代码:在src/main/java目录下创建一个.class文件,继承前面引入的HttpServlet类,有时候IDE没有自动导入包,点击右上角的Maven刷新功能,再次尝试.

@WebServlet("/hello")
public class Test extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("hello servlet");
        resp.getWriter().write("hello servlet");
    }
}

💡6.打包,默认是jar包,可以在pom.xml手动设置为war包,还可以更改打包后的文件名.设置完成后点击右面Maven里面的package进行一键式打包,此时目录就会自动生成target文件夹.

💡7.部署,把打包好的war包复制到Tomcat安装包下的webapps目录下,启动Tomcat.

💡 8.验证程序,在浏览器输入IP:端口号/war包名/注解


2.Tomcat插件

Tomcat是一款免费的很好用的web服务器,注意,不是汤姆猫哦.
在IDEA中使用Tomcat插件可省去6,7两步.


安装完成之后,点击运行按钮左边的 Edit Configurations...

最后运行代码, 保存自动生成的URL 地址,在浏览器中输入: URL地址/注解.

三、运行时常见错误

🌐404 : 表示访问的资源不存在,可能是URL路径不对,少写了路径,少写了注解,或者是路径和注解不匹配.
🌐405:HTTP请求的方法没有实现,或者是没有注释 super.doPost(req, resp) ;
🌐500:服务器挂了,可能是Servlet代码中抛出了异常.
🌐返回空白页面:可能是忘记写 resp.getWriter().write 方法了.
🌐无法访问此网站:可能是因为Tomcat没有启动成功,检查Tomcat 是否已经打开过了.

##
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

web图解

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值