package com.cxstock.dao.impl;
import java.io.Serializable;
import java.sql.Connection;
import java.util.Collection;
import java.util.List;
import org.hibernate.Hibernate;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.cxstock.dao.BaseDAO;
/** 统一数据访问接口实现 */
@SuppressWarnings("unchecked")
public class BaseDAOImpl extends HibernateDaoSupport implements BaseDAO {
/** 保存或更新指定的持久化对象 */
public void save(Object obj) {
getHibernateTemplate().save(obj);
}
/** 保存或更新指定的持久化对象 */
public void saveOrUpdate(Object obj) {
getHibernateTemplate().saveOrUpdate(obj);
}
/** 删除指定ID的持久化对象 */
public void deleteById(Class clazz, Serializable id) {
getHibernateTemplate().delete(getHibernateTemplate().load(clazz, id));
}
/** 删除指定ID的持久化对象 */
public void delete(Object obj) {
getHibernateTemplate().delete(obj);
}
/** 加载指定ID的持久化对象 */
public Object loadById(Class clazz, Serializable id) {
return getHibernateTemplate().get(clazz, id);
}
/**加载满足条件的持久化对象*/
public Object loadObject(String hql) {
final String hql1 = hql;
Object obj = null;
List list = getHibernateTemplate().find(hql1);
if(list.size()>0)obj=list.get(0);
return obj;
}
/** 查询指定类的满足条件的持久化对象 */
public List findByHql(String hql) {
try{
final String hql1 = hql;
return getHibernateTemplate().find(hql1);
}
catch (Exception e) {
e.printStackTrace();
}return null;
}
/** 装载指定类的查询结果 */
public List findInProperty(String clazz, String propertyName, String value) {
String hql = "from "+clazz+" as model where model." + propertyName + " in (" + value + ")";
return getHibernateTemplate().find(hql);
}
/** 装载指定类的查询结果 */
public List findLikeProperty(String clazz, String propertyName, String value) {
String hql = "from "+clazz+" as model where model." + propertyName + " like ?";
return getHibernateTemplate().find(hql, value);
}
/** 装载指定类的查询结果 */
public List findByProperty(String clazz, String propertyName, Object value) {
String hql = "from "+clazz+" as model where model." + propertyName + "= ?";
return getHibernateTemplate().find(hql, value);
}
/** 装载指定类的查询结果 */
public List findByProperty(String clazz, String[] propertyName, Object[] value) {
String hsql = "from "+clazz+" as model where 1=1";
for (int i = 0; i < propertyName.length; i++) {
hsql += " and model." + propertyName[i] + "= ?";
}
return getHibernateTemplate().find(hsql, value);
}
/** 装载指定类的所有持久化对象 */
public List listAll(String clazz) {
return getHibernateTemplate().find("from "+clazz);
}
/** 条件更新数据 */
public int update(String hql) {
final String hql1 = hql;
return ((Integer)getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery(hql1);
return query.executeUpdate();
}
})).intValue();
}
/** 统计指定类的所有持久化对象 */
public int countAll(String clazz) {
final String hql = "select count(*) from "+clazz;
Long count = (Long)getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery(hql);
query.setMaxResults(1);
return query.uniqueResult();
}
});
return count.intValue();
}
/** 统计指定类的查询结果 */
public int countQuery(String hql) {
final String counthql = hql;
Long count = (Long)getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery(counthql);
query.setMaxResults(1);
return query.uniqueResult();
}
});
return count.intValue();
}
/** 分页装载指定类的查询结果 */
public List findInProperty(String clazz, String propertyName, String value, int start, int limit) {
String hql = "from "+clazz+" as model where model." + propertyName + " in (" + value + ")";
return this.findByHql(hql, start, limit);
}
/** 分页装载指定类的查询结果 */
public List findLikeProperty(String clazz, String propertyName, String value, int start, int limit) {
String hql = "from "+clazz+" as model where model." + propertyName + " like '"+value+"%'";
return this.findByHql(hql, start, limit);
}
/** 分页装载指定类的查询结果 */
public List findByProperty(String clazz, String propertyName, String value, int start, int limit) {
String hql = "from "+clazz+" as model where model." + propertyName + "= '"+value+"'";
return this.findByHql(hql, start, limit);
}
/** 分页装载指定类的查询结果 */
public List findByProperty(String clazz, String[] propertyName, Object[] value, int start, int limit) {
String hql = "from "+clazz+" as model where 1=1";
for (int i = 0; i < propertyName.length; i++) {
hql += " and model." + propertyName[i] + "= '"+value[i]+"'";
}
return this.findByHql(hql, start, limit);
}
/** 分页装载指定类的所有持久化对象 */
public List listAll(String clazz, int start, int limit) {
final int pStart = start;
final int pLimit = limit;
final String hql = "from "+clazz;
List list = getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery(hql);
query.setMaxResults(pLimit);
query.setFirstResult(pStart);
List result = query.list();
if (!Hibernate.isInitialized(result))Hibernate.initialize(result);
return result;
}
});
return list;
}
/** 分页查询指定类的满足条件的持久化对象 */
public List findByHql(String hql, int start, int limit) {
final int pStart = start;
final int pLimit = limit;
final String hql1 = hql;
return getHibernateTemplate().executeFind(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException{
Query query = session.createQuery(hql1);
query.setMaxResults(pLimit);
query.setFirstResult(pStart);
List result = query.list();
if (!Hibernate.isInitialized(result))Hibernate.initialize(result);
return result;
}
});
}
/** 从连接池中取得一个JDBC连接 */
@SuppressWarnings("deprecation")
public Connection getConnection() {
return getHibernateTemplate().getSessionFactory().getCurrentSession().connection();
}
/** 批量保存、修改 */
public void saveOrUpdateAll(Collection collection) {
getHibernateTemplate().saveOrUpdateAll(collection);
}
/** 调用存储过程 */
public void callProcedure(String call) {
SQLQuery query = this.getSession().createSQLQuery(call);
query.executeUpdate();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
MF00571-java web进销存后台管理系统.zip
共1596个文件
gif:904个
css:113个
class:98个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 148 浏览量
2023-09-18
11:45:56
上传
评论
收藏 29.75MB ZIP 举报
温馨提示
java web进销存后台管理系统源码 开发语言 : JAVA 数据库 : MySQL 开发工具 : Eclipse 源码类型 : WebForm 注意:不带技术支持,有帮助文件,虚拟商品,发货不退,看好再拍。 运行环境:jdk7+tomcat7+mysql+IntelliJ IDEA+maven 运用技术:spring + struts2 + hibernate 源码描述: 进货管理 销售管理 销售出库 客户退货 销售单据查询 客户退货查询 当前库存查询 库存管理 统计报表 基础资料 系统管理
资源推荐
资源详情
资源评论
收起资源包目录
MF00571-java web进销存后台管理系统.zip (1596个子文件)
TongjiBizImpl.class 8KB
BaseDAOImpl.class 7KB
RoleBizImpl.class 7KB
XsAction.class 7KB
JhAction.class 6KB
TongjiAction.class 6KB
JhBizImpl.class 6KB
DjmxDTO.class 6KB
XsBizImpl.class 5KB
SpxxAction.class 5KB
Tools.class 5KB
BsyBizImpl.class 5KB
BaseAction.class 5KB
Spxx.class 4KB
BsyAction.class 4KB
UserDTO.class 4KB
UserAction.class 4KB
DataCopy.class 4KB
UserBizImpl.class 4KB
KcAction.class 4KB
SpxxBizImpl.class 4KB
SplbBizImpl.class 4KB
DateTime.class 4KB
DqkcDAOImpl.class 3KB
Tkd.class 3KB
Ckd.class 3KB
KcDTO.class 3KB
UserMenuDTO.class 3KB
GysBizImpl.class 3KB
RoleAction.class 3KB
KhBizImpl.class 3KB
Vusermenu.class 3KB
Jhdsp.class 3KB
Tkdsp.class 3KB
Thdsp.class 3KB
Ckdsp.class 3KB
KcBizImpl.class 3KB
Thd.class 3KB
Jhd.class 3KB
GysAction.class 3KB
DqkcDTO.class 3KB
KhAction.class 3KB
GysDTO.class 3KB
KhDTO.class 3KB
Bsdsp.class 3KB
Bydsp.class 3KB
Menu.class 2KB
RoleDTO.class 2KB
ReqEncodingFilter.class 2KB
SecurityFilter.class 2KB
Users.class 2KB
Gys.class 2KB
Kh.class 2KB
SplbAction.class 2KB
TreeNodeChecked.class 2KB
LoginedCheckInterceptor.class 2KB
DataCopyAction.class 2KB
SpdwAction.class 2KB
DoubleMath.class 2KB
Byd.class 2KB
Bsd.class 2KB
TreeNode.class 2KB
SpdwBizImpl.class 2KB
SearchAction.class 2KB
Splb.class 2KB
BaseDAOImpl$5.class 2KB
BaseDAOImpl$4.class 2KB
RolemenuId.class 2KB
Page.class 1KB
Rolemenu.class 1KB
Role.class 1KB
BaseDAO.class 1KB
BaseDAOImpl$3.class 1KB
BaseDAOImpl$2.class 1KB
BaseDAOImpl$1.class 1KB
SplbDTO.class 1KB
SearchBizImpl.class 1KB
XsAction$1.class 1KB
JhAction$1.class 1023B
SpdwDTO.class 959B
Spdw.class 896B
ComboData.class 888B
Constants.class 590B
XsBiz.class 484B
JhBiz.class 483B
RoleBiz.class 465B
TongjiBiz.class 447B
BsyBiz.class 420B
GysBiz.class 411B
UserBiz.class 384B
SpxxBiz.class 334B
KhBiz.class 324B
SplbBiz.class 295B
KcBiz.class 281B
SpdwBiz.class 276B
SearchBiz.class 270B
Aaaa.class 261B
DqkcDAO.class 245B
.classpath 887B
org.eclipse.wst.common.component 554B
共 1596 条
- 1
- 2
- 3
- 4
- 5
- 6
- 16
资源评论
jane9872
- 粉丝: 108
- 资源: 7795
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功