从动态表单得到的一些思考

  1. 云栖社区>
  2. 博客>
  3. 正文

从动态表单得到的一些思考

技术小阿哥 2017-11-20 17:37:00 浏览752
展开阅读全文

    前些日子有一位前辈说如果一个C#出身的项目经理来领导一群java程序员,那么这些多半会疯掉。java相对于C#而言开发效率比较低。

    在javaWeb开发总是有一大堆的配置文件要去配置和修改,随着工程的进展,这些配置文件的内容极具增长。比如在Struts1.2中要去配置FormBean,如果工程中Form很多的时候,配置FormBean的配置文件自然就会分开写一个文件,配置文件的管理从一堆一叠分离到根据不同需要来书写,但是FormBean这些类还是无法避免,这样导致类的数量变得庞大。

    当然,面对所有的软件开发过程中的恐慌,重复,人类艺术家们总能够寻找到解决之道。java软件开发的灵活性在这些地方清晰可见。有这样的一种现状:比如Struts +Hibernate+Spring实战宝典啊,框架学习等等一些书中,发现作者总是有意无意的告诉读者,这些框架的东西是为了解决大型项目中遇到的问题,将开发人员从重复的劳动中解救出来,更专注与项目的实际业务逻辑的处理。

    程序员们从来都不缺乏时间,但是从来都不会浪费时间。框架是开发人员的自救之路,也是面对软件危机艺术家们采取的一种解决方法。

    毫无疑问,在我感到重复编写FormBean类的时候,我总是偷一下懒,尝试寻求新的路径来避免这样的工作。对于程序员来将,偷下懒的时间越多越有成就感。

   框架的优势就体现出来了。

   如下代码:

   


  1. <h1> 
  2.             动态ActionForm 
  3.         </h1> 
  4.         <hr> 
  5.         <form action="dynaAction.do" method="post"> 
  6.             姓名: 
  7.             <input type="text" name="userName" id="userName" /> 
  8.             年龄: 
  9.             <input type="text" name="userAge" id="userAge" /> 
  10.             <input type="submit" value="提交" /> 
  11.             <input type="reset" name="重置"> 
  12.  


  1.         </form> 

   这样的一个提交表达,当然要写一个FormBean。可是下面的动态配置就可以避免这样的代码编写。

 


  1. <!-- 配置动态ActionForm --> 
  2.     <form-beans> 
  3.         <form-bean name="dynaForm" 
  4.             type="org.apache.struts.action.DynaActionForm"> 
  5.             <form-property name="userName" type="java.lang.String" /> 
  6.             <form-property name="userAge" type="java.lang.Integer" /> 
  7.  


  1.         </form-bean> 

    配置文件中对FormBean进行配置,配置后的FormBean的类型是DynaActionForm它继承了ActionForm因此作用是一样的,但是这样避免了类的数量的增加。

    其实在Java开发中这样的处理问题的思路还是很多的。Hibernate的实体映射配置文件使用注解写在java代码中,提高效率。JPA,Spring在具有文件配置的同时也都采用了注解。

    思来想去,面对这么庞杂的知识点,怎样才能从容以对?轻量级框架,重量级框架,还有什么超轻量级框架。同一问题不同的解决方法,没有对与错,全在围绕着效率,方便,开放,耦合度,易读,安全等等展开。

    当创造一样东西的时候,并不能毁灭一样东西,只能交给时间来处理,不过只要解决了当前最为重要最为紧迫的问题之后,我们有必要让这个亲手创造来的东西活的更久一些。



本文转自 secondriver 51CTO博客,原文链接:http://blog.51cto.com/aiilive/949336,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
技术小阿哥
+ 关注