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

项目分层的大体结构如下前台用的是struts2:


层很清晰,但是实际开发却有问题

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


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

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


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

猜你喜欢

转载自blognojava.iteye.com/blog/1164798