Home » openejb-3.1.2-src » org.superbiz.spring » [javadoc | source]

    1   /**
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *     http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    *  Unless required by applicable law or agreed to in writing, software
   12    *  distributed under the License is distributed on an "AS IS" BASIS,
   13    *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    *  See the License for the specific language governing permissions and
   15    *  limitations under the License.
   16    */
   17   package org.superbiz.spring;
   18   
   19   import javax.ejb.Stateful;
   20   import javax.persistence.EntityManager;
   21   import javax.persistence.PersistenceContext;
   22   import javax.persistence.PersistenceContextType;
   23   import javax.persistence.Query;
   24   import java.util.List;
   25   
   26   //START SNIPPET: code
   27   /**
   28    * A normal Stateful EJB that uses a JPA EntityManager.
   29    * <p/>
   30    * We use this bean to transactionally wrap access to the
   31    * EntityManager persist, remove, and query methods.
   32    */
   33   @Stateful(name = "Movies")
   34   public class MoviesImpl implements Movies {
   35   
   36       @PersistenceContext(unitName = "movie-unit", type = PersistenceContextType.EXTENDED)
   37       private EntityManager entityManager;
   38   
   39       public void addMovie(Movie movie) throws Exception {
   40           entityManager.persist(movie);
   41       }
   42   
   43       public void deleteMovie(Movie movie) throws Exception {
   44           entityManager.remove(movie);
   45       }
   46   
   47       public List<Movie> getMovies() throws Exception {
   48           Query query = entityManager.createQuery("SELECT m from Movie as m");
   49           return query.getResultList();
   50       }
   51   
   52       public Movie getMovieByTitle(String title) throws Exception {
   53           Query query = entityManager.createQuery("SELECT m from Movie as m where m.title = ?1");
   54           query.setParameter(1, title);
   55           return (Movie) query.getSingleResult();
   56       }
   57   
   58   }
   59   //END SNIPPET: code

Home » openejb-3.1.2-src » org.superbiz.spring » [javadoc | source]