title: Another Spring + Hibernate + JPA question
body: <p>I'm still struggling with changing my Spring Application to use Hibernate with JPA to do database activities. Well apparently from a previous post I need an persistence.xml file. However do I need to make changes to my current DAO class? </p>
  
  <pre><code>public class JdbcProductDao extends Dao implements ProductDao {
      /** Logger for this class and subclasses */
      protected final Log logger = LogFactory.getLog(getClass());
  
      public List&lt;Product&gt; getProductList() {
          logger.info("Getting products!");
          List&lt;Product&gt; products = getSimpleJdbcTemplate().query(
                  "select id, description, price from products", 
                  new ProductMapper());
          return products;
      }
  
      public void saveProduct(Product prod) {
          logger.info("Saving product: " + prod.getDescription());
          int count = getSimpleJdbcTemplate().update(
              "update products set description = :description, price = :price where id = :id",
              new MapSqlParameterSource().addValue("description", prod.getDescription())
                  .addValue("price", prod.getPrice())
                  .addValue("id", prod.getId()));
          logger.info("Rows affected: " + count);
      }
  
      private static class ProductMapper implements ParameterizedRowMapper&lt;Product&gt; {
  
          public Product mapRow(ResultSet rs, int rowNum) throws SQLException {
              Product prod = new Product();
              prod.setId(rs.getInt("id"));
              prod.setDescription(rs.getString("description"));
              prod.setPrice(new Double(rs.getDouble("price")));
              return prod;
          }
  
      }
  
  }
  </code></pre>
  
  <p>Also my Product.Java is below</p>
  
  <pre><code>public class Product implements Serializable {
      private int id;
      private String description;
      private Double price;
  
      public void setId(int i) {
          id = i;
      }
  
      public int getId() {
          return id;
      }
  
      public String getDescription() {
          return description;
      }
  
      public void setDescription(String description) {
          this.description = description;
      }
  
      public Double getPrice() {
          return price;
      }
  
      public void setPrice(Double price) {
          this.price = price;
      }
  
      public String toString() {
          StringBuffer buffer = new StringBuffer();
          buffer.append("Description: " + description + ";");
          buffer.append("Price: " + price);
          return buffer.toString();
      }
  }
  </code></pre>
  
  <p>I guess my question would be,
  How would my current classes change after using Hibernate + JPA with an Entity Manager</p>