关于Spring mvc 中多视图多文件夹的问题

xwb8716 2014-08-15 03:06:09
在Spring mvc 中 配置视图 是 <!-- 视图解析器的配置 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.JstlView</value>
</property>
<property name="prefix"><value>/WEB-INF/jsp/</value></property>
<property name="suffix"><value>.jsp</value></property>
</bean>
通过其中的 prefix 配置相应的文件夹,在项目中为了方便维护管理往往在jsp文件夹下都会有各个下一级的文件夹。在Controller 中返回jsp页面 通过 ModelAndView 指定jsp文件夹下一级的文件夹目录才能访问。 有没有类似Structs 中那种mapping.findForwad 。在程序中只关系到一个名称 而和文件路径无关的方法解决这个问题?
...全文
318 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这个容易啊,你设置返回值为String, 然后再返回时,写上你需要返回的地址就行 如下列我写的代码:
@RequestMapping("/findTemplate")
	public String  findAgentTemplate(Model springModel,@ModelAttribute("pmoAgent") PmoAgent model,HttpServletRequest request){
		try {
			//获取当前登录用户的AgentId
			String agentId=(this.getSessionKey(request, ApplicationContextKey.KEY_AGENT_ID)).toString();
			String  pmoAgentId = FindAgent.findFrAgent();
			if(!agentId.equals(pmoAgentId)){
				model.setParentId(BigDecimal.valueOf(Long.valueOf(agentId)));
			}else{
				model.setParentId(null);
			}
			Page page = pmoAgentService.findBySecondAgent(model, model.getPageNum(),  model.getNumPerPage());
			springModel.addAttribute("frAgentId",agentId);
			springModel.addAttribute(page);
		} catch (Exception e) {
			e.printStackTrace();
		} 
		return "secondAgentTemplate/SecondAgentTemplate/SecondAgentQuery";
	}
S117 2014-08-15
  • 打赏
  • 举报
回复
约定优于配置 试试这里面关于DefaultRequestToViewNameTranslator的介绍
xwb8716 2014-08-15
  • 打赏
  • 举报
回复
引用 1 楼 shijing266 的回复:
我不知道我的理解对不对: 首先你说的意思是不想在 进入Controller处理结果之后,在去指定返回路径,而是希望直接告诉页面成功或者失败! 其次我不理解的是这句话“在程序中只关系到一个名称 而和文件路径无关的方法“ 然后我说说我的建议: 如果你不想处理结果之后,还指定返回路径(指定某个页面), 你也可以直接在你Controller的方法上面 加上@RequestMapping("/jsp/xxx/xxxx") 然后你设置web.xml里面的 匹配为 /*, 这样你只需设置返回结果就行,它会自动去寻找你 项目下面 jsp/xxx/xxxx.* 的任何文件 我的意思主要就是 一个Controller 执行完后 通过ModelAndView 返回 只能返回到 <property name="prefix"><value>/WEB-INF/jsp/</value></property>这个配置的文件下的jsp文件 但是我要是返回到其他文件夹下呢 又该怎么处理
  • 打赏
  • 举报
回复
我不知道我的理解对不对: 首先你说的意思是不想在 进入Controller处理结果之后,在去指定返回路径,而是希望直接告诉页面成功或者失败! 其次我不理解的是这句话“在程序中只关系到一个名称 而和文件路径无关的方法“ 然后我说说我的建议: 如果你不想处理结果之后,还指定返回路径(指定某个页面), 你也可以直接在你Controller的方法上面 加上@RequestMapping("/jsp/xxx/xxxx") 然后你设置web.xml里面的 匹配为 /*, 这样你只需设置返回结果就行,它会自动去寻找你 项目下面 jsp/xxx/xxxx.* 的任何文件

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧