Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从控制器Spring中的最后一次插入获取生成的Id_Java_Spring_Spring Boot - Fatal编程技术网

Java 从控制器Spring中的最后一次插入获取生成的Id

Java 从控制器Spring中的最后一次插入获取生成的Id,java,spring,spring-boot,Java,Spring,Spring Boot,这是我的控制器,用于将表单数据保存在数据库中: @RequestMapping(value = "/user/newUser", method = RequestMethod.POST) public ModelAndView createNewSurvey(@Valid User user, BindingResult bindingResult) { ModelAndView modelAndView = new ModelAndView(); userService.sav

这是我的控制器,用于将表单数据保存在数据库中:

@RequestMapping(value = "/user/newUser", method = RequestMethod.POST)
public ModelAndView createNewSurvey(@Valid User user, BindingResult bindingResult) {
    ModelAndView modelAndView = new ModelAndView();
    userService.saveUser(user);
    modelAndView.addObject("successMessage", "Added user!");
    modelAndView.addObject("user", new User());
    modelAndView.setViewName("user/newUser");
    return modelAndView;
}
调用saveUser后,如何获取该控制器中该用户的生成ID,以便使用它调用另一个函数? 多谢各位

编辑:

用户服务实现:

@Service("userService")
public class UserServiceImpl implements UserService {

@Autowired
private UserRepository userRepository;
@Override
public void saveUser(User user) {
    userRepository.save(user);
}

试试下面的方法,让我知道它是否适合你

@Override
public User saveUser(User user) {
    return userRepository.save(user);
}
还更改接口方法以在UserService接口中返回用户

public User saveUser(User user);
然后在控制器中,只需从返回的UserObject调用getId()

User newUser = userService.saveUser(user);
newUser.getId();

您能在userService和用于保存用户的dao中发布代码吗?此外,在您的实体中,您如何生成Id,使用什么策略,即@GeneratedValue(strategy=GenerationType.AUTO)?我添加了服务实现。是的@Id@GeneratedValue(strategy=GenerationType.AUTO)是我生成它的方式