Package com.springone.myrestaurants.data

Source Code of com.springone.myrestaurants.data.RestaurantRepository

package com.springone.myrestaurants.data;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;

import com.springone.myrestaurants.domain.Restaurant;

@Repository
public class RestaurantRepository {

  @PersistenceContext
    private EntityManager entityManager;

  @Transactional
  public Restaurant findRestaurant(Long id) {
    if (id == null) return null;
    final Restaurant rest = entityManager.find(Restaurant.class, id);
    if (rest != null) {
      rest.persist();
    }
    return rest;
    }

  @SuppressWarnings("unchecked")
  @Transactional(readOnly=true)
    public List<Restaurant> findAllRestaurants() {
        return entityManager.createQuery("select o from Restaurant o").getResultList();
    }

  @SuppressWarnings("unchecked")
  @Transactional(readOnly=true)
    public List<Restaurant> findRestaurantEntries(int firstResult, int maxResults) {
        return entityManager.createQuery("select o from Restaurant o").setFirstResult(firstResult).setMaxResults(maxResults).getResultList();
    }

  @Transactional
  public long countRestaurants() {
        return ((Number) entityManager.createQuery("select count(o) from Restaurant o").getSingleResult()).longValue();
    }

}
TOP

Related Classes of com.springone.myrestaurants.data.RestaurantRepository

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.