`

直接把JSP文件当做servlet来使用

阅读更多

1>在web.xml中配置servlet大家都比较熟悉,而且用得也比较多。

比如:

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>MyServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>1</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
</servlet>
  
<servlet-mapping>
   <servlet-name>MyServlet</servlet-name>
   <url-pattern>/action/*</url-pattern>
</servlet-mapping>

 

2>除了直接配置servlet,还可以在web.xml中直接配置JSP,把JSP文件当做servlet来使用(JSP实际上就是一个servlet,只是需要由JSP容器生成对应的java代码)

 

配置方法如下(metadata-complete必须为false):

 

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="false">

  <servlet>
    <servlet-name>myjsp</servlet-name>
    <jsp-file>/index.jsp</jsp-file>
    <init-param>
      <param-name>data</param-name>
      <param-value>my configration</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>myjsp</servlet-name>
      <url-pattern>/myjsp</url-pattern>
  </servlet-mapping>

 

3>把JSP当做servlet来使用的目的

1)禁止直接访问JSP文件的时候,可以通过servlet mapping来间接访问

2)可以在web.xml中配置初始化参数,然后在JSP文件中获取

 

可以通过配置filter来禁止直接访问JSP文件:

<filter>
    <filter-name>CSRF</filter-name>
    <filter-class>org.apache.catalina.filters.CsrfPreventionFilter</filter-class>
    <init-param>
      <param-name>entryPoints</param-name>
      <param-value>/html,/html/,/html/list,/index.jsp,/download.jsp</param-value>
    </init-param>
</filter>

<filter-mapping>
    <filter-name>CSRF</filter-name>
    <servlet-name>HTMLManager</servlet-name>
    <servlet-name>jsp</servlet-name>
</filter-mapping>

 

上面的entryPoints参数中指定的/index.jsp和/download.jsp表示,/index.jsp和/download.jsp是可以直接访问的。

分享到:
评论

相关推荐

    把jsp文件注册成servlet

    在这个例子中,`servlet-name`元素定义了Servlet的逻辑名称,`jsp-file`元素指定了JSP文件的路径。`servlet-mapping`部分定义了URL模式,使得当用户访问`/myJspPath`时,服务器会调用`MyJspServlet`。 除了基本的...

    文件上传 JSP + Servlet

    总的来说,这个项目提供了一个基础的文件上传实现,可以帮助开发者理解JSP和Servlet在文件上传中的协作,以及如何使用第三方库如Apache Commons FileUpload处理多部分请求。在实际应用中,还需要考虑安全性问题,...

    jsp+servlet实现大型文件下载

    本教程将深入讲解如何利用JSP和Servlet来实现大型文件的下载功能,这对于构建高效、稳定的Web应用至关重要。 一、Servlet简介 Servlet是Java平台上的一个标准接口,用于扩展服务器的功能。在Web开发中,Servlet通常...

    jsp+servlet实现文件上传下载

    jspSmartUpload是一个用于JSP应用中的文件上传组件,它简化了文件上传过程中的复杂性,并提供了易于使用的API来处理上传的文件。该组件支持多文件上传、文件类型验证、文件大小限制等功能,非常适合于需要频繁处理...

    将JSP代码转为Servlet

    这些工具通常会解析JSP文件,自动提取出所有的Java代码和逻辑,然后生成对应的Servlet类。文件名"将JSP代码转为Servlet"可能就是一个这样的工具,它可以减轻开发者的负担,提高工作效率。 6. 转换的优缺点: - 优点...

    文件上传jsp,servlet编写

    在这个“文件上传jsp,servlet编写”的项目中,开发者使用了这两种技术来实现一个文件上传的功能。下面将详细介绍JSP和Servlet在文件上传中的应用以及相关知识点。 **JSP(JavaServer Pages)**: JSP是一种基于...

    登录和注册的jsp页面+servlet+javaBean

    登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+...

    jsp与servlet 上传文件 javaBean上传文件

    本篇文章将深入探讨如何使用JSP与Servlet进行文件上传,并特别关注如何解决中文文件名乱码的问题。 首先,我们需要理解文件上传的基本流程。当用户在JSP页面上选择文件并提交表单时,JSP会将文件数据封装到HTTP请求...

    servlet jsp javabean 实现的文件上传

    在Java Web开发中,Servlet、JSP和JavaBean是三个核心组件,它们共同协作来构建动态网站应用。这里我们将深入探讨如何使用这三个技术实现文件上传功能。 Servlet是Java编程语言中的一个接口,由Java Servlet API...

    JSP+Servlet实现简易购物车功能

    7. **项目结构**:ShopCart这个文件夹可能包含了JSP文件、Servlet类、配置文件(如web.xml)和其他资源文件,这些文件按照一定的目录结构组织,符合Java EE项目的标准布局。 学习和实践这个项目,开发者可以深入...

    JSP中(jsp+servlet)实现的文件上传

    本教程将详细讲解如何在JSP(Java Server Pages)环境中,结合Servlet技术,实现一个简单的文件上传功能,特别是针对图片格式(如gif和jpg),同时阻止危险文件类型(如exe和bat)的上传。 首先,我们需要理解JSP和...

    jsp+servlet文件上传

    本篇文章将深入讲解如何使用JSP和Servlet实现文件上传。 首先,我们需要了解`JSP`的基本概念。JSP是一种服务器端脚本语言,允许开发者将HTML、CSS、JavaScript与Java代码混合编写,从而在服务器端生成动态网页内容...

    jsp+servlet实现文件上传和下载

    在这个主题中,“jsp+servlet实现文件上传和下载”是核心知识点,我们将深入探讨如何利用这两个组件以及Apache的`commons-fileupload`和`commons-io`库来完成这一任务。 1. **文件上传** 文件上传通常涉及用户通过...

    jsp servlet 上传例子 基于 jspsmartupload

    本教程将详细讲解如何使用 `JSP` 和 `Servlet` 结合 `jspsmartupload` 库来实现文件上传功能。 首先,我们需要了解`jspsmartupload`库。`jspsmartupload` 是一个基于Java的开源项目,专门设计用于在`JSP`页面上处理...

    Head First Servlet & JSP

    作者通过实例和实践项目引导读者一步步掌握Servlet和JSP的使用,使学习过程既有趣又高效。 书中的"注释版"意味着该版本可能包含了作者或读者的个人见解和解释,这些额外的注释可能提供了对某些难点的独特理解,对于...

    基于jsp的文件上传下载

    JSP页面通常不直接处理表单提交,而是通过一个关联的Servlet来接收并处理这些数据。 在Servlet中,我们可以使用Apache Commons FileUpload库来解析多部分请求。该库提供API来提取文件内容并保存到服务器的指定位置...

    大学本科JSP课程的期末作业JSP+Servlet+layui实现的博客系统源码.zip

    下载使用tomcat就可以使用,数据库语句也有,如果要修改数据库配置就在tool下面的工具类修改即可大学本科JSP课程的期末作业JSP+Servlet+layui实现的博客系统源码。教程 下载使用tomcat就可以使用,数据库语句也有,...

    jsp+servlet项目

    【标题】"jsp+servlet项目"涉及的是Java服务器页面(JSP)与Servlet技术的结合应用,这是一种在Web开发中常见的技术组合。JSP和Servlet是Java EE平台上的两个核心组件,它们主要用于构建动态Web应用程序。 【JSP...

    jsp servlet 上传文件

    在Java Web开发中,`JSP (JavaServer Pages)` 和 `Servlet` 是两种常见的技术,它们经常被结合使用来处理动态网页和服务器端业务逻辑。本篇将详细讲解如何使用`JSP`和`Servlet`合作实现文件上传功能,特别是针对图片...

    文件下载,jsp,servlet编写

    - **读取文件**:Servlet使用Java的`FileInputStream`类读取文件内容。 - **设置响应头**:Servlet设置HTTP响应头,包括`Content-Type`(定义文件类型)和`Content-Disposition`(指示浏览器如何处理响应,如设置为...

Global site tag (gtag.js) - Google Analytics