代码之家  ›  专栏  ›  技术社区  ›  springbootlearner

Spring Boot JPA Save不工作

  •  1
  • springbootlearner  · 技术社区  · 7 年前

    我正在将在Websphere中运行的SpringBoot1.2.4迁移到SpringBoot1.5.9。这个应用程序使用Spring数据JPA和Hibernate。迁移后,其中一个save方法未按预期工作。当我尝试在表中插入新行时,得到一个异常,SQLCODE=-204,SQLSTATE=42704,但同样的代码在springboot1.2.4中运行良好。

    我的Pom.xml文件看起来像下面。

    <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.9.RELEASE</version>
        </parent>
    
    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>           
            </dependency>
    

    springboot1.2.4的配置如下所示。

    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jpa</artifactId>
                <version>1.2.4</version>
            </dependency>
    
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.3.10.Final</version>
        </dependency>
    
        @Repository
        public interface MyDataRepository extends CurdRepository<MyEntity,Long>{}
    
        @Service
        public class MyDataService{
    
       @Autowired
       private MyDataRepository myDataRepository;
    
       public void insertMyDate(MyData myData){
         myDataRepository.save(myData)
       } 
    
       }
    
       @Entity
       @Table(name="MYDATA" ,schema="MYSCHEMA")
       public class MyData implements java.io.Serializable {
    
       private int memberId;
       private String firstName;
       private String lastName;
       private Date dateofBirth;
    
       @GeneratedValue(strategy=GenerationType.AUTO)
       @Id 
       @Column(name="MEMBER_ID",uniqueue=true,nullable=false)
       public int getMemberId(){
        return this.memberId;
       }
    
      public void setMemberId(int memberId){
       return this.memberId = memberId;
       }
    
       //Geter and Setters
       }
    

    在执行1.5.9中的save方法时出现以下异常。

    无法提取结果集;SQL[n/a];嵌套异常为org.hibernate.exception异常.SQLGrammarException:无法提取结果集

    0 回复  |  直到 7 年前
        1
  •  0
  •   Mohan kumar    6 年前

    您不需要这个hibernate entitymanager依赖项,因为您使用的是存储库来保存数据