阅读更多
JavaEye的资深会员downpour发起了开源项目LightURL。首先让我们了解一下LightURL:

背景:Struts2已经日益成为Web层比较主流的开发框架,它来源于Webwork2,是一个非常优秀的MVC框架。在Webwork2设计之处,Annotation和Ruby on Rails还没有像现在那么火,所以整个框架在配置方面还是沿用了Web框架惯用的XML作为主要的配置方式。

随着时代的发展,对于Web程序员来说,如何简化配置成了一个很重要的课题。在这方面,Struts2也有一些探索。在Struts2的官方网站上,我们可以找到一些优秀的plugin来做这些工作:codebehind-plugin,smarturls-plugin.

LightURL的目的是为了吸取这些优秀的plugin的优点,并支持更方便的配置方式。

downpour 是一位资深的Java开发者和优秀开源开发者,写了大量很多的技术文章,比如《忘记李刚,一步一步跟我学Struts2 系列》,JavaEye非常荣幸的采访了他。

downpour 博客:http://downpour.iteye.com/

欢迎大家推荐更多开源项目给我们,支持中国的开源项目发展,发站内短信给JavaEye管理员或者发信到webmaster@iteye.com,谢谢。

采访LightURL开源项目作者downpour Top

JavaEye:1. hi,downpour 你好,非常荣幸能够采访你。你能介绍一下LightURL开源项目吗?

downpour : LightURL是一个Struts2的插件,通过使用这个插件,能够极大的简化Struts2的配置。从更深的意义上说,我也希望通过LightURL的使用,能够使得程序员更加慎重的去思考表示层的代码的规划以及URL地址的合理规划。从理念上,使得整个表示层更体现出它的价值。

JavaEye:2.你为什么要开发LightURL项目呢?出发点和希望解决的问题是什么?

downpour: Struts2是我在平时开发中经常使用的一个表示层框架,在使用的过程中,发现其配置非常繁琐。所以最初的目的是为了能够少写很多配置文件从而提高开发效率。后来在使用的过程中,我逐渐发现,这个项目最终不仅简化了配置,同时规范了许多表示层的开发习惯,使得很多代码能够自然而然的放到其应该存在的地方去。

JavaEye:3.LightURL主要有哪些特点呢?相比同类型的项目有什么优势呢?

downpour:通过插件方式来简化Struts2配置的开源项目有很多,在Struts2的官方网站上,我们可以找到一些优秀的plugin来做这些工作:http://cwiki.apache.org/S2PLUGINS/codebehind-plugin.htmlhttp://cwiki.apache.org/S2PLUGINS/smarturls-plugin.html 。在Struts2.1.6的版本之后,自带了一个convention-plugin,几乎囊括了所有简化配置方面的精华。

而LightURL本身吸取了上面3个提到的插件的优点,并且在此基础上提出了URLTemplate的Annotation配置方式以及Command方式的ResultCode这两大特色。这两点分别解决了表示层需要进行配置的两个不同的方面:URL映射Action类以及Action转向到视图层。所以要说到LightURL最大的优势,应该说在于它是市面上所有的Struts2简化配置的方案的集大成者,同时在上面含有一定的创新性。


比较具体的项目说明,可以参考我的博客:http://downpour.iteye.com/blog/242838

JavaEye:4.LightURL未来的roadmap是什么? 你对LightURL的规划和目标是什么?

downpour:我在编写LightURL的时候,并没有制定什么roadmap,唯一的目标就是通过少写代码来提高开发效率。由于当时Struts2还处于2.0.X的稳定版本阶段,所以LightURL还只是支持Struts2.0.X的版本。我想在不久的将来,我会编写针对Struts2.1.X的版本,同时增加更多的简化配置的特性。

JavaEye:5.LightURL项目诞生多长时间了,现在你平均每天花在LightURL上的时间是多久?

downpour:LightURL的项目已经有1年半了,目前LightURL处于使用过程中,这个项目本身我已经不花费时间去维护了。

JavaEye:6.你的开发环境是什么?

downpour:windows XP,eclipse。

JavaEye:7.这个项目从什么时候开始,到现在几年了?目前LightURL是你一个人开发?还是有其他合作开发者?

downpour:LightURL的开发是由我一个人完成的,不过在整个过程中,受到了许多人的意见和启发,包括ahuaxuan和kj23,在这里,谢谢他们。

JavaEye:8.现在大概有多少用户使用LightURL项目。

downpour:LightURL我并没有花时间和精力去推广,除了在Javaeye论坛上发过帖子以外,没有在其他场合进行推广,作为一个小工具,也只是想给大家一些启示和探讨的话题。所以除了我自己主导的项目,其他使用LightURL的用户应该很少。

JavaEye:9.通过开发LightURL,你对中国的软件开发人员做开源项目有什么感受和想法吗?

downpour:中国的软件人员的能力很强,不过实际上集中在一些个人上,从总体上水平上来说,我觉得还有很多参差不齐的情况。我个人非常不赞成一个程序员,随随便便写点代码,就号称是一个Full Stack的解决方案,号称是什么开源项目。称得上是开源项目的,必须是个人能够对自己写的东西,有一个非常清醒的认识和评价的作品。所以我也从来不认为我自己开发了LightURL这样一个开源项目,这只是一个小工具,希望它能在表示层这个小小的领域解决一些小小的问题。中国的软件开发人员,应该从自我做起,少谈口号,多做实事,这样才能提高整个国家的软件开发的水平。

JavaEye:10.作为一个JavaEye的老会员,你对JavaEye网站有什么建议和意见吗?

downpour:我加入Javaeye论坛是我大学四年级的时候,我几乎所有的Java知识,都来源于Javaeye的一次又一次的激烈讨论。所以Javaeye几乎就是我成长中必不可少的良师益友。在此要对robbin同学为网站付出的巨大努力和心血而表示深深的感谢,也希望Javaeye越办越好。我也会尽我的所能,在业余时间为Javaeye多多贡献文章,充实Javaeye的内容。

downpour 介绍 Top

downpour 来自上海,土生土长的上海人。04年毕业以后就一直从事Java方面的工作,呆过的公司不少,有典型的软件外包公司、互联网企业、也有专注于领域的ERP产品的公司。目前待业在家,充实自己,同时思考未来。

除了技术,我最大的爱好是股票研究,并把它看做一个很刺激的游戏,同时也很爱运动,篮球是我的最爱(JavaEye:downpour曾经参加过javaeye篮球活动,篮球打的很好,投篮极准   )。

downpour 博客:http://downpour.iteye.com/

downpour 开心网的非主流头像:


  • 大小: 11.4 KB


评论 共 22 条
22 楼 zz13203778855 2012-11-06 16:27
9号线上见过、
21 楼 liushilang 2012-02-16 22:17
似曾相识,牛人
20 楼 eltonto 2010-07-09 16:21
吓倒我了呵呵。
19 楼 sacii 2009-10-12 14:32
看了之后,才发现原来偶又做了个轮子....  
18 楼 guazi 2009-09-10 14:17
强就一个字。。。
17 楼 墓里活人 2009-08-31 13:19
大哥,你是杨过身边的那只大雕么?
16 楼 skyxk 2009-08-31 09:53
大哥的《忘记李刚,一步一步跟我学Struts2 系列》我有幸读过,写的很不错
期待你的新文章
15 楼 myseo 2009-08-31 09:42
换个头像吧,挺XX的~哎
14 楼 frenchmay 2009-08-26 23:56
图片太强大
13 楼 faylai 2009-08-26 17:16
图片太强大了
12 楼 tk_zhang 2009-08-26 15:29
eclipse2008 写道
这不是股神嘛

呵呵,有意思~~
11 楼 netfork 2009-08-26 13:44
照片实在太囧了。。。。
10 楼 jbas 2009-08-25 11:03
用了struts2标注,struts2配置还是比较简单的。
9 楼 fangwei 2009-08-20 12:17
莫非这是一个 囧
8 楼 nathanlee 2009-08-19 11:17
股神原来业余时间搞开源项目
7 楼 phoenixup 2009-08-19 09:10
yourgame 写道
downpour 写道
lordhong 写道
大哥... 你终于露脸了啊!!!


主要怕露脸吓死人,一直不敢。。。

你这图片也够吓人的了:)

嘴唇很彪悍~~~我来围观一下~~当年,俺用Webwork PK掉Struts1,到了Struts2之后,反倒没什么机会用了,不过现在的Struts2还没有成长起来,总觉得Struts2的发展瞻前顾后,不够痛快。
6 楼 260664656 2009-08-18 15:10
图片很强啊~
5 楼 yourgame 2009-08-18 14:12
downpour 写道
lordhong 写道
大哥... 你终于露脸了啊!!!


主要怕露脸吓死人,一直不敢。。。

你这图片也够吓人的了:)
4 楼 downpour 2009-08-18 10:10
lordhong 写道
大哥... 你终于露脸了啊!!!


主要怕露脸吓死人,一直不敢。。。
3 楼 caiceclb 2009-08-18 10:07
比较期待2.1.x版本适应出来
2 楼 lordhong 2009-08-17 22:45
大哥... 你终于露脸了啊!!!
1 楼 eclipse2008 2009-08-17 16:13
这不是股神嘛

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Downpour:超级棒的 WYSIWYG 编辑器,用于超级棒的引擎

    创建一个名为Downpour的新文件夹并将构建的dylib或dll移动到其中将Downpour/Resources复制到新创建的文件夹中将Downpour文件夹移动到您的项目模块目录并更改manifest.json以加载libDownpour模块开场倾盆大雨默认...

  • SGD平行算法 - Downpour SGD (单机python多线程版)

    SGD 被广泛运用到机器学习(machine learning)中最优化等问题中,学术... [1], Delay-tolerant Algorithm for SGD [2], Elastic Average SGD [3]),本篇实现了现在比较火的Downpour SGD [4]的样例代码 (选择这个的原因引

  • DistBelief 框架下的并行随机梯度下降法 - Downpour SGD

    Corrado 等人的文章 Large Scale Distributed Deep Networks (2012) 后的一则读书笔记,重点介绍在 Google 的软件框架 DistBelief 下设计的一种用来训练大规模深度神经网络的随机梯度下降法 — Downpour SGD,该...

  • 如何学习开源框架

    在大家了解了框架的本质和Web开发模式之后,我们来讨论一下学习开源框架和基本方法。在这里,本书为大家小结了一些正确的学习方法和最佳实践,这些不仅是笔者多年开发中的心得体会,也汲取了网络上的大家之言,希望...

  • (3)如何学习开源框架

    一般而言,名为xx-blank-xxx.war的sample项目是一个开源框架最小的一个可运行的范例。所以,如果大家仔细学习这个war包中的内容,至少可以发现组成一个Struts2程序的 最小元素 到底有哪些。在其中的WEB-INF/lib目录...

  • LightURL——打造零配置的Struts2开发方式

    在完成以上的步骤后,lighturl的所有配置即告完成,现在你已经可以使用所有lighturl所提供的特性。 [b]Namespace, ActionName和URL映射[/b] lighturl所提供的最基本的特性是根据你的Action所在的package,确定...

  • SpringMVC个人理解(downpour 的SpringMVC深度探险的个人整理)

    :传统servlet在项目规模扩大之后,请求-响应的映射关系全部定义在web.xml中,将造成web.xml的不断膨胀而变得难以维护。 为解决这个问题,SpringMVC提出的方案就是: 提炼一个核心的Servlet覆盖对所有Http请求的...

  • (装载)项目管理的一点想法

    关键字: 项目管理 (装自:http://downpour.iteye.com/blog/186429) 1. 根据需求,将项目尽可能拆分 可能出现的情况是:将一个项目进行拆分,分成2到3个子项目进行单独开发。当前设想的主要可能性:主项目、统计和...

  • 快手八卦!突破TensorFlow、PyTorch并行瓶颈的开源分布式训练框架来了!

    来源:AI前线 本文约5200字,建议阅读8分钟本文介绍了专门针对分布式场景设计了特定的优化算法同比,性能较同类提升60%。 近日,快手和苏黎世理工宣布开源分布式训练框架 Bagua(...

  • 编程精华资源(ITeye优秀专栏)大汇总

    标准JDK中没有提供,或者提供了但是API不是很实用的一些在项目中经常用到的Java开源Library的用法。 rensanning Java EE 7 简明教程 本教程不会深入到每个技术的细节,仅仅只是浅尝辄止地介绍了 Java ...

  • 在Intellij Idea中使用Maven创建SpringMVC项目

    最最最傻瓜式的创建Spring MVC新项目,我就是个小白……写的会很细,借鉴类很多但是还有好多没懂,欢迎指正~ 一、新建项目 1、点击Create New Project 2、选择maven,勾选create from archetype,选择webapp...

  • AI绘画——本地配置webui启动器教程,支持一键启动/修复/更新/模型下载管理+Lora模型推荐

    秋葉aaaki的个人空间_哔哩哔哩_bilibilihttps://space.bilibili.com/12566101/?spm_id_from=333.999.0.0 感谢秋葉aaaki大佬の免费开源 目录 1.获取资源整合包 2. 下载并配置webui启动器 3.启动器功能 4.一键启动,...

  • 让Downpour的<Spring Security 2 配置精讲>简单化,大家一起学习

    ,系Downpour原创   -------------------------Begin----------------------------    &quot;Spring Security 2 配置精讲&quot; 让我认识了Spring Security(以下都简称Security),一直在做毕业设计,最近需要做...

  • Java 员工管理系统项目源代码(可做毕设项目参考)

    Java 员工管理系统项目是一个基于 Java 编程语言开发的桌面应用程序,旨在管理员工的信息、津贴、扣除和薪资等功能。该系统通过提供结构和工具集,使公司能够有效地管理其员工数据和薪资流程。 系统特点 员工管理:管理员可以添加、查看和更新员工信息。 津贴管理:管理员可以添加和管理员工的津贴信息。 扣除管理:管理员可以添加和管理员工的扣除信息。 搜索功能:可以通过员工 ID 搜索员工详细信息。 更新薪资:管理员可以更新员工的薪资信息。 支付管理:处理员工的支付和生成支付记录。 模块介绍 员工管理模块:管理员可以添加、查看和更新员工信息,包括员工 ID、名字、姓氏、年龄、职位和薪资等。 津贴管理模块:管理员可以添加和管理员工的津贴信息,如医疗津贴、奖金和其他津贴。 扣除管理模块:管理员可以添加和管理员工的扣除信息,如税收和其他扣除。 搜索功能模块:可以通过员工 ID 搜索员工详细信息。 更新薪资模块:管理员可以更新员工的薪资信息。 支付管理模块:处理员工的支付和生成支付记录 可以作为毕业设计项目参考

  • CAD实验报告:制药车间动力控制系统图、烘烤车间电气控制图、JSJ型晶体管式时间继电器原理图、液位控制器电路图

    CAD实验报告:制药车间动力控制系统图、烘烤车间电气控制图、JSJ型晶体管式时间继电器原理图、液位控制器电路图

  • 使用 Arduino 和 Python 实时数据绘图的温度监控系统源码(可做毕设项目参考)

    项目简介: 本项目将教您如何使用 Arduino 和 Python 实时数据绘图来构建温度监控系统。通过这个项目,您将学习如何从 Arduino 到 Python 进行串行通信,并实时收集和监控温度数据。 项目目标: 实时监控和绘制温度数据。 提供用户友好的操作界面。 提高用户的编程技能,特别是Arduino和Python的应用能力。 项目功能 实时温度监控: 传感器每秒读取一次温度数据,并通过串行监视器发送到Python程序。 数据保存: Python程序将温度数据保存到CSV文件中。 实时数据绘图: 使用Matplotlib库实时绘制温度数据,温度在Y轴,时间在X轴。 项目优势 高效的数据监控: 实时监控和绘制温度数据,提高数据监控的效率。 用户友好: 界面简洁,操作简单,用户可以轻松使用该应用程序。 提高编程技能: 通过实践项目,提高对Arduino和Python的应用能力。 项目技术细节 项目详情: 项目名:使用 Arduino 和 Python 实时数据绘图的温度监控系统 项目平台:Arduino 和 Python 使用的编程语言:C++(Arduino)、Python ID

  • 软件测试-软件测试方案pdf

    本测试计划提供给深圳移动公司PMS核心小组成员,对PMS EXPRESS 系统进行功能测试。测试计划主要通过对基站项目管理过程的模拟,从项目的立项开始直至基站的验收交付以及知识沉淀,对基站建设全过程中涉及的管理内容进行模拟测 试。测试计划中设计了两个基站项目一明宁花园、椰风海岸。其中明宁花园按 原计划如期完工,而椰风海岸因为设备没能如期到货导致了个整个项目工期的延误。

  • 博物馆智能化系统的解决方案.pptx

    博物馆智能化系统的解决方案.pptx

  • 基于STM32的电子罗盘

    基于STM32的电子罗盘试验

  • 【matlab GUI仿真】说明:GUI界面设计,四旋翼飞机仿真 VR界面设计

    【matlab GUI仿真】说明:GUI界面设计,四旋翼飞机仿真。VR界面设计。 (GUI interface design, four rotor aircraft simulation. The VR interface design. ) 【matlab GUI仿真】说明:GUI界面设计,四旋翼飞机仿真。VR界面设计。

Global site tag (gtag.js) - Google Analytics