Work hard
[原创]使用Groovy编写Struts2的action
上一篇 /
下一篇 2008-05-11 23:56:46
/ 个人分类:Web Framework
查看( 7 ) /
评论( 0 )
海岸线网络聚合/o^,u4Pr&wo9U采用groovy编写action,可以无需重新部署程序,方便于调试,节省开发进度。而且,groovy作为Java VM的脚本语言可以与Java程序无缝地整合。 海岸线网络聚合!B"rgSo:^S
首先,下载struts2的groovy插件:http://cwiki.apache.org/S2PLUGINS/groovy-plugin.html 海岸线网络聚合D b#Y lO
将其拷入web工程的lib文件夹下,除此以外还需groovy的jar包以及相关的包。主要是groovy, asm 和antlr 包。下图显示工程所有的jar包
9nCl6i!bI2uz0
海岸线网络聚合:]KZ1j W
海岸线网络聚合+g?5N'}U5]gf第二,采用groovy编写action:LoginAction.groovy 海岸线网络聚合+fq6JL2iM&u$A(C
package com.hopeteam.struts.action;
O2bOy8i7A f*H.NP&\0public class LoginAction {
b8^d2Xw0~8[mZ;b0 def username; 海岸线网络聚合
T;r?dN0Gi`
def password; 海岸线网络聚合&z:L+s p~#h%?'fx:u
public String getUsername() { 海岸线网络聚合O*L;KE)VF
return username;
-Lxe9ZIiWTQ0 } 海岸线网络聚合O+ej
W3ygr2iMw-k
public void setUsername(String username) {
Xk-Yo0w1^*@6R0 this.username = username;
|z'oy$w
[Q.y0 } 海岸线网络聚合9V6@'?v7R[ X
public String getPassword() { 海岸线网络聚合
i"|5G&i9{"w
return password;
FTP7u6x~
q)J+x-a0 } 海岸线网络聚合VbQ4B]&Z
public void setPassword(String password) { 海岸线网络聚合 D+q9p*F7_q@
this.password = password;
QfoQ7On0 }
f T0A6N'X&R)i4O0 public String execute() throws Exception
Y
BW1D
I.hG0 {
d(Q%x7Q:`/S*_f0 if(getUsername().equals("fengzhizi")
7k m1e$N[I j0u0 && getPassword().equals("123456")) 海岸线网络聚合8T+]Z-xssW_
{ 海岸线网络聚合
[;H]i2q4_
return "success"; 海岸线网络聚合w1id^2yi5y
} 海岸线网络聚合:q m
V1W^
else 海岸线网络聚合NLL"vNs'Ai6\ c
{
^!vL$J'X2@_-a:f0 return "error";
W0Ek+qs.E0 } 海岸线网络聚合YJRRiO+R@)YA
} 海岸线网络聚合f+S3\iu@s B
}
c0y _ Ld0编写完毕,需要在struts.xml中配置该action。在配制该action之前,需要在struts.xml将框架常量设置为groovyObjectFactory
W U,b'POzT$h0<constant name="struts.objectFactory" value="groovyObjectFactory" />
Ptk [O8E ]*R0action的配置同样需要修改: 海岸线网络聚合taw{/h`c[ F-M0~
<action name="Login" 海岸线网络聚合F*f
L4c(MO1]C;Q}G
class="com.hopeteam.struts.action.LoginAction.groovy">
7a&w*l:H$|7\u1g0 <result name="error">/error.jsp</result>
9J2Do)L ?EH0 <result name="success">/welcome.jsp</result> 海岸线网络聚合&\iF?wL$t
</action> 海岸线网络聚合6U`I8^\$wG+h]
a'd T@S"v.~q0第三,配置完毕后将LoginAction.groovy放入Tomcat 5.5\webapps\Struts2Groovy\WEB-INF\classes\com\hopeteam\struts\action
8d7G/M QD/b_0编写welcome.jsp: 海岸线网络聚合 U1hJ+GN*?GeW%_$]N
<%@ page language="java" contentType="text/html; charset=GBK"%>
H^F!t9F)H_|0<%@ taglib prefix="s" uri="/struts-tags" %>
+rp|0y$EC5D_/T0<html> 海岸线网络聚合&C!I#y0S8y}uA
<head> 海岸线网络聚合'S0Si `PV-?^
<title>success</title>
#tWPn2x#s;i0 <meta. http-equiv="Content-Type" content="text/html; charset=GBK"> 海岸线网络聚合 Cj0`aC.P)H
</head> 海岸线网络聚合bc
cI*d(eu"W
<body> 海岸线网络聚合W#WE[1[Dp-G&d
用户:<s:property value="username" />登陆</br>
#^;|5xqy[(\0 groovy编写struts2的action测试成功
)xv,r1aL%J0 </body>
6G|F3oE;OB0</html>
7Yd7Cr6r
g5}A8X0最后,我们看一下运行结果。
S~6^?
~k Y)\5Z0
海岸线网络聚合dJ2I"S"?
论坛模式
推荐
收藏
分享给好友
推荐到圈子
管理
TAG:
groovy
action
Groovy