Dao 处理

时间:2022-09-06 15:32:29

1. 写一个基础的接口和类来做基本的操作

/**
*
*/
package com.wolfgang.dao; import java.util.List; /**
* @author Administrator
*
*/
public interface IBaseDao {
public void save(Object obj);
public void update(Object obj);
public void delete(Object obj);
public <T> T findById(Class<T> className, int id);
public <T> List<T> getAll(Class<T> className);
}
/**
*
*/
package com.wolfgang.dao; import java.util.List; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; /**
* @author Administrator
*
*/
public class BaseDaoImp extends HibernateDaoSupport implements IBaseDao { public Object get(Integer id) {
return getHibernateTemplate().get(Object.class, id);
} /*
* (non-Javadoc)
*
* @see com.wolfgang.dao.IBaseDao#save(java.lang.Object)
*/
@Override
public void save(Object obj) {
getHibernateTemplate().save(obj);
} /* (non-Javadoc)
* @see com.wolfgang.dao.IBaseDao#update(java.lang.Object)
*/
@Override
public void update(Object obj) {
getHibernateTemplate().update(obj);
} /* (non-Javadoc)
* @see com.wolfgang.dao.IBaseDao#delete(java.lang.Object)
*/
@Override
public void delete(Object obj) {
getHibernateTemplate().delete(obj);
} /* (non-Javadoc)
* @see com.wolfgang.dao.IBaseDao#findById(int)
*/
@Override
public <T> T findById(Class<T> className, int id) {
return (T)getHibernateTemplate().get(className, id);
} /* (non-Javadoc)
* @see com.wolfgang.dao.IBaseDao#getAll(java.lang.Class)
*/
@Override
public <T> List<T> getAll(Class<T> className) {
return getHibernateTemplate().loadAll(className);
} }

2. 具体的接口和类都继承基础的类和接口

/**
*
*/
package com.wolfgang.dao; /**
* @author Administrator
*
*/
public interface IPartyDao extends IBaseDao{ }
package com.wolfgang.dao;

import org.springframework.stereotype.Repository;

@Repository("partyDao")
public class PartyDaoImpl extends BaseDaoImp implements IPartyDao
{ }

Dao 处理的更多相关文章

  1. java中Action层、Service层和Dao层的功能区分

    Action/Service/DAO简介: Action是管理业务(Service)调度和管理跳转的. Service是管理具体的功能的. Action只负责管理,而Service负责实施. DAO只 ...

  2. DAO层,Service层,Controller层、View层 的分工合作

    DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口 ...

  3. 使用MyBatis Generator自动创建代码&lpar;dao&comma;mapping&comma;poji&rpar;

    连接的数据库为SQL server2008,所以需要的文件为sqljdbc4.jar 使用的lib库有: 在lib库目录下新建一个src文件夹用来存放生成的文件,然后新建generatorConfig ...

  4. DAO设计模式

    DAO设计模式 DAO设计模式简介: DAO设计模式可以减少代码量,增强程序的可移植性,提高代码的可读性. DAO(数据库操作对象)设计模式是 JavaEE 数据层的操作.主要由五部分组成: 1.数据 ...

  5. mybatis generator 自动生成dao层映射代码

    资源: doc url :http://www.mybatis.org/generator/ download:https://github.com/mybatis/generator/release ...

  6. 010商城项目:商品类目的选择——Dao&comma;Service&period;Action层的分析

    我们现在开始写商品类选择这个功能: 先看效果: 当我们点击"新增商品"---->"选择目录"然后从数据库中查出来数据并显示了. 我们分析数据库的那张表: ...

  7. Dao跨事务调用实现转账功能

    1.首先在数据库当中创建数据库,并且创建它的 实现类 package com.beiwo.epet.entity; public class Account { private int id; pri ...

  8. mybatis generator&period;xml 配置 自动生成model&comma;dao&comma;mapping

    generator.xml文件: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE gener ...

  9. 分享公司DAO层动态SQL的一些封装

    主题 公司在DAO层使用的框架是Spring Data JPA,这个框架很好用,基本不需要自己写SQL或者HQL就能完成大部分事情,但是偶尔有一些复杂的查询还是需要自己手写原生的Native SQL或 ...

  10. Hibernate简易原生DAO的实现

    写在最前: 初学Hibernate,在尝试把JDBC项目移植到Hibernate的过程中,碰到了不少的麻烦,最让人心烦意乱的自然是SQL语句改动造成的代码混乱.其实不难,网上的解决方案有很多, 不过. ...

随机推荐

  1. 2014-11-26----css的简介

    CSS :层叠样式表 cascading style sheets 它的作用是:美化html网页 格式:样式名:值:样式名:值:样式名:值: 注释语法:/* 注释内容 */ 选中代码按TAB,代码左移 ...

  2. Android ActionBar详解&lpar;一&rpar;:ActionBar概述及其创建

    在Android 3.0中除了我们重点讲解的Fragment外,Action Bar也是一个重要的内容,Action Bar主要是用于代替传统的标题栏,对于Android平板设备来说屏幕更大它的标题使 ...

  3. C&num; yield return 流程理解

    代码如下:  在Documents1方法中使用yield return之后, 下次在进入Documents1方法就是从上一次yield return部分执行 using System; using S ...

  4. python image show&lpar;&rpar;方法的预览问题

      在windows下面使用PIL中Image的show()函数时,执行下列代码: from PIL import Image img = Image.open("1.png") ...

  5. Lavarel artisan 命令

    [alex@iZ25c5aeyiiZ yiqizou3.0]# php artisan list Laravel Framework version Usage: command [options] ...

  6. python单列模式

    单例模式:就是永远用一个对象的实例 初级版 #初级版 class Foo(object): instance=None def __init__(self): pass @classmethod # ...

  7. &lbrack;Git&rsqb; 写文章 史上最全文献检索、阅读及管理攻略

    copy from  : https://zhuanlan.zhihu.com/p/30605683 一.查文献 首先,我认为需要常备几个体量大.文献全的数据库,有针对性找哦!下面列出了一些适合所有专 ...

  8. SpringBoot 与 Web开发

    1. SpringBoot 静态资源映射规则 webjars:以JAR包的方式引入静态资源; 所有/webjars/**,都去classpath:/META-INF/resources/webjars ...

  9. Manipulating Files

    http://linuxcommand.org/lc3_lts0050.php This lesson will introduce you to the following commands: cp ...

  10. JS排序--快速排序

    用 JavaScript 实现快速排序代码如下: /* * @author liphong * @data 2019/02/24 */ var arr = []; // 需要被排序数组 /* * 分离 ...