我一直在网上搜索这个问题,我发现的是关于如何创建不区分大小写的查询。我知道默认情况下查询应该区分大小写,但即使大写和小写字母与数据库中的大写字母不同,我的存储库仍会返回结果。
的 AccountRepository.java
$.ajax({
url: 'http://example.com',
data: {},
});
AccountService.java
@Repository
public interface AccountRepository extends JpaRepository<Account, Integer>
{
Account findByPassword(String password);
Account findByUsernameAndPassword(String username, String password);
}
上述服务,虽然在错误的情况下输入密码(例如public void login(Account entity)
{
System.out.println(repository.findByUsernameAndPassword(
entity.getUsername(), entity.getPassword());
System.out.println(repository.findByPassword(
entity.getPassword());
}
vs mypassword
),但两者都会打印出正确的结果。有什么想法吗?
答案 0 :(得分:0)
在
的例子中findByPassword
它将它分为关键词然后案例:
find by password
其中password是属性
在
的例子中findByUsernameAndPassword
这变为
find by username and password
其中用户名和密码是属性。
请参阅https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.query-methods
您的数据库可能具有不区分大小写的开关集。 MySql允许这样,Oracle没有。