为了账号安全,请及时绑定邮箱和手机立即绑定

Spring Boot:是什么导致了这个 TransientDataAccessResource

Spring Boot:是什么导致了这个 TransientDataAccessResource

白板的微信 2021-06-10 21:01:17
我正在尝试按照这篇文章使用 Spring Boot 和 Hibernate 制作一个简单的登录应用程序,不同之处在于我使用的是 JSP 而不是 Thymeleaf。虽然注册成功进行,但在使用注册的电子邮件 ID 登录时,我收到TransientDataAccessResourceException。我对这篇文章的理解是,' spring.queries.users-query ' 属性(来自 application.properties)需要 1 个参数(应该是),但它无法找到它,我不知道为什么。这是我的代码:登录控制器@Controllerpublic class LoginController {@Autowiredprivate UserService userService;@GetMapping("/login")public String showLoginPage() {    return "login";}@GetMapping("/register")public ModelAndView showRegistrationPage() {    ModelAndView modelAndView = new ModelAndView();    modelAndView.setViewName("register");    modelAndView.addObject("user",new User());    return modelAndView;}@PostMapping("/register")public ModelAndView registerNewUser(@Valid @ModelAttribute("user") User user,BindingResult bindingResult) {    ModelAndView modelAndView = new ModelAndView();    User userObj = userService.findUserByEmail(user.getEmail());    if(userObj != null){        bindingResult.rejectValue("email", "error.user", "This email id is already registered.");    }    modelAndView.setViewName("register");    if(bindingResult.hasErrors()){        return modelAndView;    }else{        userService.saveUser(user);        modelAndView.addObject("user",new User());        modelAndView.addObject("successMessage", "User registered successfully");    }    return modelAndView;}}
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

为了从某个配置文件加载查询作为占位符,您需要使用${}语法:


@Value("${spring.queries.users-query}")

private String usersQuery;


@Value("${spring.queries.roles-query}")

private String rolesQuery;


查看完整回答
反对 回复 2021-06-23
  • 1 回答
  • 0 关注
  • 191 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信