在struts2中的路径问题是根据Action的路径而不是JSP的路径确定的,所以尽量不要使用相对路径,使用相对路径会让路径问题变得很繁琐很麻烦,有的时候一个细微的变动会导致你需要大的改动。
解决方法其实也很简单:即统一使用绝对路径。
在jsp中可以通过request.getContextRoot的方式获得webapp的绝对路径:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %>
以上方式很明确,path字符串获得是webapp的路径,然后basePath获得的是整个项目的根路径(注:已经含有了最后的“/”)
在使用时只需调用basePath即可(以跳转到index为说明):
<a href="<%=basePath %>index.jsp">index.jsp</a>
其中<a></a>代表的是超链接,这样就可以跳转到xxxxx/index了(前提是你的namespace和Action的设置要配置好)。
以上就是Struts2中路径问题的全部内容,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍Python学习笔记之open()函数打开文件路径报错问题,包括了Python学习笔记之open()函数打开文件路径报错问题的使用技巧和注意事项,需要的朋友参考一下 要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标示符,标示符'r'表示读。 注意了,对初学python的同学而言,open()函数着实存在一个不大不小的坑,而且十分不容易发现。 错
本文向大家介绍Struts2学习笔记(1)-入门教程,包括了Struts2学习笔记(1)-入门教程的使用技巧和注意事项,需要的朋友参考一下 什么是Structs2?它就是在Struts1的基础上演化而来的,是一种MVC模式的框架,其实它的功能很简单,就是将View和逻辑处理层分开。本人才疏学浅,以前都是用Spring做项目,由于要毕业,所以需要进行转行(暂且这么说吧),公司都是用的Struct
本文向大家介绍Symfony2学习笔记之系统路由详解,包括了Symfony2学习笔记之系统路由详解的使用技巧和注意事项,需要的朋友参考一下 本文详细讲述了Symfony2的系统路由。分享给大家供大家参考,具体如下: 漂亮的URL绝对是一个严肃的web应用程序必须做到的,这种方式使index.php?article_id=57这类的丑陋URL被隐藏,由更受欢迎的像 /read/intro-to-sy
本文向大家介绍echarts学习笔记之图表自适应问题详解,包括了echarts学习笔记之图表自适应问题详解的使用技巧和注意事项,需要的朋友参考一下 前言 为了直观查看公司服务器各个进程占用的内存动态情况,我使用echarts进行数据可视化,具体的实现过程按下不表。 最后实现的效果如图: 然后问题就来了,因UI采用了Bootstrap响应式框架,所以除了图表之外其他都是响应式。当窗口缩小后,就会发生
今天不讨论MyBatis-Plus好与差,光谈谈MyBatis-Plus的注解使用。 Mybatis-Plus注解 数据库表名根据不同业务区分前缀 例如sys_user,实体类User.java怎么指向关联呢 实体类名称与表名一直,下划线后开头为大写,驼峰式命名 使用mybatis-plus提供的@TableName("sys_user")表名注解
本文向大家介绍MongoDB 学习笔记,包括了MongoDB 学习笔记的使用技巧和注意事项,需要的朋友参考一下 1、配置:mongod --dbpath=D:\MongoDB\data mongo 2、基本的增删查改 find() update()-- 整体更新,局部更新。 修改器: $inc db.person.update({"age":23},{$inc:{"salary":1000}})