struts2 convention-plugin
导入这个插件,该插件的作用是替换掉struts.xml 原则是没有配置,全是约定
基本步骤
1.新建HomeAction,里面有个execute方法return success,请求home.action就这样就能执行这个
约定:home就是以前配置中的action的name属性值,没有方法名就默认execute
HomeAction→home.action
StudentHomeAction→student-home.action
包名,请求的action必须放在action,actions,strut,struts中
com.kaishengit.action.HomeAction → /home.action
com.kaishengit.action.product.HomeAction → /product/home.action
com.kaishengit.action.product.type.HomeAction → /product/type/home.action
2.添加jsp文件.文件名定义为home-success.jsp,就这样就能到达这个jsp 该文件必须在一个content文件夹内,但是可以修改这个 文件夹
<constant name="struts.convention.result.path" value="/WEB-INF/views/"/>
/home.action success →/WEB-INF/content/home-success.jsp
/home.action input → /WEB-INF/content/home-input.jsp
/product/home.action success → /WEB-INF/content/product/home-success.jsp
3.对于请求方法和跳转方式要靠注解来实现
在Homeaction中定义另一种方法
@Action("main")加上注解,添加main-success.jsp请求locallhost/main.action
@Action("main")
public String main() {
return SUCCESS;
}
跳转
对于params,奇数代表键,偶数个代表值
@Action(value="login",results={
@Result(name="success",type="redirectAction",params={"namespace","/admin","actionName","main"}),
@Result(name="input",type="redirectAction",params={"namespace","/admin","actionName","home","error","1001"})
})
public String login() {
Admin currAdmin = adminService.login(admin);
if(currAdmin == null) {
return INPUT;
} else {
putSession("curr_Admin", currAdmin);
return SUCCESS;
}
}
4.对于主配置文件,struts.xml的常量设置,拦截器,global-result还是要自己配置
但是对于过滤器什么的,convention是存在默认包的.所以要修改才行
<constant name="struts.convention.default.parent.package" value="basePackage"/>
5.命名空间
com.kaishengit.action.product.HomeAction → /product/home.action
可以com.kaishengit.action.HomeAction→ /product/home.action
要在HomeAction上注解@namespace("product")
这时候请求到达的jsp都要在/content/product/xxxx
struts2 convention-plugin的更多相关文章
- Struts2 Convention Plugin ( struts2 零配置 )
Struts2 Convention Plugin ( struts2 零配置 ) convention-plugin 可以用来实现 struts2 的零配置.零配置的意思并不是说没有配置,而是通过约 ...
- struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法
环境: struts 2.3.16.3 + Convention Plugin 2.3.16.3 实现零配置 现象:以文件夹方式部署在weblogic(10.3.3)上时一切正常,换成war包部署,运 ...
- Struts2 - Conversion Plugin
转载:http://www.cnblogs.com/ikuman/archive/2013/11/04/3403073.html 1.struts2自2.1以后推荐使用Convention Plugi ...
- struts2 convention插件
1.struts2自2.1以后推荐使用Convention Plugin支持struts零配置支持(引入jar:struts2-convention-plugin-2.x.x.jar)①convent ...
- Struts2 Convention插件的使用(4)使用@Action注解返回json数据
package com.hyy.action; import java.util.HashMap; import java.util.Map; import org.apache.struts2.co ...
- Struts2 Convention插件的使用(3)方法前的@Action注解
package com.hyy.action; import org.apache.struts2.convention.annotation.Action; import com.opensymph ...
- ssi整合报错org.apache.struts2.convention.ConventionsServiceImpl.determineResultPath(ConventionsServiceImpl.java:100)
java.lang.RuntimeException: Invalid action class configuration that references an unknown class name ...
- struts2 Convention插件零配置,使用注解开发
从struts21开始,struts2不再推荐使用codebehind作为零配置插件,而是改用Convention插件来支持零配置.与以前相比较,Convention插件更彻底. 使用Conventi ...
- Struts2 convention插件试用+ Spring+Hibernate SSH整合
第一步,引入struts2-convention-plugin-2.2.1.jar 然后,改动配置文件. 我是在struts.properties文件里改动的: struts.objectFactor ...
- Struts2 Convention插件的使用
转自:http://chenjumin.iteye.com/blog/668389 1.常量说明 struts.convention.result.path="/WEB-INF/conten ...
随机推荐
- sonix uvc驱动的加入 RT5350支持H264
依据sonix提供的驱动,须要在内核下进行配置,以加入到内核或与模块的方式进行编译: 1.makefile中加入驱动的文件夹,尽量保持和原有的一致, obj-$(CONFIG_USB_SN9C102) ...
- HTTPS 加密算法原理机制解析
当你在浏览器的地址栏上输入https开头的网址后,浏览器和服务器之间会在接下来的几百毫秒内进行大量的通信.InfoQ的这篇文章对此有非常详细的描述.这些复杂的步骤的第一步,就是浏览器与服务器之间协商一 ...
- 仿36氪(iOS版附源代码)
前言: 这是我2016年3月开始写的,利用课余时间全心投入的项目,本以为是凭着轻松愉悦的方式来学习的,中途遇到bug解决bug的时候,每天晚上几乎都是写到寝室关灯,还有一次使用Github不当写了五天 ...
- 小猪猪C++笔记基础篇(五)表达式、语句
小猪猪C++笔记基础篇(五) 关键词:表达式.语句 本章的内容比较简单,基本上没有什么理解上的困难,都是知识上的问题.先开始想要不要写呢,本来是不准备写的,但是既然读了书就要做笔记,还是写一写,毕竟还 ...
- C++类包含问题(重复包含和相互包含)
一.重复包含头文件 头文件重复包含,可能会导致的错误包括:变量重定义,类型重定义及其他一些莫名其妙的错误.C++提供两种解决方案,分别是#ifndef和#pragma once #ifndef _SO ...
- BZOJ 1257 余数之和sum(分块优化)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=46954 题意:f(n, k)=k mod 1 + k mod 2 ...
- HDU 2087 剪花布条(模式串在主串中出现的次数主串中子串不可重叠)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2087 题意:求模式串在主串中出现的次数,与模式串匹配的子串之间不可重叠. 思路:用kmp算法解决,在匹 ...
- Hibernate学习之面试问题汇总
1. Hibernate 的检索方式有哪些 ? ① 导航对象图检索 ② OID检索 ③ HQL检索 ④ QBC检索 ⑤ 本地SQL检索 2. 在 Hibernate 中 Java 对象的状态有哪些 ? ...
- 关于php支持的协议与封装协议
<?php /* * php://stdin 标准输入流 * php://stdout 标准输入流 * php://stderr 标准错误流 * php://output 只写的数据流 * ph ...
- 关于LZO和LZOP
LZO 是一个适合实时解压.压缩的压缩库 LZOP 基于LZO库的压缩解压工具 PS:有了压缩解压库LZO,还不能直接操作文件压缩解压,需要LZOP 下载的话直接google吧~~~