Spring + hibernate中存在简单对象

时间:2011-11-13 14:06:34

标签: java hibernate spring java-ee jpa

我认为这不是标准的做法,所以任何提示都会有所帮助,这是我的代码:

@RequestMapping("/register")
public String register(Map<String, Object> map, @ModelAttribute("user") MyUser user) {

    if(user.getLogin() == ""){
        map.put("user", new MyUser());
    }
    else{
        map.put("user", user);
        map.put("result", userService.addMyUser(user));
    }

    return "register";
}

导致以下错误的原因:

  

org.hibernate.AssertionFailure:org.mypackage.MyUser条目中的null id   (发生异常后不要刷新会话)

这是MyUser类:

@Entity
@Table(name="MyUser")
public class MyUser{

    @Id
    @Column(name="idMyUser")
    @GeneratedValue
    private Integer id;

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

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

    public String getLogin() {
        return login;
    }

    public void setLogin(String login) {
        this.login = login;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

}

1 个答案:

答案 0 :(得分:1)

尝试更改@GeneratedValue的策略和/或生成器,有关详细信息,请参阅herehere(例如,您可以尝试@GeneratedValue(strategy = GenerationType.IDENTITY)。您还可以检查数据库是否正确table被设置为生成主键值。异常似乎表明当前策略和/或生成器未设置主键 - 字段。