如何利用struts2的Restful2ActionMapper实现ReST风格的URL

如何利用struts2的Restful2ActionMapper实现ReST风格的URL,第1张

首先在Struts2工程中导入所需的jar包 ezmorph-103jar json-lib-21-jdk15jar struts2-convention-plugin-2211jar struts2-rest-plugin-2211jar xstream-122jar

配置和使用

现在,我们配置struts2使它使用restful2actionmapper。在web项目中,修改strutsproperties文件(它最终会发布到你的web应用的web-inf/classes目录中):

strutsmapperclass=orgapachestruts2dispatchermapperrestful2actionmapper

strutsenableslashesinactionnames=true

当然,你也可以在strutsxml里进行配置,请参考struts2的相关文档。

这里有个小建议,许多人在web-inf/webxml里对struts2的配置是让struts2处理所有扩展名为action的url,也就是设置url-pattern为action。 我的建议是,不要使用扩展名来作为url-pattern,使用基于路径的匹配形式会更好,我一般是使用“/app/”作为url-pattern。至于扩展名,我一般是在strutsproperties文件中指定:

strutsactionextension=html,xml,json

或者,不要扩展名:

strutsactionextension=

不过,这些都是题外话。

现在,以上面讲到的article为例,我们定义articleaction。按照restful2actionmapper的规则,url与method的对应关系如下:

get /article => public string index(); 资源索引;

get /article/2007/8/a001 => public string view(); 对应于读取 *** 作;

post /article/2007/8/a001 => public string create(); 创建资源;

put /article/2007/8/a001 => public string update(); 更新资源;

delete /article/2007/8/a001 => public string remove(); 删除资源;

get /article/2007/8/a001!edit => public string edit(); 请求编辑资源,和rest的四种 *** 作没有对应关系;

get /article/new 或 get /article/!editnew => public string editnew(); 请求编辑新资源,和rest的四种 *** 作没有对应关系。

后两种方式似乎和rest没什么关系,但为传统的web应用开发提供了方便。比如edit(),服务器返回一个表单页面。但是,如果我们让应用服

此文来自: 马开东博客 转载请注明出处 网址: >

以上就是关于如何利用struts2的Restful2ActionMapper实现ReST风格的URL全部的内容,包括:如何利用struts2的Restful2ActionMapper实现ReST风格的URL、java动态修改rest路径、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9494637.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存