Database Spring+Hibernate JPA问题

Database Spring+Hibernate JPA问题,database,hibernate,spring,jpa,Database,Hibernate,Spring,Jpa,我正在尝试使用Hibernate和JPA/EntityManager来执行数据库活动 现在我得到了这个错误,我不知道这意味着什么 在我有这个代码之前,它工作得很好 public class JdbcProductDao extends Dao implements ProductDao { /** Logger for this class and subclasses */ protected final Log logger = LogFactory.getLog(getClass());

我正在尝试使用Hibernate和JPA/EntityManager来执行数据库活动

现在我得到了这个错误,我不知道这意味着什么

在我有这个代码之前,它工作得很好

public class JdbcProductDao extends Dao implements ProductDao {

/** Logger for this class and subclasses */
protected final Log logger = LogFactory.getLog(getClass());

public List<Product> getProductList() {
    logger.info("Getting products!");
    List<Product> 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<Product> {

    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;
    }

}
}

但是这段代码使用EntityManager

public class JdbcProductDao implements ProductDao {

/** Logger for this class and subclasses */
//protected final Log logger = LogFactory.getLog(getClass());

@PersistenceContext()
private EntityManager entityManager;

public JdbcProductDao(){

}

public Product getReference(Product product){
    return getEntityManager().getReference(product.getClass(),product.getId());
}

public void persist(Product product){
    getEntityManager().persist(product);
}

public EntityManager getEntityManager(){
    return entityManager;
}

public void setEntityManager(EntityManager entityManager){
    this.entityManager = entityManager;
}

@SuppressWarnings("unchecked")
public List<Product> getProductList(){
    return getEntityManager().createNativeQuery("select id, description, price from products").getResultList();
}

public void saveProduct(Product product){
    getEntityManager().createNativeQuery("update products set description = " + product.getDescription() + " , price = " + product.getPrice() + " where id = " + product.getId());
}

private static class ProductMapper implements ParameterizedRowMapper<Product> {

    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;
    }

}
}

我得到的错误是java.lang.NumberFormatException:对于输入字符串:description

以前有没有人经历过类似的事情

编辑: 堆栈跟踪在下面 java.lang.NumberFormatException:对于输入字符串:description java.lang.NumberFormatException.forInputStringNumberFormatException.java:48 java.lang.Integer.parseIntInteger.java:449 java.lang.Integer.parseIntInteger.java:499 java:153 java:45 java:54 org.apache.el.parser.AstValue.getValueAstValue.java:118 org.apache.el.ValueExpressionImpl.GetValueExpressionImpl.java:186 org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluagePageContextImpl.java:935 org.apache.jsp.WEB\u 002dINF.jsp.hello\u jsp.\u jspx\u meth\u c\u 005fout\u 005f1hello\u jsp.java:245 org.apache.jsp.WEB\u 002dINF.jsp.hello\u jsp.\u jspx\u meth\u c\u 005fforEach\u 005f0hello\u jsp.java:210 org.apache.jsp.WEB\u 002dINF.jsp.hello\u jsp.\u jspServicehello\u jsp.java:92 org.apache.jasper.runtime.HttpJspBase.serviceHttpJspBase.java:70 javaservlet.http.HttpServlet.serviceHttpServlet.java:717 org.apache.jasper.servlet.JspServletWrapper.serviceJspServletWrapper.java:374 org.apache.jasper.servlet.JspServlet.serviceJspFileJspServlet.java:342 org.apache.jasper.servlet.JspServlet.serviceJspServlet.java:267 javaservlet.http.HttpServlet.serviceHttpServlet.java:717 org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModelInternalResourceView.java:236 org.springframework.web.servlet.view.AbstractView.renderAbstractView.java:257 org.springframework.web.servlet.DispatcherServlet.renderDispatcherServlet.java:1183 org.springframework.web.servlet.DispatcherServlet.doDispatcherservlet.java:902 org.springframework.web.servlet.DispatcherServlet.doServiceDispatcherServlet.java:807 org.springframework.web.servlet.FrameworkServlet.processRequestFrameworkServlet.java:571 org.springframework.web.servlet.FrameworkServlet.doGetFrameworkServlet.java:501 javaservlet.http.HttpServlet.serviceHttpServlet.java:617
javax.servlet.http.HttpServlet.serviceHttpServlet.java:717

查看stacktrace-与JPA无关,JSP中标记的属性中存在EL语法错误。

请发布完整的stacktrace。