package com.demo.dao.impl;
import java.sql.SQLException;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.HibernateException;
import org.hibernate.LockMode;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.context.ApplicationContext;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.demo.dao.IUser;
import com.demo.domain.User;
import com.demo.service.IUserservice;
/**
* Data access object (DAO) for domain model class User.
*
* @see com.demo.domain.User
* @author MyEclipse Persistence Tools
*/
public class UserDaoImpl extends HibernateDaoSupport implements IUser {
private static final Log log = LogFactory.getLog(UserDaoImpl.class);
// property constants
public static final String NAME = "name";
public static final String AGE = "age";
public static final String PASSWORD = "password";
protected void initDao() {
// do nothing
}
public void save(User transientInstance) {
log.debug("saving User instance");
try {
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
} catch (RuntimeException re) {
log.error("save failed", re);
throw re;
}
}
public void delete(User persistentInstance) {
log.debug("deleting User instance");
try {
getHibernateTemplate().delete(persistentInstance);
log.debug("delete successful");
} catch (RuntimeException re) {
log.error("delete failed", re);
throw re;
}
}
public User findById(java.lang.Integer id) {
log.debug("getting User instance with id: " + id);
try {
User instance = (User) getHibernateTemplate().get(
"com.demo.domain.User", id);
return instance;
} catch (RuntimeException re) {
log.error("get failed", re);
throw re;
}
}
public List findByExample(User instance) {
log.debug("finding User instance by example");
try {
List results = getHibernateTemplate().findByExample(instance);
log.debug("find by example successful, result size: "
+ results.size());
return results;
} catch (RuntimeException re) {
log.error("find by example failed", re);
throw re;
}
}
public List findByProperty(String propertyName, Object value) {
log.debug("finding User instance with property: " + propertyName
+ ", value: " + value);
try {
String queryString = "from User as model where model."
+ propertyName + "= ?";
return getHibernateTemplate().find(queryString, value);
} catch (RuntimeException re) {
log.error("find by property name failed", re);
throw re;
}
}
public List findByName(Object name) {
return findByProperty(NAME, name);
}
public List findByAge(Object age) {
return findByProperty(AGE, age);
}
public List findByPassword(Object password) {
return findByProperty(PASSWORD, password);
}
public List findAll() {
log.debug("finding all User instances");
try {
String queryString = "from User";
return getHibernateTemplate().find(queryString);
} catch (RuntimeException re) {
log.error("find all failed", re);
throw re;
}
}
public User merge(User detachedInstance) {
log.debug("merging User instance");
try {
User result = (User) getHibernateTemplate().merge(detachedInstance);
log.debug("merge successful");
return result;
} catch (RuntimeException re) {
log.error("merge failed", re);
throw re;
}
}
public void attachDirty(User instance) {
log.debug("attaching dirty User instance");
try {
getHibernateTemplate().saveOrUpdate(instance);
log.debug("attach successful");
} catch (RuntimeException re) {
log.error("attach failed", re);
throw re;
}
}
public void attachClean(User instance) {
log.debug("attaching clean User instance");
try {
getHibernateTemplate().lock(instance, LockMode.NONE);
log.debug("attach successful");
} catch (RuntimeException re) {
log.error("attach failed", re);
throw re;
}
}
public static UserDaoImpl getFromApplicationContext(ApplicationContext ctx) {
return (UserDaoImpl) ctx.getBean("UserDAO");
}
// ///////////////////////////////
public void add(User user) {
// TODO Auto-generated method stub
this.save(user);
}
//login
public User find(final String name,final String password) {
// TODO Auto-generated method stub
System.out.println(name+"\t"+password);
try {
User user =(User)this.getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
// TODO Auto-generated method stub
Query query = session.createQuery("From User as user where user.name=? and user.password=? ");
query.setString(0, name);
query.setString(1, password);
return query.uniqueResult();
}
});
log.info("执行成功!");
return user;
}catch(Exception ex) {
log.error("异常:"+ex.getMessage());
return null;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
SSHDemo.rar (73个子文件)
SSHDemo
.mystrutsdata 255B
bin
.springBeans 320B
.myhibernatedata 485B
.settings
org.eclipse.jdt.core.prefs 629B
src
com
demo
dao
IUser.java 170B
impl
UserDaoImpl.java 5KB
domain
User.hbm.xml 928B
User.java 1KB
service
IUserservice.java 144B
impl
UserService.java 515B
ServiceFactory.java 734B
struts
ApplicationResources.properties 83B
action
LoginAction.java 2KB
actioForm
UserForm.java 809B
hibernate.cfg.xml 931B
applicationContext.xml 804B
.project 2KB
WebRoot
META-INF
MANIFEST.MF 39B
WEB-INF
struts-nested.tld 70KB
validator-rules.xml 13KB
struts-bean.tld 9KB
struts-html.tld 72KB
struts-logic.tld 14KB
struts-tiles.tld 8KB
web.xml 1KB
.struts-config.mex 1KB
classes
com
demo
dao
IUser.class 224B
impl
UserDaoImpl.class 6KB
UserDaoImpl$1.class 1KB
domain
User.hbm.xml 928B
User.class 1KB
service
IUserservice.class 201B
impl
UserService.class 840B
ServiceFactory.class 1KB
struts
ApplicationResources.properties 83B
action
LoginAction.class 3KB
actioForm
UserForm.class 1KB
hibernate.cfg.xml 931B
applicationContext.xml 804B
struts-config.xml 731B
lib
mysql-connector-java-3.1.13-bin.jar 446KB
commons-logging-1.0.4.jar 33KB
cglib-2.1.3.jar 244KB
dom4j-1.6.1.jar 257KB
spring.jar 2.81MB
jaas.jar 99KB
commons-beanutils.jar 160KB
xml-apis.jar 117KB
antlr-2.7.6rc1.jar 425KB
jta.jar 8KB
jakarta-oro.jar 62KB
commons-validator.jar 74KB
commons-fileupload.jar 19KB
ehcache-1.1.jar 41KB
servlet-api.jar 141KB
commons-collections-2.1.1.jar 169KB
asm.jar 25KB
commons-logging.jar 33KB
xerces-2.6.2.jar 966KB
asm-attrs.jar 16KB
jdbc2_0-stdext.jar 6KB
struts.jar 474KB
antlr.jar 344KB
commons-digester.jar 147KB
jaxen-1.1-beta-7.jar 194KB
hibernate3.jar 1.63MB
log4j-1.2.11.jar 305KB
index.jsp 1KB
sql 308B
fail.jsp 919B
success.jsp 997B
.mymetadata 294B
.classpath 3KB
共 73 条
- 1
资源评论
a252164381
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功