0 0

JPA 保存失败10

save失败 但是不报错!顺便问下 在action中怎么注入service
[code=“Java”]
public ModelAndView save(HttpServletRequest request,
            HttpServletResponse response)throws Exception{
//menuSer.queryS();
smenuService = (MenuService) getWebApplicationContext().getBean("menuService");
    smenuService.save();
        return new ModelAndView("menu_jsp/menu");
   }

public void save() {
// TODO Auto-generated method stub
smenuDao.save();
}


public void save() {
// TODO Auto-generated method stub
Menu m1 = new Menu();
Menu m2 = new Menu();
Menu m3 = new Menu();
Menu m4 = new Menu();
m1.setName("百度");m1.setUrl("http://www.baidu.com");
m2.setName("搜狐");m2.setUrl("http://www.souhu.com");
m3.setName("人人");m3.setUrl("http://www.renren.com");
m4.setName("谷歌");m4.setUrl("http://www.google.com");
//EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpa_test");  
//System.out.println(emf.createEntityManager().getTransaction().notify().....isActive()==true);
//emf.createEntityManager().getTransaction().begin();
this.getJpaTemplate().persist(m1);
this.getJpaTemplate().persist(m2);
this.getJpaTemplate().persist(m3);
this.getJpaTemplate().persist(m4);
//emf.createEntityManager().getTransaction().commit();

}

     <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> 
         <property name="transactionManager"> 
             <ref local="transactionManager"/> 
         </property> 
         <property name="transactionAttributes"> 
             <props> 
                 <prop key="insert*">PROPAGATION_REQUIRED</prop> 
                 <prop key="update*">PROPAGATION_REQUIRED</prop> 
                 <prop key="save*">PROPAGATION_REQUIRED</prop> 
                 <prop key="add*">PROPAGATION_REQUIRED</prop> 
                 <prop key="update*">PROPAGATION_REQUIRED</prop> 
                 <prop key="remove*">PROPAGATION_REQUIRED</prop> 
                 <prop key="delete*">PROPAGATION_REQUIRED</prop> 
                 <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop> 
                 <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> 
                 <prop key="load*">PROPAGATION_REQUIRED,readOnly</prop> 
                 <prop key="change*">PROPAGATION_REQUIRED</prop> 
                 <prop key="*">PROPAGATION_REQUIRED,readOnly</prop> 
             </props> 
         </property> 
     </bean> 
      
     <bean id="beanNameAutoProxyCreator" 
         class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> 
         <property name="beanNames"> 
             <list> 
                 <value>*DaoImp</value> 
             </list> 
         </property> 
         <property name="interceptorNames"> 
             <list> 
                 <value>transactionInterceptor</value> 
             </list> 
         </property> 
     </bean>             
    
      
     <!-- 直接使用Spring的 JpaTemplate --> 
     <bean id="jpaTemplate" class="org.springframework.orm.jpa.JpaTemplate"> 
         <property name="entityManagerFactory" ref="entityManagerFactory" /> 
     </bean> 
    
     <bean id="menuDao"  class="com.wujw.springMVC.dao.MenuDaoImp">
     </bean>
     <bean id="menuService"  class="com.wujw.springMVC.service.MenuServieImp">
     <property name="smenuDao" ref="menuDao"></property>
     </bean>
     <bean id="menuAction" class="com.wujw.springMVC.action.MenuAction">
     <property name="smenuService" ref="menuService"></property>
     </bean>

          
        
DAO 
2011年4月01日 18:05
目前还没有答案

相关推荐

    JPA 开发中遇到的错误

    当你尝试保存一个已经与JPA上下文断开连接(即处于“游离”状态)的实体时,会抛出此异常。在JPA中,只有处于托管状态的实体才能被保存。避免此问题的方法是在保存之前确保实体与EntityManager关联。 ### 7. org....

    spring Data JPA框架实例

    此外,Spring Data JPA还集成了Hibernate验证,可以对实体属性进行约束,比如`@NotNull`, `@Size`, `@Email`等,这些验证规则在保存或更新实体时会自动检查。 在实际开发中,我们还需要考虑异常处理,如`...

    hibernate_ jpa.jar

    2. **异常处理**:当事务失败时,JPA会抛出PersistenceException,需要捕获并适当地处理。 五、查询语言与Criteria API 1. **JPQL**:类似于SQL,但面向对象,例如:`SELECT e FROM Employee e WHERE e.name = '...

    springboot整合mybatis整合jpa使用entityManger

    例如,你可以使用`entityManager.persist()`来保存新实体,`entityManager.find()`来查找实体,`entityManager.merge()`来更新实体,以及`entityManager.remove()`来删除实体。EntityManager还提供了事务管理和查询...

    后端 Java Spring Data Jpa @Transactional 介绍

    - **提交事务**:如果方法正常结束,Spring会提交事务,将所有更改保存到数据库。 - **回滚事务**:如果方法抛出异常,Spring会自动回滚事务,撤销所有更改,以保持数据一致性。 **三、事务管理** 事务管理是...

    JPA详细教程,用于JPA入门与参考很不错

    事务控制是实现数据一致性的关键,确保一系列数据库操作要么全部成功,要么全部失败。 6. **查询(Query)**:JPA提供了一种强大的查询语言——JPQL(Java Persistence Query Language),类似于SQL,但操作对象而...

    02_传智播客JPA详解_JPA开发环境和思想介绍

    事务是确保数据一致性的关键,例如,一组数据库操作必须全部成功或全部失败。 最后,了解**JPA的高级特性**,如: - **懒加载(Lazy Loading)**:通过延迟加载提高性能,只有在需要时才加载关联的对象。 - **级联...

    spring-jpa-oracle:演示将 CHAR 列持久化到 Oracle 数据库

    后来,尝试使用 Hibernate 或 JPA 等框架搜索具有相同值的列失败,因为搜索词没有填充到n ,导致搜索词与列中存储的值不匹配。 例如,考虑以下表定义: CREATE TABLE CITY ( ... NAME CHAR(40) NOT NULL ...);如果...

    Spring data jpa 中文开发文档

    在使用Spring Data JPA时,可能会遇到一些特定的异常,如`EntityNotFoundException`(实体未找到)、`OptimisticLockingFailureException`(乐观锁失败)等,理解这些异常有助于更好地调试和处理问题。 总的来说,...

    springboot利用jpa连接hibernate用法2

    考虑到可能出现的异常,例如数据验证失败或数据库连接问题,应适当处理并返回有意义的错误信息。 通过以上步骤,我们可以构建一个功能完善的Spring Boot应用,利用JPA和Hibernate进行数据操作。这个过程中,Spring...

    jpa_test:jpa_test

    当事务内的操作失败时,JPA会自动回滚事务,确保数据一致性。 6. **查询语言(JPQL)** JPA提供了Java Persistence Query Language,类似于SQL,但更面向对象。例如,获取所有用户: ```java List&lt;User&gt; users =...

    jpa-study

    2. **持久化**: 使用EntityManager的`persist()`方法将实体保存到数据库。 3. **查询**: 使用JPQL或Criteria API从数据库检索数据。 4. **更新**: 修改实体对象的属性,然后调用`merge()`方法将更改同步到数据库。 5...

    可重复使用文件保存

    标题“可重复使用文件保存”暗示了我们将在讨论如何在编程环境中,特别是在Spring框架与JDBC结合使用时,实现文件的持久化存储,以便能够多次访问和复用这些文件。这个话题对于理解如何构建可扩展且高效的应用程序至...

    JavaEE就业班(夜光)③:SpringData开发.docx

    例如,在多个数据库之间进行转账操作时,如果没有正确的分布式事务管理,可能会导致部分交易完成而其他部分失败,从而导致数据不一致的问题。 #### 四、实体类与数据库映射 在使用 Spring Data JPA 进行开发时,...

    SpringBoot 文件上传案例

    return ResponseEntity.internalServerError().body("文件保存失败:" + e.getMessage()); } ``` 如果是保存到数据库,可以使用JPA或MongoDB的API将文件内容转换为`byte[]`并存储。 在前端界面,使用HTML5的`...

    SpringBoot CRUD + 事务 DEMO

    throw new RuntimeException("更新失败"); } } ``` 在这个例子中,如果`updateUserAndFail`方法中的任何地方抛出异常,整个事务会被回滚,确保数据的一致性。 总结来说,"SpringBoot CRUD + 事务 DEMO"项目是为了...

    SpringMVC_Upload.rar_shipvu7_springmvc_springmvc upload

    这可能包括验证结果、保存文件到服务器的路径,或者任何其他业务逻辑的结果。你可以返回一个字符串,这个字符串可以被前端解析为JSON或其他格式,从而展示给用户。 例如,你可以返回一个包含成功或失败信息的JSON...

    SeleniumIterator:从数据库中提取页面; 填充数据库

    3. **日志调试**:通过增加日志输出,定位保存失败的具体链接和错误信息。 4. **异常处理**:完善异常处理逻辑,确保程序在遇到问题时能够恢复或至少记录失败情况。 5. **优化数据库操作**:考虑使用批处理插入,...

    springboot+登录+增删改查

    然后,配置SecurityConfig,设置HTTP安全设置,如登录页面、默认登录失败处理等。你还需要创建一个登录表单,并配置相应的处理器方法来处理用户的登录请求。 数据库操作方面,SpringBoot集成了JPA和Hibernate,提供...

    解决Hibernate4执行save()或update()无效问题的方法

    此外,这也提醒我们在开发过程中,当遇到数据持久化失败的问题时,不应只关注配置和外部环境,实体类内部的属性和它们与数据库表的映射关系同样重要。应仔细检查每个字段的类型、注解和对应的数据库字段,确保它们...

Global site tag (gtag.js) - Google Analytics