热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

struts1了解和WEBINF受保护目录下jsp的访问

struts1了解1.建好工程后,WEB-INFlib加入如下包:commons-beanutils.jar,commons-collections-2.1.1.jar,commo

struts1了解

 

1.建好工程后,WEB-INF/lib加入如下包:commons-beanutils.jar,commons-collections-2.1.1.jar,commons-digester.jar,commons-fileupload.jar,commons-logging.jar,commons-validator.jar,jakarta-oro.jar,struts.jar
2.WEB-INF下加下如下文件:struts-bean.tld,struts-html.tld,struts-logic.tld,struts-nested.tld,struts-tiles.tld,struts-config.xml(此文件很关键:主要配置此文件)--tld文件在struts.jar/META-INF/tlds包内有
3.修改web.xml:---
action
  org.apache.struts.action.ActionServlet
config
    /WEB-INF/struts-config.xml
action
   *.do

 

4.写自已的MyAction要继承Action
5.修改struts-config.xml配置文件--普通XML文件.在第二行增加如下描述:
.
6.然后增加标签---根据MyAction类配置struts-config.xml
7.最好在IE中运行,可能在ECLIPSE自带的浏览器中运行提示404错误.
8.第一次请求时MyAction会实例.后面再次请求就不会实例(即服务不重启情况下就实例一次)

9.jsp页面使用STRUTS1标签--如:<%&#64; taglib prefix&#61;"logic" uri&#61;"http://struts.apache.org/tags-logic" %>

 

10.STRUTS1资源国际化(在SRC目录下):默认资源文件:MessageResources.properties,中文:MessageResources_zh_CN.properties,英文:MessageResources_en_US.properties.界面来显示.
11.validator-rules.xml需要放到WEB-INF目录下,自定义validation.xml文件来校验JSP表单

12.出现错误:javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection
在web.xml的SERVLET中加上0
13.出现错误:Document root element "struts-config", must match DOCTYPE root "struts".
struts-config.xml文件中的

 

14.logic:iterator标签的嵌套举例
                          --addressList是user对象属性(是集合),address是集合的元素.
jspFOREACH标签:--user.messages是集合,message是集合元素

15.界面显示错误,注意要在ACTION中saveErrors(request, messages);
16.struts-config.xml配置文件中可以配置拦截异常(全局和ACTION局部).但好定义一个ACTION的基类(实现异常处理),其它ACTION类都要继承它.出错页面中可以通过pageContext对象得到请求路径/状态码/异常等

 


WEB-INF受保护目录下jsp之间的互相访问

我们说WEB-INF目录下有 *.xml classes lib 等目录和文件&#xff0c;它们一般都是不让直接访问的。

 

说明这个目录是安全的&#xff0c;我们回想为什么不把jsp、html等页面文件放进去呢&#xff1f;

 

这样会不会安全一些呢&#xff1f;大家猜的不错&#xff0c;这样是安全了&#xff08;使用过滤器也可以实现该功能&#xff09;&#xff0c;

 

有一个路径问题需要解决&#xff0c;使用页面入口问题&#xff0c;如果页面文件放在WEB-INF目录下&#xff0c;用户访问

 

WEB-INF目录下页面文件会报找不到页面&#xff0c;用户该怎么才能访问到网站页面呢&#xff1f;

 

如果liandong.jsp放在WEB-INF/jsp目录下&#xff0c;Web Context-root为&#xff1a;liandong那么

 

1.我们可以在WebRoot下新建index.jsp&#xff0c;其中的代码为&#xff1a;

 

2.我们可以在struts-config.xml配置代码&#xff1a;

    type&#61;"org.springframework.web.struts.DelegatingActionProxy">
     
  

 

action 中代码为&#xff1a;

&#64;Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  // TODO Auto-generated method stub
  // method 2
  return mapping.findForward("liandong");
 }

index.jsp代码为&#xff1a;link-->liandong

 

3.我们可以在action 中写代码&#xff1a;

&#64;Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  // TODO Auto-generated method stub
  System.out.println("bbb");
  RequestDispatcher rd &#61; request.getRequestDispatcher("WEB-INF/jsp/liandong.jsp");

  rd.forward(request,response);

  return null;
 }

index.jsp代码为&#xff1a;link-->liandong

struts-config.xml配置代码&#xff1a;

    type&#61;"org.springframework.web.struts.DelegatingActionProxy">
     
  

4.action 中

&#64;Override
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  // TODO Auto-generated method stub
  System.out.println("bbb");

  return new ActionForward("/WEB-INF/jsp/liandong.jsp");
 }

index.jsp代码为&#xff1a;link-->liandong

struts-config.xml配置代码&#xff1a;

    type&#61;"org.springframework.web.struts.DelegatingActionProxy">
     
  

 

还有个问题就是&#xff0c;层叠样式文件、js脚本文件、图片文件的路径

1.页面访问图片

background-image: url(&#39;/liandong/images/bg.bmp&#39;)

2.页面访问层叠样式文件

3.页面访问js脚本文件


 

 

 


推荐阅读
  • 本文将详细介绍如何在SSM框架中无缝集成ShardingSphere 4.10,以实现高效的数据分片和读写分离。通过实例演示和代码解析,帮助开发者快速掌握这一复杂但实用的技术。文章从基础概念入手,逐步深入到具体配置和应用实践,旨在为读者提供一个全面、易懂的整合指南。 ... [详细]
  • 深入解析Tomcat:开发者的实用指南
    深入解析Tomcat:开发者的实用指南 ... [详细]
  • JVM参数设置与命令行工具详解
    JVM参数配置与命令行工具的深入解析旨在优化系统性能,通过合理设置JVM参数,确保在高吞吐量的前提下,有效减少垃圾回收(GC)的频率,进而降低系统停顿时间,提升服务的稳定性和响应速度。此外,本文还将详细介绍常用的JVM命令行工具,帮助开发者更好地监控和调优JVM运行状态。 ... [详细]
  • 深入解析:RKHunter与AIDE在入侵检测中的应用与优势
    本文深入探讨了RKHunter与AIDE在入侵检测领域的应用及其独特优势。通过对比分析,详细阐述了这两种工具在系统完整性验证、恶意软件检测及日志文件监控等方面的技术特点和实际效果,为安全管理人员提供了有效的防护策略建议。 ... [详细]
  • 提升工作效率:掌握这些技巧,IDEA 使用效率翻倍 | IDEA 高效操作指南
    提升工作效率:掌握这些技巧,IDEA 使用效率翻倍 | IDEA 高效操作指南 ... [详细]
  • Spring框架下发送嵌入图片邮件时遇到的技术挑战与解决方案
    在Spring框架中发送嵌入图片的HTML格式邮件时,常遇到技术挑战。一种有效的解决方案是在邮件内容中直接使用``标签来引用图片。此外,还可以通过MimeMessageHelper类的addInline方法将图片作为内联资源添加到邮件中,确保图片能够正确显示。这种方法不仅提高了邮件的可读性,还增强了用户体验。 ... [详细]
  • 在Linux系统中Nginx环境下SSL证书的安装步骤与WordPress CDN的高级配置指南
    在Linux系统中,Nginx环境下安装SSL证书的具体步骤及WordPress CDN的高级配置指南。首先,安装SSL证书需要准备两个关键配置文件,并建议在操作前备份相关服务器配置文件,以确保数据安全。随后,本文将详细介绍如何在Nginx中正确配置SSL证书,以及如何优化WordPress的CDN设置,提升网站性能和安全性。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • 基于Node.js的高性能实时消息推送系统通过集成Socket.IO和Express框架,实现了高效的高并发消息转发功能。该系统能够支持大量用户同时在线,并确保消息的实时性和可靠性,适用于需要即时通信的应用场景。 ... [详细]
  • 如何在Windows 7旗舰版中高效打开CHM帮助文件
    如何在Windows 7旗舰版中高效打开CHM帮助文件 ... [详细]
  • 本文详细探讨了Java集合框架的使用方法及其性能特点。首先,通过关系图展示了集合接口之间的层次结构,如`Collection`接口作为对象集合的基础,其下分为`List`、`Set`和`Queue`等子接口。其中,`List`接口支持按插入顺序保存元素且允许重复,而`Set`接口则确保元素唯一性。此外,文章还深入分析了不同集合类在实际应用中的性能表现,为开发者选择合适的集合类型提供了参考依据。 ... [详细]
  • 在《PHP应用性能优化实战指南:从理论到实践的全面解析》一文中,作者分享了一次实际的PHP应用优化经验。文章回顾了先前进行的一次优化项目,指出即使系统运行时间较长后出现的各种问题和性能瓶颈,通过采用一些通用的优化策略仍然能够有效解决。文中不仅详细阐述了优化的具体步骤和方法,还结合实例分析了优化前后的性能对比,为读者提供了宝贵的参考和借鉴。 ... [详细]
  • 本项目在Java Maven框架下,利用POI库实现了Excel数据的高效导入与导出功能。通过优化数据处理流程,提升了数据操作的性能和稳定性。项目已发布至GitHub,当前最新版本为0.0.5。该项目不仅适用于小型应用,也可扩展用于大型企业级系统,提供了灵活的数据管理解决方案。GitHub地址:https://github.com/83945105/holygrail,Maven坐标:`com.github.83945105:holygrail:0.0.5`。 ... [详细]
  • SQLmap自动化注入工具命令详解(第28-29天 实战演练)
    SQL注入工具如SQLMap等在网络安全测试中广泛应用。SQLMap是一款开源的自动化SQL注入工具,支持12种不同的数据库,具体支持的数据库类型可在其插件目录中查看。作为当前最强大的注入工具之一,SQLMap在实际应用中具有极高的效率和准确性。 ... [详细]
  • RancherOS 是由 Rancher Labs 开发的一款专为 Docker 设计的轻量级 Linux 发行版,提供了一个全面的 Docker 运行环境。其引导镜像仅 20MB,非常适合在资源受限的环境中部署。本文将详细介绍如何在 ESXi 虚拟化平台上安装和配置 RancherOS,帮助用户快速搭建高效、稳定的容器化应用环境。 ... [详细]
author-avatar
透明的眼泪2502913707
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有