谈一谈我对dao层和Service层的理解:
<wbr></wbr>
dao层:
最基本的CRUD操作,方法体里的内容一两句代码搞定。如this.save(student)等等。
<wbr></wbr>
Service层:
①可能调用多个dao。我有一个Service,叫StudentService。比如我存进去一个Student,利用的是StudentDao。我要把存入Student这个操作,记录到系统日志里面,我还要调用LogDao。这样,我就需要把两个Dao注入到StudentService里面。
<wbr></wbr>
②可能加入了逻辑判断。比如,我存入一个student对象,那么这个student对象可能是“添加”操作传来的,还是“更新”做操作传来的呢?那么我们就要加入逻辑判断:
<wbr></wbr>
public void add(Student s)
{
<wbr><wbr><strong>stuDao.save(ry);</strong></wbr></wbr>
<wbr><wbr>LOG<wbr>log = new LOG();<br><wbr><wbr>log.setCreator(s.getCreator());</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>log.setName("学生管理");<br><wbr><wbr>log.setTime(Utility.GetTime());<br><wbr><wbr>log.setDetial("录入学生信息<wbr><wbr> ID: " + s.getId() + ",姓名: " + s.getName);<br><wbr><wbr><strong>logDao.add(log);<br></strong><wbr>}</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr></wbr>
<wbr>public String saveStudent(String type, Student s)<br><wbr>{<br><wbr><wbr> String result = "";<br><wbr><wbr> if (StringUtil.checkNotNull(type) && "add".equals(type))<br><wbr><wbr> {<br><wbr><wbr><wbr><wbr><wbr> add(s);<br><wbr><wbr><wbr><wbr><wbr> result = "添加成功";<br><wbr><wbr> }<br><wbr><wbr> ......................................更新操作<wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>return result;<br><wbr>}</wbr></wbr></wbr></wbr>
<wbr></wbr>
<wbr></wbr>
有些很灵活较,较复杂的查询,五花八门的,干脆就在dao里面写好,Service直接调用好了^ ^。
<wbr></wbr>
本文还会再补充。
分享到:
相关推荐
1.1.1 J2EE开发者的一天 1.1.2 Spring的承诺 1.2 Spring是什么 1.3 开始Spring之旅 1.4 理解反向控制 1.4.1 依赖注入 1.4.2 IoC应用 1.4.3 企业级应用中的IoC 1.5 应用AOP ...
该案例采用目前最流行、最规范的java ee架构,整个应用分为jpa实体层、eao层、业务逻辑层、mvc层和视图层,各层之间分层清晰,层与层之间以松耦合的方法组织在一起。该案例既提供了ide无关的、基于ant管理的项目源码...
3.10. 以J2EE RAR文件的形式部署Spring ApplicationContext 3.11. 基于注解(Annotation-based)的配置 3.11.1. @Autowired 3.11.2. 基于注解的自动连接微调 3.11.3. CustomAutowireConfigurer 3.11.4. @...
Struts2只是起到一个数据接收和转接的功能,就是Controller控制器,而传来数据的页面叫view显示层,Struts2将数据提交给进行处理的类叫Model模型层,专门进行数据处理和数据库的连接。 heap和stack有什么区别? 答:...
框架一般处在低层应用平台(如J2EE)和高层业务逻辑之间的中间层。??软件为什么要分层???为了实现“高内聚、低耦合”。把问题划分开来各个解决,易于控制,易于延展,易于分配资源…总之好处很多啦:)。??3.以下...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有...
13、在DAO中如何体现DAO设计模式? 14、spring+Hibernate中委托方案怎么配置? 15、spring+Hibernate中委托方案怎么配置? 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类...
为能和大家能共同探讨"设计模式",我将自己在学习中的心得写下来,只是想帮助更多人更容易理解 GoF 的《设计模式》。由 于原著都是以C++为例, 以Java为例的设计模式基本又都以图形应用为例,而我们更关心Java在中间件等...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有...
3.10. 以J2EE RAR文件的形式部署Spring ApplicationContext 3.11. 基于注解(Annotation-based)的配置 3.11.1. @Autowired 3.11.2. 基于注解的自动连接微调 3.11.3. CustomAutowireConfigurer 3.11.4. @...
使用JPA访问数据库 第12章 整合其他ORM框架 第4篇 业务层应用 第13章 任务调度和异步执行器 第14章 JavaMail发送邮件 第15章 在Spring中使用JMS 第16章 在Spring中开发Web Service 第17章 使用...
使用JPA访问数据库 第12章 整合其他ORM框架 第4篇 业务层应用 第13章 任务调度和异步执行器 第14章 JavaMail发送邮件 第15章 在Spring中使用JMS 第16章 在Spring中开发Web Service 第17章 使用...
使用JPA访问数据库 第12章 整合其他ORM框架 第4篇 业务层应用 第13章 任务调度和异步执行器 第14章 JavaMail发送邮件 第15章 在Spring中使用JMS 第16章 在Spring中开发Web Service 第17章 使用...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有...
13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托方案怎么配置? 123 16. hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集...