Example #1
0
 /**
  * 按照属性查找对象,匹配方式为"="
  *
  * @param propertyName 属性名称
  * @param value 属性值
  * @return
  */
 @SuppressWarnings("unchecked")
 public List<T> findByProperty(
     final Class<T> entityClass, final String propertyName, final Object value) {
   Assert.hasText(propertyName, "propertyName不能为空");
   Search search = new Search(entityClass);
   SearchUtil.addFilterEqual(search, propertyName, value);
   return searchProcessor.search(this.getEntityManager().getPersistEntityManager(), search);
 }
Example #2
0
  /** 按属性查找唯一对象, 匹配方式为相等. */
  @SuppressWarnings("unchecked")
  public T findUniqueByProperty(
      final Class<T> entityClass, final String propertyName, final Object value) {

    Search search = new Search(entityClass);
    search.setResultMode(Search.RESULT_SINGLE);
    SearchUtil.addFilterEqual(search, propertyName, value);

    return (T)
        searchProcessor.searchUnique(this.getEntityManager().getPersistEntityManager(), search);
  }
Example #3
0
  /**
   * 按照属性查找对象,匹配方式为"in"
   *
   * @param propertyName 属性名称
   * @param value 属性值
   * @param orderByProperty 排序属性名称
   * @param isDesc true:降序,false:升序
   * @return
   */
  @SuppressWarnings("unchecked")
  public List<T> findByPropertyAndOrderWithParams(
      final Class<T> entityClass,
      final String propertyName,
      final Collection<?> values,
      final String orderByProperty,
      boolean isDesc) {
    Assert.hasText(propertyName, "propertyName不能为空");

    Search search = new Search(entityClass);
    SearchUtil.addFilterIn(search, propertyName, values);
    SearchUtil.addSort(search, orderByProperty, isDesc);

    return searchProcessor.search(this.getEntityManager().getPersistEntityManager(), search);
  }
Example #4
0
 /**
  * 根据id获取对象列表
  *
  * @param ids
  * @return
  */
 @SuppressWarnings("unchecked")
 public List<T> get(final Class<T> entityClass, final Collection<PK> ids) {
   Search search = new Search(entityClass);
   search.setResultMode(Search.RESULT_LIST);
   JPAAnnotationMetadataUtil metadataUtil = new JPAAnnotationMetadataUtil();
   T entity;
   try {
     entity = entityClass.newInstance();
   } catch (Exception e) {
     logger.error("根据主键集合查找对象 {}发生异常! ", entityClass.getClass());
     throw new RuntimeException("根据主键集合查找对象发生异常", e);
   }
   String propertyName = metadataUtil.getIdPropertyName(entity);
   SearchUtil.addFilterIn(search, propertyName, ids);
   return searchProcessor.search(this.getEntityManager().getPersistEntityManager(), search);
 }
Example #5
0
 /**
  * 获取全部对象, 支持按属性行序
  *
  * @param orderByProperty 排序的属性名称
  * @param isDesc true:降序,false:升序
  * @return
  */
 @SuppressWarnings("unchecked")
 public List<T> getAll(final Class<T> entityClass, String orderByProperty, boolean isDesc) {
   Search search = new Search(entityClass);
   SearchUtil.addSort(search, orderByProperty, isDesc);
   return searchProcessor.search(this.getEntityManager().getPersistEntityManager(), search);
 }
Example #6
0
 /**
  * 获取全部对象
  *
  * @return
  */
 @SuppressWarnings("unchecked")
 public List<T> getAll(final Class<T> entityClass) {
   Search search = new Search(entityClass);
   return searchProcessor.search(this.getEntityManager().getPersistEntityManager(), search);
 }
 public Filter getFilterFromExample(Object example, ExampleOptions options) {
   return processor.getFilterFromExample(example, options);
 }
 public Object searchUnique(Class<?> searchClass, ISearch search) {
   return processor.searchUnique(entityManager, searchClass, search);
 }
 public Filter getFilterFromExample(Object example) {
   return processor.getFilterFromExample(example);
 }
 public Object searchUnique(ISearch search) {
   return processor.searchUnique(entityManager, search);
 }
 @SuppressWarnings("unchecked")
 public SearchResult searchAndCount(Class<?> searchClass, ISearch search) {
   return processor.searchAndCount(entityManager, searchClass, search);
 }
 public int count(Class<?> searchClass, ISearch search) {
   return processor.count(entityManager, searchClass, search);
 }
 public int count(ISearch search) {
   return processor.count(entityManager, search);
 }
 @SuppressWarnings("unchecked")
 public List search(Class<?> searchClass, ISearch search) {
   return processor.search(entityManager, searchClass, search);
 }