58同城开源的轻量级web框架 https://github.com/58code/Argo
前面简单的写了点关于Argo使用的基本方法和Demo示例,其实只要前后看两遍,是很容易上手的。更多的人还是关注为什么要做这样一个框架,以及他是否能为开发人员解决常见问题,提高工作效率。
对比Struts、Webwork、springMVC,他们提供的功能实在太多了。Struts1当前应用最广,现在还有一些遗留项目在使用。Webwork和Struts2这对孪生兄弟备受推崇,也因为树大招风,N多站点为他的潜在漏洞买单了(由于没有关闭OGNL,导致提交的参数被当做代码执行。其实厂家老早就有补丁,只是这些站点没有关注升级)springMVC 同样非常好用,是spring控的最爱,spring的强大、类库的丰富,就不在这说了。
他们都提供了底层Controller的封装,只要web.xml中添加指定的servlet、filter、listener,开发者继承后实现指定的方法就可以了。还有可配置的DI(依赖注入)功能,没有这些框架的时候,大家必须从web.xml入手,添加大量的servlet,web.xml就成为了一个维护的难点。
servlet3.0提供注解方式创建servlet,在不依赖框架的情况下,也看不到过多的配置文件,但是不代表他真的就适合大规模的开发。用框架来进行统一封装、整合公共模块、规范开发、提高开发效率才是我们要做的事情。上面说的三个框架都过于繁重,太多我们不需要的东西。应该结合项目过程中所需要的功能,抽取必要功能统一并优化处理。
首先看看那个pom.xml都依赖了哪些东西,大致也就猜出这个框架的风格 :)
com.google.guava
com.google.inject
org.javassist
org.apache.velocity
org.slf4j
log4j
org.testng
依赖很少吧,想必功能精简到极致了,而且作者有可能是google派。
spring的IOC是最常用的一个功能了,屏蔽实例化过程,由框架来管理对象的生命周期,还可以叠加使用,确实很爽。Google开源的Guice是一个更轻量级的DI框架,可参考Guice与Spring的对比 http://baike.baidu.com/link?url=sEPp_KyBC1hmvHq22NW8s4veleEgZYi6Z6bfoBnEPQvrr17B6GMzQ1Rd3OZIHl-7
guava是google内部使用的java库,每一个包都值得学习一下
org.javassist 是处理Java字节码的类库,大概能猜到一种使用场景了,java反射中拿不到方法的形参名称,用字节码就可以。所以前面一篇Path注解中的正则表达式对应的值的注入,貌似是已这种形式set进去的。
org.apache.velocity 页面模板框架,也没什么好说的,市面上使用最多的同类产品应该是freemarker吧。
剩下的log4j和testng也不介绍了
以上某些猜测全是个人看法,以后慢慢读代码再验证一下 :)
相关推荐
58同城的web框架 Argo ,Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问...
Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明Argo是一个可靠的、高效的web框架。 Argo在wf做了大量优化和...
ArgoUML-0.26开源.exe 推荐下载
代码超级干净,可以很容易地定制,很容易转化为任何类型的web应用程序,包括自定义管理面板,数据分析仪表盘,电子商务后端、CMS、CRM或任何SASS面板。 主要特色 响应布局(台式电脑、平板电脑、移动设备) 用Bootstrap...
zooviewer zookeeper web ui written in java.jsut like node-zk-web 这是一个查看zookeeper节点并可以...1,基于58开源的web框架Argo,全应用无一个配置文件。详见. 2,页业端用了jquery-tree ,方便查看zk的树状节点.
JWFDv0.96 开源工作流系统-二次开发与API简易说明.doc JWFDv0.96 开源工作流系统-二次开发与API简易说明.doc
argouml一款很好的开源uml工具 中文版的
Argo是一个开源原生容器工作流引擎用于在Kubernetes上开发和运行应用程序
ArgoUML使用说明,官方英文版 ArgoUML是一个领先的开源UML模型工具,它支持UML 1.4的所有标准,可以运行于任何Java平台上。
ARGO入门手册1
argo源码类图,运行时序图
统一建模语言 (UML) 用于设计软件。 ArgoUML 是一个开源的 UML 编辑器。 该插件将“组件的基于上下文的约束语言(CCL)”集成到 ArgoUML 中。 在 Berlios,我们说德语 - 查看 www.cocons.or
Argo数据的说明手册
BGC_ARGO数据,叶绿素浓度
argo-UML 是开源的uml工具。 通过学习源代码来加强自己的实力。
UML argo建模工具下载,很实用的一个建模工具,方便实用,供喜欢的朋友交流使用
ArgoUML开源的uml设计软件,可以和php集成!!
ArgoUML是一个领先的开源UML模型工具,它支持UML 1.4的所有标准,可以运行于任何Java平台上。---来自《开源中国》https://www.oschina.net/p/argouml?hmsr=aladdin1e1
从官网下的ArgoUML-0.34 用来画UML图
标签:argo-2.4.jar.zip,argo,2.4,jar.zip包下载,依赖包