java的criteria过时_java - Hibernate的旧版org.hibernate.Criteria API已弃用 - 堆栈内存溢出...

当我使用Hibernate 5时,它显示错误为:

2018年4月28日下午12:24:45 org.hibernate.internal.SessionImpl createCriteria警告:HHH90000022:Hibernate的遗留org.hibernate.Criteria API已弃用; 使用JPA javax.persistence.criteria.CriteriaQuery代替

@Transactional

public class AccountDAOImpl implements AccountDAO {

@Autowired

private SessionFactory sessionFactory;

@Override

public ACCOUNTS findAccount(String userName) {

// TODO Auto-generated method stub//

Session session=sessionFactory.getCurrentSession();

Criteria crit=session.createCriteria(ACCOUNTS.class).add(Restrictions.eq("user_name", userName));

//crit.add(Restrictions.eq("user_name", userName));

return (ACCOUNTS)crit.uniqueResult();

}

}

接口帐户DAO

public interface AccountDAO {

public ACCOUNTS findAccount(String userName );

}

和模型类帐户

package org.vikas.shoppingCart.entity;

import java.io.Serializable;

import javax.persistence.Column;

import javax.persistence.Entity;

import javax.persistence.Id;

import javax.persistence.Table;

@Entity

@Table(name="ACCOUNTS")

public class ACCOUNTS implements Serializable

{

private static final long serialVersionUID = 1L;

public static final String ROLE_MANAGER = "MANAGER";

public static final String ROLE_EMPLOYEE = "EMPLOYEE";

private String user_name;

private String user_password;

private boolean active;

private String user_role;

@Id

@Column(name="user_name",length=50,nullable=false)

public String getUser_name() {

return user_name;

}

public void setUser_name(String user_name) {

this.user_name = user_name;

}

@Column(name="user_password",length=20,nullable=false)

public String getUser_password() {

return user_password;

}

public void setUser_password(String user_password) {

this.user_password = user_password;

}

@Column(name="active",length=1,nullable=false)

public boolean isActive() {

return active;

}

public void setActive(boolean active) {

this.active = active;

}

@Column(name="user_role",length=20,nullable=false)

public String getUser_role() {

return user_role;

}

public void setUser_role(String user_role) {

this.user_role = user_role;

}

@Override

public String toString() {

return "ACCOUNTS [user_name=" + user_name + ", user_password=" + user_password + ", active=" + active

+ ", user_role=" + user_role + "]";

}

}

正如我搜索到的那样,它说使用CreateBuilder来避免过时(因为我得到的示例仅显示List中的所有数据),但是我在这里使用添加条件有限制,请帮助我如何在使用像我这样的条件时使用createBuilder使用add(Restrictions.eq(“ user_name”,userName)); 在代码中还是有其他解决方案以避免过时?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值