我喜欢struts,喜欢ibatis,喜欢spring,但我却喜欢.net,这实在是件很矛盾的事情。.net很好用,但在做项目的过程,总觉得缺少了点什么,对了,是框架。在java的世界里,有着许多成熟优秀的框架,但.net的框架,可选择的实在很少。在盼星星盼月亮的漫长过程里,终于盼到了Asp.net MVC,恕我不才,看来看去,都觉得这Asp.net MVC用起来实在是麻烦。我还是喜欢使用struts,尽管我很烦恼那些配置文件,但配置文件确实给我们带来了很多的好处。能轻松的扩展,轻易的修改。不过tomcat实在很垃圾,修改了配置文件居然还要重启。我喜欢.net,喜欢c#,喜欢Visual Studio,我觉得c#使用起来很自然,很舒服。然而,我害怕面对一张复杂的表单,想要获取几十个,上百个数据项实在是种痛苦。我经常的想,要是.net也有个struts的框架该多好啊,既然没有,那么,就让我来设计一个吧。
当然,struts的设计并不是为了仅仅解决获取表单数据麻烦的事情,要是仅仅如此,那就实在是太大题小作了,封装表单数据只是它的功能的开始,有了数据还需要对它们进行验证。有些人可能觉得,数据验证我都在前台进行了,后台就不需要对数据再进行验证,我只想说,这实在是件很危险的事情。我不打算讨论前台数据验证可不可靠,我个人觉得,它是不可靠的,即使它可靠,但是多一层的验证不是更确保系统的安全吗?验证完数据之后就是执行业务逻辑了,然后就是页面的跳转或者返回请求的页面。Struts让这个流程自动地执行了,我们所要做的,只是往Validate和Execute这两个方法中添加逻辑代码。根据ISO的管理理念,员工做的事情越单一,熟练度也就越高,出错的几率就越小。struts的设计,是完全符合软件工程的设计思想的。
配置文件是struts核心的一部分,许多人都不喜欢使用配置文件,我也是其中一个。记得刚开始接触struts的时候,对它的配置文件实在是很烦,但慢慢地,了解了配置文件的作用之后,就喜欢上使用配置文件了。配置文件在项目中的作用是毋庸置疑的,在大型的项目中尤其重要。需求是不断地改变的,但我们的程序可不能老跟着需求变,即使老板吃得消,员工也吃不消啊。改变一个页面的业务逻辑,只需要在配置文件中修改一下action的配置就可以了,其它的代码都不需要改变。说到配置文件,它还有一个很重要的作用,那就是“控制反转”或者“依赖注入”,其实我也搞不清这两个词语之间是什么关系。不过,也没必要在这些文字间咬文嚼字,就用IOC来代替它们好了。在开发过程中,经验会遇到一个类里面包含另一个类的实例,如:
class A { ……….. } class B { A a = new A(); }
那么,在上面的代码中,B将依赖于A,也就是说,没有A,B就无法正常的执行。这样,B和A就产生了耦合。说得再明白一点,如果B的业务逻辑需要改变了,不想使用A,而是使用C,那么,就需要修改B的代码,还要重新编译,这对于大型的系统来说,需要起来代价是很大的。为了达到高内聚低耦合的需要,我们应该让B依赖于抽象而不是具体。比较常用的方法是使用工厂模式,如:
interface IA { …… } class A { ……….. } class B { IA a = Factory.CreateA(); }
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, 数据
, struts
, 验证
, 配置
一个
struts2依赖注入、struts依赖注入、浅谈依赖注入、struts2依赖包、struts2 service注入,以便于您获取更多的相关知识。