采用groovy编写action,可以无需重新部署程序,方便于调试,节省开发进度。而且,groovy作为Java VM的脚本语言可以与Java程序无缝地整合。 首先,下载struts2的groovy插件:http://cwiki.apache.org/S2PLUGINS/groovy-plugin.html 将其拷入web工程的lib文件夹下,除此以外还需groovy的jar包以及相关的包。主要是groovy, asm 和antlr 包。下图显示工程所有的jar包
第二,采用groovy编写action:LoginAction.groovy package com.hopeteam.struts.action; public class LoginAction { def username; def password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String execute() throws Exception { if(getUsername().equals("fengzhizi") && getPassword().equals("123456")) { return "success"; } else { return "error"; } } } 编写完毕,需要在struts.xml中配置该action。在配制该action之前,需要在struts.xml将框架常量设置为groovyObjectFactory <constant name="struts.objectFactory" value="groovyObjectFactory" /> action的配置同样需要修改: <action name="Login" class="com.hopeteam.struts.action.LoginAction.groovy"> <result name="error">/error.jsp</result> <result name="success">/welcome.jsp</result> </action>
第三,配置完毕后将LoginAction.groovy放入Tomcat 5.5\webapps\Struts2Groovy\WEB-INF\classes\com\hopeteam\struts\action 编写welcome.jsp: <%@ page language="java" contentType="text/html; charset=GBK"%> <%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> <title>success</title> <meta. http-equiv="Content-Type" content="text/html; charset=GBK"> </head> <body> 用户:<s:property value="username" />登陆</br> groovy编写struts2的action测试成功 </body> </html> 最后,我们看一下运行结果。
附件:
|