平时我们习惯一个实体类就对应一个dao类,这样做,增删改查都大同小异,只是实体类对象不一样而已,因此,我们可以把公用的方法抽取来,建立一个IBaseDao接口,如下: public interface IBaseDao<T> { //增加 public Serializable save(T o); ...
分类:
其他好文 时间:
2016-06-10 00:59:42
阅读次数:
211
方法一: 对应的Mapper.xml 其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。 方法二:采用Map传多参数. 对应的Mapper.xml Service层调用 方法三: 对应的Mapper.xml ...
分类:
其他好文 时间:
2016-06-07 22:11:40
阅读次数:
144
基于泛型的依赖注入。当我们的项目中有很多的Model时,相应的Dao(DaoImpl),Service(ServiceImpl)也会增多。 而我们对这些Model的操作很多都是类似的,下面是我举出的一些(见名知意,其它自行脑补): 1.save2.saveAll3.findById4.update5 ...
分类:
编程语言 时间:
2016-06-07 12:42:39
阅读次数:
517
在之前的文章中总结了三种方式,但是有两种是注解sql的,这种方式比较混乱所以大家不怎么使用,下面总结一下常用的两种总结方式:
一、 动态代理实现 不用写dao的实现类
这种方式比较简单,不用实现dao层,只需要定义接口就可以了,这里只是为了记录配置文件所以程序写的很简单:
1、整体结构图:
2、三个配置文件以及一个映射文件
(1)、程序入口以及前端控制器配置 web.xml...
分类:
编程语言 时间:
2016-06-07 10:03:40
阅读次数:
327
使用hibernate开发持久层时,我们会发现:虽然entity类的含义和需求不同,其对应的Dao层类对应的方法也是不同的。但是有许多方法操作确实相同的。比如实体的增加,删除,修改更新,以及许多常用的查询方法。这些都是可复用的。因此可以把这些操作写在一个BaseDao中,其他的dao都继承于这个Da ...
分类:
其他好文 时间:
2016-06-07 06:30:34
阅读次数:
292
我先对我做的测试进行说明: 对用户注册功能的DAO层进行测试,其实就是对UserDao中的saveUser(User user) 方法进行测试。我在我的测试方法中同时也用到了UserDao中的exitUser(String username)方法进行了测试。 /** * 测试用户注册(成功) */ ...
分类:
其他好文 时间:
2016-06-03 21:01:38
阅读次数:
287
mybatis-config.xml,配置文件,用于连接数据库。底层使用的是oracle数据库的emp表 数据源类型有三种: UNPOOLED , POOLED , JNDI 。 UNPOOLED - 这个数据源实现只是在每次请求的时候简单的打开和关闭一个连接。虽然这有点慢,但作为一些不需要性能和立 ...
分类:
其他好文 时间:
2016-06-03 14:30:39
阅读次数:
291
在spring+hibernate的web项目中,处理数据层通常会使用Spring框架提供的HibernateTemplate类提供的方法。通常的用法是每一个实体类对应的去写DAO层的接口和实现类。每个实现类中都写hibernateTemp.save(entity)、hibernateTemp.up ...
分类:
编程语言 时间:
2016-06-03 09:56:56
阅读次数:
400
封装页面的信息,进行了泛型。 jsp页面auctionList.jsp Servlet页面 dao层的实现方法 dao层接口 biz层的实现方法 biz层的接口 ...
分类:
Web程序 时间:
2016-06-02 19:53:05
阅读次数:
366
Spring事务为业务逻辑进行事务管理,保证业务逻辑上数据的原子性。 事务得根据项目性质来细分:事务可以设置到三个层面(dao层、service层和web层)。 第一:web层事务,这一般是针对那些安全性要求较高的系统来说的。例如电子商务网站。粒度小,一般系统用不着这么细。 第二:service层事 ...
分类:
编程语言 时间:
2016-06-02 11:31:09
阅读次数:
162