Skip to content

Instantly share code, notes, and snippets.

@Danny-Hoang
Forked from namkyu/CustomRepository.java
Created June 28, 2021 11:28
Show Gist options
  • Save Danny-Hoang/42ad7dab31f37748cfca20f00ae18d53 to your computer and use it in GitHub Desktop.
Save Danny-Hoang/42ad7dab31f37748cfca20f00ae18d53 to your computer and use it in GitHub Desktop.
spring data jpa #jpa
public interface MemberRepository extends JpaRepository<SpringMember, Integer> {
SpringMember findBySeqAndName(int seq, String name);
List<SpringMember> findTop3ByNameLike(String name);
SpringMember readBySeq(int seq);
SpringMember readByName(String name);
SpringMember queryBySeq(int seq);
long countByNameLike(String name);
long countByName(String name);
@Query(value = "SELECT seq, name FROM SPRING_DATA_MEMBER", nativeQuery = true)
List<SpringMember> nativeQuery();
@Query(value = "SELECT seq, name FROM SPRING_DATA_MEMBER WHERE name = :name", nativeQuery = true)
SpringMember nativeQueryByName(@Param(value = "name") String name);
@Async
CompletableFuture<List<SpringMember>> readAllBy();
}
public interface ProductsRepository extends JpaRepository<ProductsEntity, Integer> {
ProductsEntity findTopByOrderByProductIdDesc();
}
@Getter
@Setter
@ToString(exclude = {"associateCompanies"})
@Entity
@Table(name = "Products")
@Access(value = AccessType.FIELD)
public class ProductsEntity {
@Id
private int productId;
private String productName;
@Convert(converter = SaleStatusEnumConverter.class)
private SaleStatus saleStatus;
@Convert(converter = OffsetDateTimeConverter.class)
private OffsetDateTime changed;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "AssociateCompanyId")
private AssociateCompaniesEntity associateCompanies;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment