Hibernate는 객체 관계 매핑(ORM)을 위한 자바 프레임워크로, SQL 쿼리 대신 객체를 사용하여 데이터베이스를 다룰 수 있게 해줍니다. Hibernate는 다양한 연산자를 지원하여 데이터베이스 쿼리를 작성할 때 유용하게 활용됩니다.
1. Equal 연산자
Equal 연산자는 두 값을 비교하는 데 사용됩니다. Hibernate에서는 =
연산자를 사용하여 객체의 특정 속성과 값을 비교할 수 있습니다. 예를 들어, CriteriaBuilder
를 사용하여 equal 연산자를 적용할 수 있습니다:
CriteriaBuilder criteriaBuilder = session.getCriteriaBuilder();
CriteriaQuery<User> criteriaQuery = criteriaBuilder.createQuery(User.class);
Root<User> root = criteriaQuery.from(User.class);
criteriaQuery.select(root).where(criteriaBuilder.equal(root.get("id"), 1));
2. Not Equal 연산자
Not Equal 연산자는 두 값이 다른지를 비교하는 데 사용됩니다. Hibernate에서는 <>
연산자나 notEqual
메서드를 사용하여 객체의 특정 속성과 값을 비교할 수 있습니다. 예를 들어,
criteriaQuery.select(root).where(criteriaBuilder.notEqual(root.get("status"), "INACTIVE"));
3. Like 연산자
Like 연산자는 부분 문자열을 비교하는 데 사용됩니다. Hibernate에서는 like
메서드를 사용하여 객체의 특정 속성이 특정 패턴과 일치하는지를 확인할 수 있습니다. 예를 들어,
criteriaQuery.select(root).where(criteriaBuilder.like(root.get("name"), "John%"));
4. Greater Than 및 Less Than 연산자
Greater Than 및 Less Than 연산자는 값을 비교하는 데 사용됩니다. Hibernate에서는 >
및 <
연산자를 사용하여 객체의 특정 속성과 값을 비교할 수 있습니다. 예를 들어,
criteriaQuery.select(root).where(criteriaBuilder.greaterThan(root.get("age"), 18));
criteriaQuery.select(root).where(criteriaBuilder.lessThan(root.get("salary"), 50000));
이처럼 Hibernate는 여러 가지 연산자를 제공하여 데이터베이스 쿼리를 유연하고 강력하게 작성하고 실행할 수 있게 해줍니다. Hibernate를 활용하여 객체지향 프로그래밍과 데이터베이스 조작을 하나로 효율적으로 처리할 수 있습니다.
더 자세한 내용은 Hibernate 공식 문서를 참고하시기 바랍니다.