在分模块开发时,当新增一条记录时,记录的id是在dao层去做还是在service层区做? [问题点数:100分]

Bbs1
本版专家分:39
结帖率 98.26%
Bbs1
本版专家分:0
Bbs10
本版专家分:104886
Blank
探花 2012年 总版技术专家分年内排行榜第一
Blank
铜牌 2012年8月 总版技术专家分月排行榜第三
2012年7月 总版技术专家分月排行榜第三
Blank
红花 2014年8月 高性能开发大版内专家分月排行榜第一
2013年11月 高性能开发大版内专家分月排行榜第一
2012年12月 Java大版内专家分月排行榜第一
2012年11月 Java大版内专家分月排行榜第一
2012年10月 Java大版内专家分月排行榜第一
2012年9月 Java大版内专家分月排行榜第一
2012年8月 Java大版内专家分月排行榜第一
2012年7月 Java大版内专家分月排行榜第一
2012年6月 Java大版内专家分月排行榜第一
2012年5月 Java大版内专家分月排行榜第一
2012年4月 Java大版内专家分月排行榜第一
2012年3月 Java大版内专家分月排行榜第一
2012年2月 Java大版内专家分月排行榜第一
2012年1月 Java大版内专家分月排行榜第一
整合ssm框架:在maven中分模块(Dao,Service,Controller)管理
整合spring + springmvc +mybatis Dao层:整合spring和mybatis需要的jar包: (1) mybatis的jar包 (2)spring的jar包 (3) spring和mybatis的整合包 (4)mysql的数据库驱动 (5)数据库连接池 配置文件 (1) mybatis的配置文件:SqlMapConfig.xml (2) spring的配置文件
SSM框架根据id删除一条信息
上一篇写了批量删除,现在写只删除<em>一条</em>信息的代码! 我的代码是运用ajax实现完成的交互~ 在控制器中的代码如下: /** * 删除<em>一条</em>信息 * @param <em>id</em> * @return */ @RequestMapping(&quot;deleteById&quot;) @ResponseBody public String deleteById(Integer <em>id</em>...
DAO层单元测试
今天我将展示一下我是如何在实际中对<em>dao</em>进行单元测试的首先我们来确认一下<em>dao</em>需要什么样的环境,我的<em>dao</em>是用Spring+hibernate来构建的,而对应的数据源是oracle9。所以要进行<em>dao</em>的测试我需要从Spring的连接oracle的context中获取<em>dao</em>的实例出来,这里我使用的是spring-mockspring-mock使用比较简单的,只需要设置spring的配置文件路径就可以...
插入数据:返回记录id遇到的问题
<em>service</em>层的写法 <em>dao</em>层写法: xml中的写法: 但是返回包错: 2018-01-13 11:16:46,303 ERROR [500.jsp] - Mapper method 'com.thinkgem.jeesite.modules.course.<em>dao</em>.CourseTermTimeDao.insertAndGetId' has an unsupported r
为何有DAO与Service层?为何先搞Da…
我们都知道有了Hibernate后,单独对数据的POJO封装以及XML文件要耗损掉一个类(Orz意思是你需要精力写一个类)。然后,在大部分的服务中,我们又需要单独写一个Dao接口,并加个DaoImpl实现来操作数据库(好吧,再耗损2个类)。紧接着,我们发现其实Service层也要单独写一个类(再加1个)。   一共4个类外加1个xml……这不是作死么,5个文件。人家好端端地写PHP可能在一个php
[随记]被区分对待Manager和Service层头疼了两天
本打算在架构整理时使用类似Struts的DispathAction的功能,使用一个参数转发来决定调用Service的方法。因为DispathAction在struts的意图就是减少出现的类。但是想来想去,这样的话就必须多实现一个Manager层了,每一个Service都必须通过Manager来调用,多了很多近乎“光秃秃”代码的Proxy类,仅做一下转发的Manger。如果以后维护起来,那么页面修改
SSH底层DAO实现添加功能
public boolean insert(Object obj,String table,String[] array1,String[] array2,String[] array3,Integer[] array4,String[] array5,Date[] array6) { Class model; try {//这里我利用上了反射机制 model = C
oracle及mysql+mybatis新增一条记录并获取该记录id
在特定的业务需求中,我们有时需要获取刚<em>新增</em><em>记录</em>的<em>id</em>,在mybatis框架下可以通过<em>id</em>Property配置获取到,而对于mySQL和oracle数据库,获取方法有一点区别,mySql可以通过last_insert_<em>id</em>获取,oracle则通过seq.nextval获取,获取方式如下: 一:mysql获取<em>新增</em><em>记录</em><em>id</em>的例子 Mybatis映射文件中SQL语句: in
使用SSH中, service层直接调用service还是dao层,哪个更合理?
最近公司做项目时,遇到问题,在保存场景时需要一起保存其五类属性至各自属性表中,需要决定在场景的<em>service</em>模块调用属性模块的<em>service</em><em>还是</em><em>dao</em>,经查询,最终调用<em>service</em>层方法解决。原因如下: 按我的经验,<em>service</em> a不能调用b的<em>dao</em>层,只能调用b的<em>service</em>层实现业务。 因为b的<em>service</em>是对<em>dao</em>的CRUD封装,如果是单库的话<em>service</em>或许只是<em>dao</em>的代理,
ecache控制标签放在service还是dao
ecache控制标签放在<em>service</em><em>还是</em><em>dao</em>层 1. <em>dao</em>层 @Repository public class DianliDataDaoImpl extends BaseDaoImpl implements DianliDataDao { @Overr<em>id</em>e // @Cacheable(value = "dianl<em>id</em>ushuCache", key = "#days"
Dao层,Service层,Servlet层运用的自我理解
Dao层 先声明一个接口类,类里声明一些将会用的方法, 同一层内写一个实现这个接口类的类,重写接口类里的方法 方法主要是处理数据的方法, public interface IStuClassDao { public List findAllStuClassInfo(); public Map findStuClassById(int classId) ; pu
java中dao层和service层的区别,为什么要用service
读了下面的文章 让我豁然开朗我能不能理解 ssh中<em>service</em>就相当于与jsp+servlet+<em>dao</em>中的servlet???转文: 首先解释面上意思,<em>service</em>是业务层,<em>dao</em>是数据访问层。 呵呵,这个问题我曾经也有过,记得以前刚学编程的时候,都是在<em>service</em>里直接调用<em>dao</em>,<em>service</em>里面就new一个<em>dao</em>类对象,调用,其他有意义的事没做,也不明白有这个有什么用,参加工作久了以
hibernateDAO层基本的增删改查
完整的项目放在了我的github上 hibernate版本1.4 下面是userDAO 即对user表进行增删改查 public class UserDAO { public static vo<em>id</em> insertUser(User user) { Transaction tx = null; try { Session session = HibernateSe
写项目的时候是先写Controller还是pojo还是dao》???
找了一下并没有具体的答案,说一下个人的见解 如果有具体的需求那应该是先需求分析,构建pojo和<em>dao</em>层,然后进行<em>service</em>和Impl的设计,这样能保持良好的延展性,但相反的是在实现特定功能的时候效果不好。 而对应某类特殊的功能,先从跳转的角度考虑的话应该先设计controller,但先设计controller的缺陷就是设计出的serivece和<em>dao</em>复用性不强,容易出现相同的功能写多个函数...
微服务(四)--dao层一
目录在众多的orm框架中 ,mybatis 和 jpa 是我很喜欢的两个框架,我们试着将 mybatis和jpa 同时 引入到 工程中,mybatis负责复杂查询,jpa负责基本的crud 和排序分页之类的底层建表规范数据库是 mysqlcreate table T_DEMO_SAMPLE ( ID bigint(20) not null auto_incr
搭建DAO层和Service层代码
第一部分建立实体和映射文件   1 通过数据库生成的实体,此步骤跳过,关于如何查看生成反向工程实体类查看SSH框架搭建教程-反向工程章节     Tmenu和AbstractorTmenu是按照数据库表反向工程形成的JAVA实体; 在形成实体的时候注意 1 命名空间 2 要注意要把实体映射文件添加到Hibernate的配置文件写入,分为如下两种情况,一般S
SSH中为什么action需要用多例而dao层和service层为什么就用单例就可以
很简单的道理,就跟你自来水一样,有很多的水龙头,但水管只有一个。 为啥要很多水龙头,因为有多个人同时用;为了避免长队,只能这样来分担压力 为啥只有一个水管,易维护,集中处理。 使用单例,是由于没必要每个请求都新建一个对象,这样既浪费CPU又浪费内存;之所以用多例,是为了防止并发问题;即一个请求改变了对象的状态,此时对象又处理另一个请求,而之前请求对对象状态的改变导致了对象对另一个请求做了错误
hibernate条件查询service层和daoceng底层封装
用Hibernate写底层接接口的时候,为了使<em>dao</em>层的代码便于维护,增加代码的复用性,会写一个<em>dao</em>层的基类以及基类的接口。 在这里我举一个通过ID查询实体的方法基类的写法: 用ID查询收据库得到实体的方法:(调用<em>dao</em>层基类) public vo<em>id</em> findObjectById() { IElecTextDao elecTextDao=(IElecTextDao) Servi
Hibernate和Spring整合的时候,事务应该放在Service还是Dao
1、Hibernate和Spring整合的时候,事务应该放在Service<em>还是</em>Dao 2、最佳实践      事务的管理应该放在Service 3、放在Service层的原因       因为一个Service可能会调用多个Dao去操作数据库。如果在一个方法里面使用了两个<em>dao</em>,其中一个<em>dao</em>执行完成后,发生了异常。另一个<em>dao</em>还没有执行。这个时候应该让事务回滚。如果事务的管理放在了d
单元测试总结:Dao层、Service层和Controller层
对Dao层、Service层、Controller层进行单元测试,都需要加入如下注解: @ContextConfiguration({&quot;classpath*:/conf/applicationContext.xml&quot;, &quot;classpath*:/conf/spring-mvc.xml&quot;}) @RunWith(SpringJUnit4ClassRunner.class) //调用Spri...
为什么action使用的多例模式,但是service层和dao层用的是单例模式
使用单例和多例的判定条件是并发访问时会不会对类中公共属性进行修改。如果有可能修改,那就最好用多例,否则会出现各种异常情况。 action中一般会有前端对应的属性,这个一般是action的成员变量,如果是单例访问,所有的访问公用一个action实例对象,当然也公用里面的成员变量和方法,在使用成员变量时就有可能出问题了,比如多个请求同时对同一个属性进行修改,那不就乱了?因此在action层采用多例来
同一个service调用多个dao的事务问题
昨天发现在用一个 <em>service</em> 中 调用 多个 <em>dao</em> 的时候,事务不能正常处理,数据库不能回滚查阅了一些资料,开始以为是对异常捕捉的问题参见:http://dev.csdn.net/article/82/82479.shtm 于是在action中也对<em>service</em> 的异常进行捕捉,但是无效. 又再次GOOGLE,在 http://www.javaeye.com/topic/1736
spring实现service层日志管理
//1.自定义注解 package com.zipx.util.systemlog; import java.lang.annotation.Documented;   import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotat
Spring的事务关于配置到servicedao中的区别
Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性。 事务得根据项目性质来细分:事务可以设置到三个层面(<em>dao</em>层、<em>service</em>层和web层)。  第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。  第二:<em>service</em>层事务,这是一常见的事务划分, 将事务设置在业务逻辑上,只要业务逻辑出错或异常就事
事务为什么加在service层而不加在dao
**事务为什么加在<em>service</em>层而不加在<em>dao</em>层**事务注解 @Transactional一般的话都加在<em>service</em>层,下面是我的理解。什么是事务?在数据库中,所谓事务是指一组逻辑操作单元即一组sql语句。当这个单元中的一部分操作失败,整个事务回滚,只有全部正确才完成提交。判断事务是否配置成功的关键点在于出现异常时事务是否会回滚
spring事务管理与servicedao做try……catch异常抛出
在配置了事务代理的Service业务逻辑实现类的方法里,若将异常捕获,并且在catch块中不对事务做显式提交(或其他应该做的操作如关闭资源等)=生吞掉异常;         spring的事务边界是在调用业务方法之前开始的,业务方法执行完毕之后来执行commit or rollback(Spring默认取决于是否抛出runtime异常或unchecked异常)。        如果抛出ru
Spring企业课五,spring+hibernate实现dao层,service层以及事务自动管理
在前一节的学习中,我们用hibernate实现了<em>dao</em>层。但是我们在做项目时,不只有<em>dao</em>层,还有<em>service</em>层。同时,我们还需要考虑到对数据库操作时,事务回滚等一系列问题。原本需要我们自己处理,但现在我们把这些工作交给框架来完成。我们需要bean,<em>dao</em>,servicc这三个包。bean我们还使用account@Entity @Table(name=&quot;tbl_account&quot;) public ...
利用hibernate对dao层和service层的重用
如下<em>dao</em>层的重用: baseDao
mvc dao层、service层 到底怎么写?
首先解释面上意思,<em>service</em>是业务层,<em>dao</em>是数据访问层。 呵呵,这个问题我曾经也有过,记得以前刚学编程的时候,都是在<em>service</em>里直接调用<em>dao</em>,<em>service</em>里面就new一个<em>dao</em>类对象,调用,其他有意义的事没做,也不明白有这个有什么用,参加工作久了以后就会知道,业务才是工作中的重中之重。 我们都知道,标准主流现在的编程方式都是采用MVC综合设计模式,MVC本身不属于设计模式的一种,它描
使用Spring的Service注入Dao接口需要注意的细节问题
... UserService] found for dependency: expected at least 1 bean which qualifies as autowire cand<em>id</em>ate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowi
【心得】DAO层和Service层
DAO层和Service层联系与对比 在MVC和三层框架里的DAO大层分为DAO层和DAOImpl层,Service大层分为Service层和ServiceImpl层;有时候感觉没有那么大必要,分这么多层,太麻烦,有的一个层才写一两句话,这个怎么理解呢,好比一本书,写那么多页,其实也可以把所有的内容都写在一张纸上,只不过不方便,不好找。有目录,有页码,方便查找,修改,维护; 我的结构目录如下:
Re: 讨论一下 cache 应该放在 service还是 dao 层吧
Cache 这个东西,看似简单,但是具体实施起来却是很麻烦,有许多方面的因素需要考虑,很多实施不好的 cache 会成为系统故障和维护噩梦的重要源头。 所以我的原则是,只在一个层面上提供 cache 功能,其它的层面都不提供,以避免其复杂性并且降低耦合性。 就像各位所讲到的那样,cache 包括很多层面,而且会有一些特殊情况,这些应改需要根据具体情况具体分析了。[color=blue]这里我主...
关于ssh框架的servicedao的注入问题
项目用到的ssh框架,对此不太熟悉,struts2比较生疏,接触新项目的时候遇到了许多基础的问题还不知道如何解决,<em>记录</em>下以后备用。 一个myTest的增删改差,action文件写在user包下面了,所以后面的文件都写在user包下面,以防注解扫描不到。 在userAction.xml配置文件中加上 配置,因为action中加了myTestService注解,所以在Action
spring quartzy的spring注入问题(dao层和service层)
许久没有写博文了,今天来写写,毕业设计中遇到的某个小问题,及解决方法。 毕业设计中涉及到spring的定时器quartzy的使用, 遇到的问题是:quartzy中不能使用spring注入的方式注入<em>dao</em>层和<em>service</em>层,原因是spring在加载的时候先加载quarzy,后加载bean。查看了一下源代码:org.springframework.scheduling.quartz.JobDetail
基于javaEE项目中Dao层,Service层,等的总结
MVC结构: web:客户端网页,是表层的东西,可接收和返回数据给用户 domain:主控制层,用户数据库交互的核心中转站 <em>service</em>:业务逻辑层,处理数据逻辑,验证数据 <em>dao</em>:持久层,读写数据库 web发出请求—&amp;gt;domain接收控制数据转向—&amp;gt;<em>service</em>验证数据正确—&amp;gt;<em>dao</em> Dao层:使用Hibernate连接数据库,操作数据库(添.删.改.查) S...
十四、WEB项目开发之合理规划Controller层、Service层、Dao层的一点小感悟
  最近在开发项目的时候,遇到一个问题:   一般来说Controller层控制视图层,向前端返回影响前端视觉效果的数据。Controller层直接与Service层交互,通过Service层返回的一些状态变量,决定向前端返回什么样的状态码。Service层最简单的状态变量就是“true”和“false”,比如插入成功<em>还是</em>失败。但有时候仅仅靠这两个状态变量,明显无法满足需求,比如我在插入之前,要...
JDBC中DAO+service设计思想
一.DAO设计思想 a) Data access Object(数据访问对象):前人总结出的一种固定模式的设计思想。   高可读性、   高复用性、   高扩展性、 b) JDBC代码实现的增删改查操作是有复用需求的。所以需要将对数据库的增删改查操作进行封装。 c) DAO类:特殊类。只对对数据库进行CRUD(增删改查)的操作进行具体的封装。 d) 注意:DAO类的个数取决于ta
SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层
SSM是sping+springMVC+mysql集成的框架。 MVC即model view controller。 model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。 <em>service</em>层。存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法中需要导入mapper层,mapper层是直接跟数据库打交...
SSM框架下,spring中servicedao层的关系
【部分转载】1、java web 中<em>dao</em> 层和<em>service</em>层都使用接口,是否是为使用接口而使用接口?一个<em>dao</em>或者一个<em>service</em>都是一个接口,然后再一个类去实现,为什么不直接使用一个类呢?在入门级(单表)的SSM+maven代码里面,我们甚至可以看到<em>dao</em>和<em>service</em>的接口类中代码内容都是一样的,这个作何理解?java web中的三层架构:其中,表示层一般是采用 MVC 架构模式,业务...
springmvc 中dao层和service层的区别
springmvc 中<em>dao</em>层和<em>service</em>层的区别
关于Mybatis中foreach的用法以及与service中循环调用dao层中的差异
导读: 在实际开发过程中遇到需要批量插入、批量更新、批量删除等操作,纠结于是在<em>service</em>层中直接调用<em>dao</em>层的方式<em>还是</em>直接使用Mybatis中的标签,因此特地做了一个实验。 做两个批量插入操作,一个是在<em>service</em>层中循环调用<em>dao</em>层的方法,另一个是在Mybatis中使用标签做插入操作。 代码如下:<em>service</em>层对应的代码: public
DAO与Service层的泛型抽取与实现
1、设计 BaseDao 与 BaseDaoImpl 1)设计接口 BaseDao 每个实体都应有一个对应的Dao接口,封装了对这个实体的数据库操作。在每个Dao接口中都应有一个基本的增删改查的方法,但每个Dao接口中都写一遍就是重复的代码,可以把这些方法抽取到一个父接口中,定义为: 1 package com.atguigu.surveypark.<em>dao</em>; 2 import jav
controller层和service层的作用
进入开发行业以来,异常,日志,业务层次划分等等看似简单的问题却让我琢磨了很久,也切身体会到工作经验不仅仅是你技术上的累积,也包含很多类似这种实际工作中的细节问题的处理,而这些却是在课堂上学不会的,只有你真的经历过了,你才会深刻的理解为什么底层异常要抛,为什么有些代码应该写在<em>service</em>而不是controller层。下面我总结了几个自己这一年来常常遇到的问题,并谈谈一些自己的看法,当然随着经验的累...
使用SSM三大框架开发项目时,创建的各个层是干什么用的?Controller层、Service层、Mapper层、Model层、Entity层、Dao层各有什么作用?
SSM是sping+springMVC+mysql集成的框架。 MVC即model view controller。 model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。 <em>service</em>层。存放业务逻辑处理,也是一些关于数据库处理的操作,其主要是存放了查询数据的各种方法,但它不是直接和数据库打交道,他有一个接口和还有接口的实现方法,在接口的实现方法中需要导入map...
根据章节id查找字段信息(Action+Service(Manager) +Dao三层的功能理解)
1、Dao层实现数据库查询方法,返回值类型为List泛型数组 //根据章节ID查询字段信息 public List searchZdList(String zj<em>id</em>) { String hql = "from ShfwZlbdZd t where t.zj<em>id</em>=? order by t.xh asc"; return getHib
Java中dao层和service层的区别
今天看了一篇文章,写的是关于Java中<em>dao</em>层和<em>service</em>层的区别,写的是相当好。忍不住跟大家分享。 <em>service</em>是业务层,<em>dao</em>是数据访问层。 记得以前刚学编程的时候,都是在<em>service</em>里直接调用<em>dao</em>,<em>service</em>里面就new一个<em>dao</em>类对象,调用,其他有意义的事没做,也不明白有这个有什么用,参加工作久了以后就会知道,业务才是工作中的重中之重。 我们都知道,标准主流现在的编程方式
mybatis 在dao层插入数据, 返回了影响的行数, 但是数据库里面有看到数据
mybatis,  在批量插入数据的时候, insert into  返回了影响的行数, 但是查数据库一直是没有<em>记录</em>的. 如果此时最后<em>一条</em>数据的ID为20的话,  调用insert into, ,此时查询数据库, 发现数据<em>还是</em>显示20条, 但是直接在数据库里进行手动执行<em>一条</em>insert into的时候, 然后select  你会发现, 此时最后<em>一条</em>数据的ID为41,
JAVA SSH开发架构中Action层,Service层,modle层,Dao层的功能区分
首先这是现在最基本的分层方式,结合了SSH架构。modle层就是对应的数据库表的实体类。Dao层是使用了Hibernate连接数据库、操作数据库(增删改查)。Service层:引用对应的Dao数据库操作,在这里可以编写自己需要的代码(比如简单的判断)。Action层:引用对应的Service层,在这里结合Struts的配置文件,跳转到指定的页面,当然也能接受页面传递的请求数据,也可以做些计算处理。
在不是控制层里面controller里面使用service或者dao。可以讨论一下
    首先说一下ApplicationContext这个类,bean工厂,applicationContext说白了就是对beanFactory的扩展,也就是一个spring容器,而且applicationContext是单例的,项目中主要包含一个webApplicationContext和spring的DispatchServlet的一个容器。      配置一下,就这么一句话在spring里...
DAO层、model层、service层的理解
mvc分层中的各个层的含义,即用途 DAO 即data Access Object 即数据访问对象,在DAO层实现到数据库的交互, model层中包含的是一些实体对象,如Student对象, <em>service</em>主要是调用DAO中的save ,delete,update,select 等方法,实现对象数据的的操作
@Service、@Repository注解是放到service或者dao类的实现类还是接口类中
@Service、@Repository注解是放到<em>service</em>或者<em>dao</em>类的实现类<em>还是</em>接口类中 应该很多刚开始接触Spring和springMVC的小白,都会像我当时学习的时候一样,心理都会有这么一个问题,@Service、@Repository注解是放到<em>service</em>或者<em>dao</em>类的实现类<em>还是</em>接口类上面?会提出这个问题,一说明你是一个会思考的人,而说明你对接口的概念以及对Spring的IOC思...
普通类注入service层和dao
1,写一个工具类SpringTool: package com.zhiyu.util; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationCon...
sql是不是可以写在service层?虽然service是业务层
我记得我曾经学javaweb的时候,也是被这个问题困惑过大半年,<em>service</em>层到底要不要出现sql或者Hibernate的hql语句? 我曾经有和你一样的困惑,比如有一个UserDao的接口,假如我想查询User,根据Id查询可能UserDao就需要设置一个findUserById(Integer <em>id</em>)这样的方法,根据用户名查询就是findUserByName(String name),根据
DAO层、Service层、Controller层、View层介绍
DAO层 DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。  Service层 Ser
dao层和service层的同时存在的意义
使用<em>service</em>层接口(实现了某个逻辑的代码的组合)是为了让表示层不依赖于业务层的具体实现; 使用<em>dao</em>层接口(做数据库读写的)是为了让业务层不依赖于持久层的具体实现,这样就能实现Spring IOC 的最大功能化。
SSH 中spring配置文件DAO层配置出错
Failed to convert property value of type [$Proxy13] to required type [com.llm.<em>dao</em>.UserDAOImpl]\; 找不到问题代码了,因为已经解决了。。。大概就是因为自己写的DAO层的文件名是UserDAO而不是UserDao,所以在spring配置文件applicationContext.xml中会对UserDAO进行...
dao层一般是不是抛运行时异常比较好啊
<em>dao</em>层一般是不是抛运行时异常比较好啊5 <em>dao</em>层一般是不是抛运行时异常比较好啊 Hibernate  2009年7月15日 21:47 tsxm  2  0 0 1 添加评论 关注(0) 5个答案按时间排序按投票排序 00 DAO不要抛 Checked Exception, 因为一般
JavaWeb三层架构中Service和Dao层对象单例化可行性
声明:以下个人观点,仅作参考;    阅读正文的前提知识:   一. 单例模式:   单例概念(百度): 单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。 Java中的单例模式: 从项目开始到结束, 某一Java类仅产生一个实例对象; java中的实例一般通过ne...
利用spring AOP原理 实现 DAO层SQL的监控,辅助开发
公司项目大部分采用SpringMVC +Spring-JDBC框架来搭建web项目,每次需要分析代码的SQL的时候,都需要将代码打上断点,运行程序,定位到SQL,然后粘到对应的查询工具上进行查询,查询期间还要手动替换 上查询参数。这种做法做多了,令人生厌,所以利用AOP原理,写一个SQL调试管理小功能。以下为项目<em>dao</em>层的简单接口定义: public interface BaseDao {publ
maven -ssm中dao层配置文件
这种配置方式需要将<em>dao</em>层接口和mapper的xml文件放在同一个包下。
Dao、Service为什么设计成单例模式
今天问道我这样一个问题: 设置为单例模式前提是什么? 没有成员变量。 那Dao、<em>service</em>成有成员变量吗? 有。 那Dao、<em>service</em>层是不是单例模式? 是。那么问题就来了,Dao、<em>service</em>有成员变量为什么还要把他们设计成成员变量? 因为我们只是调用Dao、<em>service</em>并没有对其进行修改。所以可以设计为单例模式。
DAO层,Service层,Controller层、View层协同工作机制
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。 Service层:Serv
spring使用AOP技术对DAO层操作进行增强功能
AOP的概述1. 什么是AOP的技术? * 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程 * AOP是一种编程范式,隶属于软工范畴,指导开发者如何组织程序结构 * AOP最早由AOP联盟的组织提出的,制定了一套规范.Spring将AOP思想引入到框架中,必须遵守AOP联盟的规范 * 通过预编译方式和运行期动态代理实
Spring配置事务在DAO层和SERVICE层(事务在service中的实现)
Spring通过AOP实现声明式事务管理。通常通过TransactionProxyFactoryBean设置Spring事务代理。我们需要一个目标对象包装在事务代理中。这个目标对象一般是一个普通Java对象的bean。当我们定义TransactionProxyFactoryBean时,必须提供一个相关的 PlatformTransactionManager的引用和事务属性。 事务属性含有上面描述的事务定义。 PlatformTransactionManager: Hibe
Java分层思想:Action层, Service层 ,modle层 和 Dao层的功能区分
Dao主要做数据库的交互工作:DAO层中封装了数据库的增删查改方法 一般分DAO接口(定义数据增删查改操作)和DAOImpl实现类(具体实现增删查改方法) Model 是模型 存放你的实体类:存放类似JavaBean的类,对外用get和set方法访问Service 做相应的业务逻辑处理:Action是一个控制器:一般放main方法执行程序 调
Spring配置事务在Dao层和Service层
【转载自http://www.blogjava.net/hk2000c/archive/2007/11/01/157508.html】  【感谢原作者:hk2000c】  Spring通过AOP实现声明式事务管理。通常通过TransactionProxyFactoryBean设置Spring事务代理。我们需要一个目标对象包装在事务代理中。这个目标对象一般是一个普通Java对象的bean。当我们
关于Dao层和service层的接口问题
在项目中发现Service层每个实现类都有一个接口,网上搜搜发现Dao层也存在这样的情况。在我们项目中,我们使用的是Hibernate原生的Dao,并没有添加额外的接口。而我们的<em>service</em>层中业务实现类和接口在绝大多数的业务场景中都是一一对应的,没有接口是有多个公共实现类的,那么我们的接口设计有什么意义呢?我现在只能想到一下几个缺点:1. 维护繁琐。如果实现类的方法需要做涉及到参数或者方法名称...
maven daoservice工程,spring 扫描jar中配置文件nullpointer的问题
今天试着用spring maven hibernate搭建了mvc项目时, <em>dao</em>,<em>service</em>分别作为两个子工程. <em>service</em>调用<em>dao</em>. 但是不太顺利. <em>dao</em>直接运行mvn test是可以通过的. 当用<em>service</em>调用<em>dao</em>时候, 在<em>service</em>工程运行mvn test时, 报null指针异常. 查了下是因为<em>dao</em>作为jar程序聚合进了<em>service</em>, spring扫面实体类时,
SpringBoot 多模块 Dao 层测试
     源码下载地址: 链接: https://pan.ba<em>id</em>u.com/s/1v5FmbEvWtQXmv1DGnIOPvw 提取码: cxtn      CSDN下载: https://download.csdn.net/download/zcf980/10719897      在网上找了很久都没找到关于SpringBoot多模块的有效单元测试方法, 后来自己摸索了很久才解决, 写两篇...
Action+Service +Dao三层的功能划分
1. Action/Service/DAO简介:       Action是管理业务(Service)调度和管理跳转的。       Service是管理具体的功能的。       Action只负责管理,而Service负责实施。       DAO只完成增删改查,虽然可以1-n,n-n,1-1关联,模糊、动态、子查询都可以。但是无论多么复杂的查询,<em>dao</em>只是封装增删改查
MyBatis往MySQL数据库中插入一条记录,返回该条记录的自增id
使用MyBatis往MySQL数据库中插入<em>一条</em><em>记录</em>后,需要返回该条<em>记录</em>的自增<em>id</em>先看插入的配置文件:在insert的标签里加两个属性:useGeneratedKeys=&quot;true&quot;         keyProperty=&quot;<em>id</em>&quot;   ,这个keyProperty的<em>id</em>就是我们要返回的主键<em>id</em>&amp;lt;insert <em>id</em>=&quot;addMessge&quot; useGeneratedKeys=&quot;true&quot; key...
Spring Web 项目给Service层和Dao层创建接口的意义
对于在web 项目中,Service层和Dao层用接口来维护。相信有很多人都会这么认为:我做了几年项目,从没发现业务代码中Service或Dao接口有第二个实现类。写一个方法需要先在接口声明一次,再实现一次,很麻烦,不如直接实现。   实际意义: 接口的优势大家应该都明白:只关心接口的调用,而不用去关心内部实现;在团队开发时,可以更好的实现同步开发。提供方和使用方只要前期定义好接口,前后...
【基于SSH框架的个人博客系统04】DAO层,Service层与Action层
DAO层-数据的增删改查 J2EE开发人员使用数据访问对象(DAO)设计模式把底层的数据访问逻辑和高层的商务逻辑分开.实现DAO模式能够更加专注于编写数据访问代码。DAO层的每个类都依赖于SessionFactory,SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。同理我们需要在applicationCont
常用的增删改查的实现之dao
public interface IFoodTypeDao { //增 输入:一个对象 输出:无 vo<em>id</em> add //删 输入:<em>id</em> 输出:无 vo<em>id</em> delete(int <em>id</em>); //改 输入:一个对象 输出:无 vo<em>id</em> update(FoodType foodType ); /
MyBatis 使用逆向工程自动生成项目的实体层、dao
一、前言 之前写过一篇文章是关于MyBatis的增删改查的 点击链接可以进入之前比较 low 版本的基础CRUD 但是实际开发并不太需要写<em>dao</em>层、实体层代码的,主要就是使用了MyBatis提供的架包 点击进入 mybatis逆向工程之生成文件解释 下面给出使用逆向工程的全部过程 二、演示和代码 ①创建一个java工程 给工程起个名字,然后直接点击 finish ②创
为何有DAO与Service层?为何先搞Dao接口在搞DaoImpl实现?直接用不行吗?
  转自http://blog.sina.com.cn/s/blog_4b1452dd0102wvox.html 我们都知道有了Hibernate后,单独对数据的POJO封装以及XML文件要耗损掉一个类(Orz意思是你需要精力写一个类)。然后,在大部分的服务中,我们又需要单独写一个Dao接口,并加个DaoImpl实现来操作数据库(好吧,再耗损2个类)。紧接着,我们发现其实Service层也要单...
三层架构,service层与dao层,解耦合的方法
项目中<em>service</em> 和 <em>dao</em> 接口层有什么作用? 解耦合,程序扩展性更强 以后开发常见场景 新API 替换旧的 API,之前项目加入新 API ,修改源代码重新编译部署,不建议 优化思路:新旧替换通过配置文件替换,不改源代码,像 MySQL 登陆密码修改一样 怎么实现? 调用者(Service) 被调用者(Dao) 加入配置文件 读取配置文件的工具类 应用: <em>service</em> 中通...
记录关于jqGrid在同一个jsp中实现查询记录显示及新增和修改操作
$(function(){   $("#confirm").click(function(){ $("#fsbProvisionsAcctInfoCter").empty();  $("").appendTo($("#fsbProvisionsAcctInfoCter")); var queryArray = $('#searchForm').serializeArray(); var
mybatis,Dao层传递多个参数报错
不报错:public boolean delPurchaseDemand(Long <em>id</em>);报错:public boolean delPurchaseDemand(Long <em>id</em>,Long modifier);不报错:public boolean delPurchaseDemand(@Param("<em>id</em>")Long <em>id</em>,@Param("modifier") Long modifier);Resul
dao层方法中的@Param说明
<em>dao</em>层     xxMapper.java 1.采用@Param的方法可有多个参数 public vo<em>id</em> abc(@Param(&quot;userName&quot;) String name,@Param(&quot;password&quot;) String passWord); 而xxMapper.xml中的#{}中的参数则是根据@Param括号中的参数来获取相应的数据 &amp;lt;select&amp;gt;       ...
java EE的三层结构:web层、service层、dao
我们常常提到java EE的三层或者四层结构。 四层架构: 展示层(web层)、业务逻辑层、数据访问层、信息资源层 四层架构在是开发企业应用时使用的非常经典的划分模式。 web层负责前端展示和用户请求的处理。mvc是一个设计模式,主要用户构建用户界面,目的是把展示逻辑和逻辑分离。web层通常会使用MVC模式进行构建,经常使用的mvc框架包括spring mvc,struts等,都是在web
DAO层与Business层之间的关系
最近工作了,也发现了自己曾经认识中的一些误区,在 工作中慢慢的体会,慢慢的提升。   随着系统越来越庞大,为了让系统层次清晰,大家习以为常的为系统进行分层处理,现在很流行的也是三层架构,也就是常见的数据访问层(DAO),业务逻辑层(Business),表现层(UI)。在表现层中又常常会采用MVC模式,即Model-View-Controller。针对着不同层次结构,在相互访问操作中,用到了很多
自动生成MVC中的Service层、Dao层及Model层代码
http://blog.csdn.net/u010137431/article/details/46595487该博客中的代码
Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合
Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。 一个良好的框架可以让开发人员减轻重新建立解决复杂问题方案的负担和精力;它可以被扩展以进行内部的定制化;并且有强大的用户社区来支持它。框架通常能很好的解决一个问题。然而,你的应用是分层的,可能每一个层都需要各自的框架。仅仅解决UI问题并不意味着你能够很好的将业务逻辑和持久性逻辑和UI 组件很好的耦合。
dao层和serivce层的作用和区别
文章载来源:【http://blog.csdn.net/qq_34825926/article/details/69346084】访问数据库的传统方法 传统访问数据库的方法非常面向过程,分为以下几步 – 实例化connection – 实例化statement – 通过statement的参数sql语句访问数据库,返回数据进行处理 1 import java.sql.Statement; 2 i...
使用maven构建项目,core,dao,service分别打包
使用maven管理项目,<em>dao</em>、<em>service</em>等分开管理 搭建了私服和镜像,地址http://192.168.1.100:8081/nexus/content/groups/public,详见settings.xml 项目使用SpringMvc,数据库为MySql,测试库为springmvc_test,生产库为springmvc,ORM采用Hibernate 打成war包后,输入http://localhost:8080/helloworld/user/users,能显示生产库的内容,即为ok 本项目仅仅是示例,供学习使用 打包时候,运行clean package -DskipTests,否则报错,测试用例在eclipse中运行没问题,在打包时运行缺少jar包
DAO层最好带上try和catch
以前看视频,有个人说,正常开发,方法体基本上都要放在try catch中,当时也就是听着,没啥感觉。 前段时间看到知乎上一个关于try和catch的帖,问项目中到处都是try catch是不是一种常态,然后众说纷纭。。。 刚才写hql查询,把类名的首字母小写了,我当时是知道这个错误的,但没有及时改正,后来就给忘了,然后。。。就是程序出毛病了,而且我没有catch,所以搞了好久都不知道哪儿出了毛
事务注解 @Transactional一般的话为什么都加在service层而不加在dao
原文地址:https://blog.csdn.net/panyangxu/article/details/77431873 什么是事务? 在数据库中,所谓事务是指一组逻辑操作单元即一组sql语句。当这个单元中的一部分操作失败,整个事务回滚,只有全部正确才完成提交。判断事务是否配置成功的关键点在于出现异常时事务是否会回滚 事务四大特性 1. 原子性(Atomicity) 原子性是指事务是一个...
框架学习(1)——service层,dao层和service实现类进行数据库操作
浅谈对java框架设计中<em>service</em>层、<em>dao</em>层和<em>service</em>实现类作用的理解以及好处
spring单例,为什么servicedao确能保证线程安全
在使用Spring时,很多人可能对Spring中为什么DAO和Service对象采用单实例方式很迷惑,这些读者是这么认为的:     DAO对象必须包含一个数据库的连接Connection,而这个Connection不是线程安全的,所以每个DAO都要包含一个不同的Connection对象实例,这样一来DAO对象就不能是单实例的了。     上述观点对了一半。对的是“每个DAO都要包含一
sevice层和dao层的简单理解
<em>dao</em>层和<em>service</em>的简单实用的理解
java项目中有哪些层?我知道有daoservice、util,还有什么?作用都是什么?
<em>dao</em>中存放于于数据库直接接触的类,maps中存放查询时使用的sql,<em>service</em>中存放服务实现的详细方法,action中存放某个功能的整体的实现方法。action调serveice,<em>service</em>调<em>dao</em>,<em>dao</em>要用到maps中的查询语句。util中存放最基本模板,以便调用。
SSH框架 DAO注入失败 ---总结
开始运行SSH框架,发现<em>service</em>调用<em>dao</em>层时候一直报空指针错误,各种查看配置文件和调用,终于发现了问题 在action层里面写了一句this.setUserService(new UserServiceImpl()); 既然是注入,就不用new一个了 下面附上Java代码 UserAction.java private User user=new User(); priv
Mybatis的dao层,service层的封装
配置: 分别创建四个包 使用插件自动生成对应的类和bean对象 创建BaseMapper package com.shsxt.base; import org.springframework.<em>dao</em>.DataAccessException; import java.util.List; import java.util.Map; public interface BaseMapper&amp;l...
Dao 接口的基本操作
概述 传统关系型数据库定义了四种数据操作: 插入 Insert删除 Delete更新 Update查询 Query 可以说,这四种操作涵盖了所有的数据操作。并且,除了 插入 操作,所有的操作都是可以一次针对多条<em>记录</em>的。 但是,Nutz.Dao 认为从使用者的角度来看,这四种操作<em>还是</em>有所不同的。比如,查询返回的结果,很多时候仅仅是<em>一条</em><em>记录</em>。 我们需要为这种情况进行优化。所以,
SpringBoot+Mybatis整合报,service注入失败,dao注入失败,
问题:com.sun.org.apache.xerces.internal.impl.XMLEntityScanner$1 会导致,报,<em>service</em>注入失败,<em>dao</em>注入失败, 学习springboot整合mybaits.,根据demo做. 看整个流程都没问题了,因为配置本身就不多. 配置文件主要东西都在application.properties中了.
关于使用ssh框架时,pojo、daoservice三层的关系 .
文章来源于网络,仅用于学习: DAO是底层与数据库直接交互的部分,serivce是又对DAO进行了一次封装。而<em>service</em>是暴露给action的部分。aciton里面调用<em>service</em>,<em>service</em>调用DAO。 1,<em>dao</em>和<em>service</em>对应        一般情况
Dubbo(三) 聚合工程之Service层接口Demo
Dubbo(三) 聚合工程之Service层接口Demo
文章热词 池化层原理 卷积神经网络池化层类型 微信开发视图层逻辑层API开发 IPFS个人博客搭建新增文件 IPFS个人博客搭建新增目录
相关热词 c# 读数据库记录时 c++ sqlite3 查询一条记录 c++当有复制构造函数时 android 当第一次启动服务时 学习python时遇到的问题 去做区块链的公司上班
我们是很有底线的