项目分层与实际开发的思考

[size=large]项目分层的大体结构如下前台用的是struts2:[/size]

[img]http://dl.iteye.com/upload/attachment/548766/64c5661c-e4fc-30f8-822c-f05a581c05ff.png[/img]
层很清晰,但是实际开发却有问题

[size=medium] [color=red]比如,如果现在把struts2这一层替换掉,切换成手机端,那么后面的东西可以重用吗?业务逻辑等可以重用吗?[/color]
现在service层就只负责了把dao加个事务的简单封装,或者组合点dao层的逻辑给个调用,大量的service注入到了struts层,struts2层就根据项目要实现的功能拼装出来业务操作,然后再封装出展现层的东西,然后去调用展现层,这个时候事务的控制就由于在action里面组合使用这些service而失去作用了。


action层理论上说就是获取front层的东西,然后拼装出我们要的参数,然后调用相关service层的服务就可以了,但现在服务什么的大面积出现在action里面。

这个原因估计是开发时候理解问题,虽然有分层,但实际分层还是没有很好的实现,分层成了一个概念上必须做的事情,而没有理解每层的职责。也就是开发时候,struts2使用必须明确,我只是调用注入的服务,通过服务得到前台要的展现,并且通过调用服务,让服务区处理一些东西。[/size]

[size=medium][color=green]总结带来的问题:[/color]
实际方面:
1.action层代码臃肿,修改不容易看明白,很多类都达到了600行代码
2.事物控制不明确,带来事务部一直的的问题
理论方面:
1.分层不明确,每层的职责体现不好
2.service太轻了,只是dao的简单封装
[/size]

你可能感兴趣的:(2011项目,struts2,dao,spring)