小编SAM*_*LEY的帖子

为什么 Hibernate 会抛出“未指定标识符”?

我正在尝试将数据插入到我已附上它的屏幕截图的 Oracle 数据库中。在包含所有列和表的模型包中创建了一个实体类。附加的数据库详细信息中有一个 id 列是自动增加的。主要问题是使用 id 列的自动递增数据@GeneratedValue(strategy = GenerationType.IDENTITY)它没有给我指定此实体的身份,下面附上错误的详细信息。因此,为此创建了该实体类的对象并使用 save 方法我试图保存相同但由于该标识符的错误,它没有被保存。

这是我的实体类,其中包含表和列

package com.sid.demo.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
//import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import org.springframework.data.annotation.Id;

@Table(name="user_registration")  //this is a table present in my oracle database
@Entity
public class hindalco_model 
{
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY) //this is where problem exists
    @Column(name="user_id",updatable=false,nullable=false)
    private Long user_id;  //this is column a present in oracle database which is auto incremented

    @Column(name="user_name")
    private String user_name;

    @Column(name="email")
    private String email;

    @Column(name="password")
    private …
Run Code Online (Sandbox Code Playgroud)

java hibernate spring-data-jpa spring-boot

4
推荐指数
1
解决办法
4958
查看次数

用于更新查询的 JPA @Query 注释(Oracle sql Developer)--org.hibernate.exception.GenericJDBCException:无法执行查询

我有一个存储库文件共享相同的源代码,还有一个控制器类,通过它我可以调用 @query 函数来获取更新语句。我想将一列数据更新到我的 Oracle 数据库中,我已为其编写了 JPA update @query 并将该函数定义到存储库文件之一中,因此从我的控制器类之一进行调用无法执行查询。

存储库文件

package com.sid.demo.repository;

import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import com.sid.demo.model.hindalco_model;

public interface update_password extends JpaRepository<hindalco_model,Integer> 
{   
    @Query(value="update USER_REGISTRATION set password = :password WHERE user_name = :user_name and email = :email",nativeQuery=true)
    List<String> findbyuser_update(@Param("password") String password,String user_name,String email);   
}
Run Code Online (Sandbox Code Playgroud)

控制器类

@RequestMapping(value="/update_password",method = RequestMethod.POST)
    public String update_password(@RequestParam String password)
    {
        //String rnumber_verified=randomNumber;
        //int random_otp_verified=Integer.parseInt(rnumber_verified);



        //System.out.println("update query string value = "+hindalco_user_login12);
        System.out.println("user_name outside try = "+user_name12);
        System.out.println("email outside try = …
Run Code Online (Sandbox Code Playgroud)

java hibernate spring-data-jpa spring-boot

2
推荐指数
1
解决办法
4745
查看次数

标签 统计

hibernate ×2

java ×2

spring-boot ×2

spring-data-jpa ×2