简介
stapler,在国外不知道咋样,国内很冷门的一个框架,Jenkins里面的web框架用的就是他;lib很小,github上的提交还挺活跃的;因为在看Jenkins的源码,顺便把这个框架过一遍。
此框架可以对标Spring MVC/Struts。
官方简介
Stapler用来方便的将你的应用程序里的对象跟Http URL绑定到一起,Stapler帮助你更简单的开发web应用程序;Stapler的主要思想是自动为你的应用程序中的对象绑定到URL,从而创建一个直观的URL层;查看更多…
快速入门
URL Binding
Stapler的工作方式(处理HTTP请求)就像是表达式语言;Stapler获取一个应用程序对象和HTTP 请求的URL ,然后评估URL 是否匹配这个对象;重复上面的过程直到碰到一个静态的资源,一个视图(JSP,Jelly,Groovy等等),或者一个动作方法(action method,处理http post,delete,put的方法);
举个例子
Scenario: browser sends “POST /project/jaxb/docsAndFiles/upload HTTP/1.1”
evaluate(<root object>, "/project/jaxb/docsAndFiles/upload")
-> evaluate(<root object>.getProject("jaxb"), "/docsAndFiles/upload")
-> evaluate(<jaxb project object>, "/docsAndFiles/upload")
-> evaluate(<jaxb project object>.getDocsAndFiles(), "/upload")
-> evaluate(<docs-and-files-section-object for jaxb>, "/upload")
-> <docs-and-files-section-object for jaxb>.doUpload(...)
常用注解
- @ExportedBean
- @Exported
- @DataBoundConstructor
- @AncestorInPath
- @CapturedParameterNames
- @DataBoundSetter
- @InjectedParameter
- @LimitedTo
- @QueryParameter
- @WebMethod
- @JavaScriptMethod
- @RequirePOST
- @RespondSuccess
- @JsonBody
- @JsonResponse
- @DELETE & @GET & @POST & @PUT
参考
转载自原文链接, 如需删除请联系管理员。
原文链接:Stapler,转载请注明来源!