- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Groovy 分享
* Groovy @ Taobao 部门:产品技术部 日期:2010-03-15 雷卷 * 日程 Groovy介绍 Groovy和Java的关系 淘宝的潜在应用场景 开源框架 IDE 潜在问题 Velocity FAQ * Groovy介绍 基于JVM的动态脚本语言(Agile) 语法更丰富:Closure MOP(元编程) DSL 更新快 * Groovy和Java的关系 Groovy 1.5后,Groovy和Java是互操作的(Joint Compiler) Groovy在JDK上进行了扩充,GDK 完全兼容Java规范 * 淘宝潜在应用 重新加载需要:Module 减少代码量的:Webx Screen Action 自定义DSL:自定义流程,逻辑等 脚本(SA):Grape 管理系统开发:Grails 特定的ClassLoader机制:HSF * 开源的框架 Grails: Web Framework Griffon:DeskTop Application Framework Gradle:Build Tool Gealyk:Google App Engine Framework Gmaven:Groovy Maven Plugin * Grails Agile Web Framework Rails Like Powerful View ORM Plugins * Gaelyk Google App Engine Lightweight Framework Simple Extend * IDE工具 IntelliJ IDEA 功能强大:binding变量注入 Eclipse Plugin * Velocity velocity_implicit.vm vtlvariable annotation Structure Language Injection * * * 潜在的问题 性能:性能很差 性能为何差:全部动态调用 解决方法: Groovy++,脚本要小,核心逻辑仍然用Java写 def问题,虽然是弱类型语言,但是不要进行弱类型处理 * * * * @Grapes([ @Grab(com.oracle:ojdbc5:11.1.0.7.0),@GrabConfig(systemClassLoader=true)]) sql = groovy.sql.Sql.newInstance(jdbc:oracle:thin:@10.1.5.11:1521:XE, system, abc123, oracle.jdbc.OracleDriver) sql.eachRow(select sysdate as now from dual, { println -- ${it.now} --}); * * * * * #* @vtlvariable name=userName type=java.lang.String *# * * * * * * * * * @Grapes([ @Grab(com.oracle:ojdbc5:11.1.0.7.0),@GrabConfig(systemClassLoader=true)]) sql = groovy.sql.Sql.newInstance(jdbc:oracle:thin:@10.1.5.11:1521:XE, system, abc123, oracle.jdbc.OracleDriver) sql.eachRow(select sysdate as now from dual, { println -- ${it.now} --}); * * * * * #* @vtlvariable name=userName type=java.lang.String *# * * * * *
您可能关注的文档
- GeoMap35培训内容.ppt
- GEPT 中高級預試 口說能力測驗 GEPT—High-Intermediate Level bb.ppt
- gerenjianli模板.ppt
- GESTIóN DEL TALENTO HUMANO.ppt
- get-ready-storytelling-ematrix-the-management-of-change传统与现代互联网.ppt
- ghv_-销销售关系管理.ppt
- Gf05材料力学-扭转.ppt
- Gif 制作教程鸟儿在枝头跳跃.ppt
- GIS在咸阳市土地工程能力评价中的应用.pptx
- GIS工程讲义 第一讲 GIS工程原理与方法概论.ppt
- 2025年家居家纺商业计划书线上线下融合下的市场拓展策略.docx
- 2025年农业绿色发展政策支持与农业循环经济发展政策优化创新优化报告.docx
- 教育精准扶贫对农村地区教育投入结构优化的影响评估报告.docx
- 医疗美容行业监管政策对美容护肤品牌的影响与2025年市场策略分析报告.docx
- 纺织服装制造行业数字化转型中的政策环境与法规解读报告.docx
- 农业科技成果转化与农村旅游开发2025年报告.docx
- 2025年城市河道生态修复项目组织管理建议书.docx
- 农村电商服务站农产品电商平台用户行为分析与产品创新报告.docx
- 医疗美容服务行业规范化背景下,2025年市场监管法规解读与应用.docx
- 航空运输业2025年疫情冲击应对策略与可持续发展研究报告.docx
文档评论(0)