-
关于service层的疑惑5
一般的在ssh的开发中往往将web application分层 jsp-action-service-seviceimpl-dao-daoimpl
我想问一下这里的service层有什么用
因为它和dao的定义基本相同(可以看成是dao的代理)我感觉完全可以省略这一层
希望大伙能告诉我这一层的具体应用(最好举例说明)
谢谢啦
问题补充:hudingchen 写道分层仅是一种规范而已。
service层:主要写业务逻辑。
dao层:数据访问。
service层依赖dao接口就行了,不必知道daoimpl实现方式(hibernate,jta,ibatis),如果你的dao层发生变化了,只修改daoimpl就可以了,其他层代码不需修改。
但service层 分成 service接口 和 service实现是为了什么
问题补充:hudingchen 写道还是规范,是面向接口的思想,把service接口暴露给表示层,表示层不必关心service实现,降低了类之间的耦合度。
dao层可以有jdbc mybaties hibernate等实现
那么service层的其他实现是怎么样的呢2011年10月19日 21:20
4个答案 按时间排序 按投票排序
-
采纳的答案
那么service层的其他实现是怎么样的呢
service层一般是根据业务逻辑划分的,比如有一个PersonService接口public interface PersonService{ public abstract void study(); public abstract void eat(); }
它有俩个方法,action知道学study()就行,不需要知道它具体学什么,实现由seviceimpl来完成,根据业务逻辑可能会有外语,数学等等,eat方法也是这样。2011年10月20日 07:05
-
引用dao层可以有jdbc mybaties hibernate等实现
那么service层的其他实现是怎么样的呢
service层是调用各种dao的业务操作,比如你有一个业务是 添加,然后修改。
那么你分别调用dao的添加和修改操作,包括里面的一些数据转换,逻辑判断都放到service层,dao只是单纯的增删改查。
而且事务一般会放到service层。2011年10月20日 09:24
-
分层仅是一种规范而已。
service层:主要写业务逻辑。
dao层:数据访问。
service层依赖dao接口就行了,不必知道daoimpl实现方式(hibernate,jta,ibatis),如果你的dao层发生变化了,只修改daoimpl就可以了,其他层代码不需修改。2011年10月19日 21:57
相关推荐
- 实现Service层:定义业务逻辑,通过Spring管理相关组件。 - 创建Controller层:处理HTTP请求,调用Service层方法,返回响应结果。 - 测试:对各个模块进行单元测试和集成测试,确保功能正确性。 - 部署上线:打包...
以下是关于这个主题的详细解释: 1. **CANOPEN协议**:CANOPEN是CiA(CAN in Automation)组织制定的一种应用层协议,基于ISO/OSI模型的七层网络通信协议,它在物理层和数据链路层使用CAN协议,而在网络层及以上则...
@Service、@Repository和@Controller分别是@Component的特殊形式,通常用在服务层、数据访问层和控制层。这些注解告诉Spring,带有这些注解的类需要被Spring容器管理。 接下来是AOP(面向切面编程),它允许开发者...
4. **Service层**:实现业务逻辑,与DAO层交互,处理数据操作。 5. **DAO层**:用于数据库访问,通常会使用MyBatis或JPA等持久层框架。 6. **Model对象**:定义数据实体,映射数据库表结构。 7. **视图模板**(如...
5. **Service层**:实现业务逻辑,与DAO层交互。 6. **DAO层**:与数据库交互,执行SQL语句。 7. **Model实体类**:代表数据库中的表结构。 8. **视图层**(如果使用Thymeleaf、Freemarker等):生成HTML响应。 9. *...
源代码中应该包含服务层(Service)、控制层(Controller)、模型层(Model)和视图层(View)的实现,以及配置文件如application.properties或application.yml。通过对这些代码的阅读和分析,可以深入理解如何利用...
在SSM框架下,开发者首先会定义好Model、Service和Controller层的接口和实现,然后配置Spring和MyBatis的相关XML文件,编写SQL映射文件,最后完成前端页面的开发。 【学习与实践】 对于学生或初学者,此项目是一个...
而`AndroidCLient`则是Android客户端应用的代码,包含AndroidManifest.xml、布局文件、Activity、Service等组件,以及网络请求相关的Java代码。 为了学习这个示例,你需要了解Android应用开发的基础,如Activity...
在这样的架构中,CXF通常作为服务层,处理业务逻辑,Spring则作为整个应用的胶水层,负责组件的装配和依赖管理,而Struts2则负责用户界面的交互和控制流程。 在文档【重要参考!!!Apache CXF入门范例以及对传递...
4. **服务层(Service Layer)**:业务逻辑处理,调用DAO来操作数据。 5. **控制器(Controller)**:如Servlet或Spring MVC的Controller,处理HTTP请求并调用服务层。 6. **视图(View)**:可能是JSP、HTML页面...
- 编码实现:根据设计编写代码,包括Action、Service、DAO层。 - 测试:单元测试、集成测试,确保功能正确无误。 - 部署上线:配置服务器环境,发布应用,监控运行状况。 综上所述,基于SSH的网上答疑系统利用这三...
这个"java j2ee学习中必要的chm格式的帮助文档,中文版的"是针对初学者和开发者的重要资源,它包含了一系列关于Java J2EE、JavaScript的详细解释和指南,以CHM(Compiled HTML Help)格式呈现,方便用户快速查找和...
例如,对于Zookeeper如何在集群中进行调度、客户端(Client)与节点(znode)的意义以及Leader选举的具体机制等问题,往往容易让人产生疑惑。此外,还有一种常见的误解,即认为每个Kafka服务器都需要部署一个Zookeeper...
SOA(Service-Oriented Architecture)是一种软件架构风格,强调服务之间的松耦合和自治性。ROA(Resource-Oriented Architecture)是一种软件架构风格,强调资源的自治性和松耦合性。两者的原理和合用场景是:SOA...