Answers
业务逻辑就是客户的逻辑 。 @Ke_Wu @酷瓜哥哥 的回答已经很好了,那我就聊聊 什么不是业务逻辑 。
在 N 层架构的系统中,经常会提到这些名词。
- 表现层(Presentation layer)
- 业务逻辑层(Application layer)
- 数据访问层(Data layer)
在一个系统开发过程中,后台做一些处理,如果成功,则跳转到 success_xxx 页面,如果失败,则跳转到 fail_xxx 页面,如果系统抛出了异常,则跳转到 5xx 页面,…… 这些属于 页面逻辑 。
还有一些持久层的逻辑,也就是对数据库的操作。
业务逻辑是核心逻辑,只关注用户的业务,比如管理系统和财务系统,需要处理的业务肯定不一样,但是页面的跳转大致相同,对于持久层的操作也差不多。如果你使用了 SSH 框架,那么 hibernate 和 struts 的代码有很大一部分可以复用。
业务逻辑(BL Action)不关心页面如何跳转,只是简单的返回成功,或是失败,或是异常,struts 框架根据配置文件跳转到相应的页面。
业务逻辑也不关心数据如何存储,是存储在文件系统,还是存储在数据库系统。是存储在MySQL,还是NoSQL。也不关系到底用没用缓存。
如果你正在学用 PHP 开发网站,那么忘掉这些概念吧。如果你使用 Java 的框架开发企业级应用,建议看看 SSH 的源码或者 DEMO。
wujiang
answered 10 years ago