【发布时间】:2017-02-06 13:47:12
【问题描述】:
我有一个简单的登录页面,用户名是“Admin”,密码是“hello”,但标准函数接受所有值,例如“HELLo”“HELLO”这种类型。我只想接受区分大小写的结果。我能做什么请任何人帮助我。
public Members logIn(Members members) {
Criteria criteria = sessionFactory
.getCurrentSession().createCriteria(Members.class);
criteria.add(Expression.eq("memberUserName", members.getMemberUserName()));
criteria.add(Expression.eq("password", members.getPassword()));
Members Member=(Members) criteria.uniqueResult();
return Member;
}
模型类:
@Entity
@Table(name="Members")
public class Members{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "memberId")
private int memberId;
@Column(name="memberUserName", unique=true)
private String memberUserName;
@Column(name="passwrd")
private String password;
@Column(name="memberName")
private String memberName;
}
【问题讨论】:
-
Case-insensitive equals using Hibernate Criteria 的可能重复项(查看更新的答案,现在已弃用接受的答案)
-
当您的链接不区分大小写时,他似乎想要区分大小写。默认情况下,惊讶的 Hibernate 会不区分大小写?
-
@TheBakker 确实,但老实说同样令人惊讶^^我应该检查一下,我不记得它是不区分大小写的......这可能取决于实际使用的数据库(以及编码)
-
可能是数据库中的列定义不区分大小写?
-
如何检查数据库。不区分大小写?