Servlet简介和环境设置

简介: Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。总而言之,Servlet 是用于处理 Web 请求和响应的标准 Java 技术,是 Web 应用程序开发不可或缺的组成部分。

Servlet 简介

Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。

使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。

总而言之,Servlet 是用于处理 Web 请求和响应的标准 Java 技术,是 Web 应用程序开发不可或缺的组成部分。

Servlet 环境设置

导入jar包

File-> Project Structure-> libraries 选择“+”,选择java-> 找到tomcat路径下的lib文件夹里选择servlet-api 与 jsp-api;

web.xml文件配置

在 WEB-INF 目录下创建 web.xml 文件;

<servlet>
  <!-- Servlet别名 自定义-->
  <servlet-name>TestServlet</servlet-name>
  <!--servlet的类全名-->
  <servlet-class>ccc.com.servlet.testServlet</servlet-class>
</servlet>
<servlet-mapping>
  <!-- 将Servlet和URL绑定 -->
  <!--给Servlet提供(映射)一个可供客户端访问的URI-->
  <servlet-name>TestServlet</servlet-name>
  <!--必须和servlet中的name相同-->
  <url-pattern>/test</url-pattern>
  <!-- servlet的映射路径(访问serclet的名称) -->
</servlet-mapping>

在src文件下新建包 ccc.com.servlet,在里面新建一个类 testServlet;

testServlet类里继承HttpServlet,代码如下:

public class testServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) {
        System.out.println(request.getParameter("id"));
    }
}

在index.jsp里面写入以下代码注意name属性要对应;

<form action="/test" method="get">
    <input type="text" name="id">
    <input type="submit" value="提交">
  </form>

然后我们启动服务器进入浏览器页面

找到Run-> Edit Configurations ->右边找到Deployment

把他改成/


重新启动服务器然后输入框里随便输入字符串点击提交,就可以发现已经在控制台打印出来了;

要设置 servlet 返回数据,可以调用 HttpServletResponse 对象的方法,例如:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // 设置响应内容类型
    response.setContentType("text/html;charset=UTF-8");
    // 获取输出流对象
    PrintWriter out = response.getWriter();
    try {
        // 将响应信息输出到客户端浏览器
        out.println("<html>");
        out.println("<head>");
        out.println("<title>成功</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>成功</h1>");
        out.println("</body>");
        out.println("</html>");
    } finally {
        // 关闭输出流对象
        out.close();
    }
}

结果如下:

@WebServlet注解配置

这种方式的话比较简单,只需要添加一个@WebServlet;

@WebServlet(name = "TestServlet",urlPatterns = "/test")
public class testServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
        System.out.println(request.getParameter("id"));
    }
}

web.xml文件的方式和@WebServlet区别

相比于 web.xml 文件的方式,在使用 @WebServlet 注解时,不再需要手动编写 XML 文件来描述 Servlet 的配置信息,而是通过直接在 Servlet 对应的类上添加注解来完成。这样做的好处是:

  1. 更加方便:不用像web.xml那样繁琐地编写 XML 文件;
  2. 更加简洁:去除了 XML 中大量的模板式代码和冗余的信息;
  3. 更加高效:在应用启动时只需扫描注解,而不必解析整个 XML 文件;
  4. 更加灵活:注解更容易被理解和调整。

虽然使用 @WebServlet 注解能够带来很多好处,但也有局限性,不能用于配置其它组件,并且无法适应更复杂的场景。在实际开发中,要根据需要来选择合适的方式来进行配置。


目录
相关文章
|
6月前
|
XML 安全 Java
Servlet 教程 之 Servlet 简介 3
Servlet是运行在Web服务器上的Java程序,用于处理HTTP请求和响应,与数据库或应用交互。相比CGI,Servlet性能更优,平台无关,并受服务器安全管理器保护。它们主要任务包括读取客户端数据、处理信息、生成结果及发送响应。Servlet利用javax.servlet和javax.servlet.http包构建,遵循Java Servlet 2.5和JSP 2.1规范,可被编译成Java类运行。
43 1
|
5月前
|
Java 应用服务中间件
Servlet简介&快速入门
Servlet简介&快速入门
|
6月前
|
JSON 网络协议 前端开发
简介Servlet2
简介Servlet
45 1
|
6月前
|
Java 应用服务中间件 API
简介Servlet1
简介Servlet
37 0
|
6月前
|
Unix 应用服务中间件 Linux
Servlet 教程 之 Servlet 环境设置 2
该教程介绍了如何设置Servlet环境,推荐使用Apache Tomcat作为Web应用服务器。从Apache官网下载Tomcat,解压并设置CATALINA_HOME环境变量。在Windows上通过`startup.bat`启动,在Unix上使用`startup.sh`。访问`http://localhost:8080/`可检查Tomcat是否正常运行。使用`shutdown.bat`或`shutdown.sh`停止服务。更多配置信息可参考Tomcat文档或官网。
52 6
|
6月前
|
Java Unix 开发工具
Servlet 教程 之 Servlet 环境设置 1
Servlet开发环境设置涉及Java SDK的下载与配置,包括设置PATH和JAVA_HOME环境变量。从Oracle官网获取Java SDK后,需根据系统类型(如Windows或Unix)正确指定路径。在Windows中,可修改系统变量;在Unix上,更新.cshrc文件。确保IDE如Eclipse能识别Java路径。参考链接提供Eclipse的特定配置指南。
56 5
|
6月前
|
Unix Java 编译器
Servlet 教程 之 Servlet 环境设置 3
在Windows和Unix上配置Servlet环境涉及设置CLASSPATH。在Windows的`autoexec.bat`或&quot;环境变量&quot;中添加CATALINA路径和`servlet-api.jar`。在Unix的`.cshrc`文件中设置相同环境变量。别忘了将开发目录也添加到CLASSPATH。例如:`C:\ServletDevel`(Windows)或`/user/ServletDevel`(UNIX)。
43 5
|
6月前
|
移动开发 JavaScript 前端开发
HTML ,XHTML,HTML5简介,js,JSP与Servlet的关系理解
HTML ,XHTML,HTML5简介,js,JSP与Servlet的关系理解
87 5
|
6月前
|
Java 应用服务中间件 容器
Servlet简介、执行流程及生命周期
Servlet简介、执行流程及生命周期
68 1
|
小程序 Java API
04JavaWeb基础 - Servlet简介
04JavaWeb基础 - Servlet简介
34 0