Java进阶:Struts多模块的技巧

 更新时间:2006年12月23日 00:00:00   作者:  
文章来源:互联网

在使用struts多模块的,找到一些小技巧和经验,与大家分享一下。

  关于多module的配置就不说了,只需要用不同的config,
struts-config.xml作为默认module, struts-config-module.xml作为/module的配置

  CSDN上有不少相关的说明。

  struts中的module,实际上就类似于平日里开发web程序中的子目录
  如


   /- root
   /music
   /module
   /...



  例如上面的/music作为模块名
  那么struts-config-music中的所有path默认即/music/xxx.do

  一些教程中说要把jsp页面放入/web-inf中,这是个很好的方法,
  一开始我也这么做,可惜,struts的action标签不支持contextRelative,只有forward支持
  所以,如果要使用/xxx.do直接redirect或者forward到某个页面是行不通的。
  因为他们的地址相对于/music/web-inf/xxx.jsp 这样就找不到了。

  我的建议是,root下面的目录要和module一致。
  例如


    /
   /moduleA
    /moduleB


  虽然安全性有些降低,但使用起来非常方便。

  一般的,要写一个link,可以通过<html:link>来写


  <html:link action="/module/action" >



  他的好处是内置的支持module,不需要自己写.do,这就可以使得你的.do
任意的修改为别的而不影响程序运行。例如,.jspa,假装一下webwork

  默认的<html:link>是相对module的。例如进入了/module/actionA指向的页面
在这个页面中,所有的link都被转换为相对于/module 如<html:link action="/actionB" >,实际上是/module/actionB

  那么,如果要执行默认module的action怎么办?嘿嘿,其实很简单。我开始的时候绞尽脑汁,用了switchAction来解决/module/switch?prefix=&page=/xxx.do&.... 多麻烦

  实际上,一个传统的办法可以有效解决。即<html:link action="../action" >
  可以回到上一层的module中。我开始可真没想到。

  link标签有page,href,action三种不同的链接方法。
  其中,action默认的指向某个path,page指向一个jsp页面,也是相对于module的href可以写外部url.

相关文章

  • java 线程池如何执行策略又拒绝哪些策略

    java 线程池如何执行策略又拒绝哪些策略

    这篇文章主要介绍了java 线程池如何执行策略又拒绝哪些策略,文章通过线程池的执行方法 execute() 展开全篇内容,需要的小伙伴可以参考一下
    2022-05-05
  • 深入了解Java File对象的使用

    深入了解Java File对象的使用

    这篇文章主要为大家详细介绍了Java中File对象的使用的相关资料,文中的示例代码讲解详细,对我们学习Java有一定的帮助,需要的可以参考一下
    2022-11-11
  • java如何读取某个文件夹中的全部文件(包括子文件夹)

    java如何读取某个文件夹中的全部文件(包括子文件夹)

    这篇文章主要介绍了java如何读取某个文件夹中的全部文件(包括子文件夹),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 使用Java和SpringBoot实现服务器发送事件(Server-Sent Events)

    使用Java和SpringBoot实现服务器发送事件(Server-Sent Events)

    使用Java开发web应用,大多数时候我们提供的接口返回数据都是一次性完整返回,有些时候,我们也需要提供流式接口持续写出数据,以下提供一种简单的方式,本文给大家介绍了如何在Java web中实现服务器发送事件,需要的朋友可以参考下
    2024-02-02
  • 一文搞懂Java中的序列化与反序列化

    一文搞懂Java中的序列化与反序列化

    序列化是将对象转换成二进制字节流的过程;反序列化是从二进制字节流中恢复对象的过程。文中降通过示例详解二者的使用与区别,需要的可以参考一下
    2022-08-08
  • 如何使用Spring Boot ApplicationRunner解析命令行中的参数

    如何使用Spring Boot ApplicationRunner解析命令行中的参数

    这篇文章主要介绍了使用Spring Boot ApplicationRunner解析命令行中的参数,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-12-12
  • 详解SpringBoot AOP 拦截器(Aspect注解方式)

    详解SpringBoot AOP 拦截器(Aspect注解方式)

    这篇文章主要介绍了详解SpringBoot AOP 拦截器 Aspect,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • BeanUtils.copyProperties复制不生效的解决

    BeanUtils.copyProperties复制不生效的解决

    这篇文章主要介绍了BeanUtils.copyProperties复制不生效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • Spring中@Autowired注解在不同方法的写法示例

    Spring中@Autowired注解在不同方法的写法示例

    这篇文章主要为大家介绍了Spring中@Autowired注解在不同方法的写法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • Java零基础讲解异常

    Java零基础讲解异常

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等
    2022-04-04

最新评论