struts2怎么配置使用注解
㈠ Struts2使用注解报错:There is no Action mapped for namespace / and action name ee.
检查下你的struts.xml包的配置(<package name="am" namespace="" extends="struts-default">)
再看你的action是否配置为a.action所对应的包<action name="admins-*" class="com.am.action.AdminsAction" method="{1}">,name为a.action,class为action所对应的action文件,result与action中的返回值是否一样。
拓展资料:
Struts2基类:
标准返回值:
ActionSupport基类中定义了五个标准的返回值 ,当然我们可以自己随意定义返回的名字
String SUCCESS = "success"; //默认是 SUCCESS 类型
String NONE = "none";
String ERROR = "error";
String INPUT = "input";
String LOGIN = "login";
Struts2方法
ActionSupport基类定义了了一些方法,程序员自己写的action如果继承了ActionSupport基类,就可以应用这些方法,很方便解决一些问题。
一些比较常用的方法:
getText(String aTextName);//国际化用到
...//getText(String aTextName)的重载方法
addActionMessage(String aMessage);
addFieldError(String fieldName, String errorMessage);
//校验失败后返回给客户端的信息,struts2 标签<s:fielderror />可以取得
addActionError(String anErrorMessage);
㈡ Struts2 注解问题
@result 注解相当于配置文件里的,<result>
<action name="login" class="...">
<!-- Chain to another namespace -->
<result type="chain">
<param name="actionName">dashboard</param>
<param name="namespace">/secure</param>
</result>
</action> 1) Result组件是Struts2中用于输出的组件,实际上就是Java代码。name就是<action >的name属性,针对你的问题1),name="home" 有个<action name="home"> ,2 type="chain" --chain 转发到 home action。
㈢ struts2的@AllowedMethods注解是怎么用的
我是这么使用的,使用注解的方式 没有在Struts.xml进行action的配置,jar包换回低版本之后,讲道理是不会出现这种情况的
@Action(value="bookAction",results={@Result(name="success",location="/success.jsp")})
@AllowedMethods(value={("add"),("update"),("delete")})
public class BookAction extends BaseAction<Book> {
@Override
public String execute() throws Exception {
System.out.println(model);
bookService.save(model);
return "success";
}
public String add(){
return "success";
}
public String update(){
return "success";
}
public String delete(){
return "success";
}
㈣ struts2的Action是怎么让注解@Controller管理真难理解注解,网上也没说清楚。
项目在启动的时候会先去读取配置文件,因为你在配置文件里已经声明了启用注解
而且也指定了哪些action接受注解扫描,所以程序就会去你指定了的action下找带有@Controller的类,然后读取并纳入管理范围。
注解说白了只是一个标记,就像以前的xml配置文件一样,只是换个表现的方式而已
㈤ struts2.xml和注解可以在一个项目中同时用吗
struts2里xml配置和注解是可以同时用的。
但是我注意到你说的是struts2.xml,这个文件名错了,应该是struts.xml。
另外,如果xml配置和注解配置冲突时,以注解配置优先!
最后要说的是,都用注解未必是件好事。例如在代码维护时就非常不方便,比如你想通过页面上的url来定位对应的action类,如果是配置的注解那么你只能进行整个项目的搜索才能找到action。
㈥ struts2使用注解怎么判断action执行那个方法
在你注解的Action里直接写action的名字_*,如myaction_* 你在jsp页面跳转的时候就可以写myaction_login就会执行login的方法了,annotation例子如下:
@ParentPackage("struts-default")
@Namespace(value="/")
@Action(value="user_*")
@Results({@Result(name="success",location="../../login_session.jsp"),@Result(name="error",location="../../error_session.jsp")})
㈦ struts2注解怎么用拦截器
技术架构由spring2+hibernate3+struts2+freemarker搭建。struts2的action视图转发工作,本人觉得用注解直接在代码上配置很方便,想省去了配置struts.xml操作。
但就是由于自己懒惰,在开发过程中遇到了一些麻烦,因为对struts2注解的不熟悉,不知道怎样做拦截器的注解,后来经过在网上查资料和自己不断的搞测试,终于把问题搞定了。
㈧ ssh框架 struts2怎么使用注解
快捷键 Ctrl+/
㈨ 运用Struts2注解方式实现一个Action有多个方法
可以在action中写多个你需要的方法..然后在struts.xml中为这个action类配置多个<action>你可以给这些<action>起不同名字,然后用method属性制定要执行哪个方法...例如:<action name="forwardLogin" method="forward" class="com.sambow.struts2.LoginAction"><result>/login.jsp</result></action><action name="login" class="com.sambow.struts2.LoginAction"><result name="input">/Login.jsp</result><result>/welcome.jsp</result></action>例如上面的配置就是为LoginAction这个action类配置了2个<action>而起了不同的名字其中第一个指明了method,用户请求forwardLogin时就会调用LoginAction中的forward()方法第二个没有明了method,用户请求login时就会调用LoginAction中默认的execute()方法