使用Spring Data JPA创建新记录时如何将ID值分配给另一个字段

时间:2018-12-24 18:42:15

标签: hibernate jpa spring-data-jpa

在创建新记录时,我必须分配具有ID字段(即user_id)的createdBy字段。

尝试以下代码:

User user = new User();
user.setUserName("test");
user.setUserRegisteredDate(CalendarUtil.getCurrentTimeStamp());
user.setCreatedBy(user.getUserId());//NOT NULL field
userRepository.save(user);

但是保存失败,因为createdBy没有任何值,即NULL

在使用Spring Data JPA创建新记录时,如何将ID值分配给另一个字段?

1 个答案:

答案 0 :(得分:1)

首先将实体保存到db,存储库保存方法返回已保存的实体,您可以从已保存的实体获取ID。

public void onResultReceived(String response, String tag_json_obj) {
        if (tag_json_obj.equals(LOCALITY_SET)){

            try {
                JSONObject jsonObject=new JSONObject(response);
                String data=jsonObject.getString("data");

            } catch (JSONException e) {
                Log.d("EXCEPTN",e.toString());
                e.printStackTrace();
            }

        }
    }