mysql之我想在我的 Springboot 项目中实现 session (HTTP 请求)概念,但它给出了这个错误

Leo_wl 阅读:54 2023-08-25 12:46:42 评论:0

用户注册时出现错误

白标错误

  This application has no explicit mapping for /error, so you are  
  seeing this as a fallback. 
  Wed Oct 24 16:46:26 IST 2018 
  There was an unexpected error (type=Bad Request, status=400). 
  Failed to convert value of type 'java.lang.String' to required type  
  'int'; nested exception is java.lang.NumberFormatException: For input string: "" 

有注册和办公两种形式

注册(用户)

@Entity 
@Table(name="mytable") 
public class User { 
 
@Id 
private int id;  //Primary key 
private String name; 
private String mobile; 
private String email; 
private String college; 
private String branch; 
private String semester; 
private String address; 
private String internship; 
private String batch; 
private String startdate; 
private String enddate; 
//getters and setters 

办公室

@Entity 
@Table(name="officeinfo") 
public class Office { 
 
@Id 
private int sno; 
private String batchno; 
private int  id;   
private String fees; 
private String reciptno; 
private String trainer; 
//getters and setters 

注册中的 session 实现,以便填充 id 值(office)

 @PostMapping("/save-user") 
 public String registerUser(@ModelAttribute User user, BindingResult  
 bindingResult, HttpServletRequest request,HttpSession  
 session,@RequestParam("id") int id) { 
    userService.saveMyUser(user); 
   session.setAttribute("id", id); 
    int x = user.getId(); 
   request.setAttribute("mode", "MODE_HOME"); 
    return "welcomepage"; 
} 

id 的办公页面 JSP

    <div class="form-group"> 
    <label class="control-label col-md-3">Candidate  
        Registe rNumber</label> 
    <div class="col-md-5"> 
        <input type="text" class="form-control                        
    placeholder="Enter Register Number"  
         name="id" required value="${sessionScope.id }" /> 
     </div> 
    </div> 

/项目概念/

一旦用户注册(值将存储在数据库中),他的 ID 应自动填写到办公室表单页面并使用 session 概念保存在数据库中,但我收到此错误请帮助!

请您参考如下方法:

根据错误

 Failed to convert value of type 'java.lang.String' to required type  
  'int'; nested exception is java.lang.NumberFormatException: For input string: "" 

您需要整数值,但应用程序得到的是空字符串值。这就是为什么它会出错。我会建议您使用 Integer 类而不是 int。我的意思是 int idInteger id。而且我认为在这个声明中的后 Controller session.setAttribute("id", id); id 的值无论如何都没有设置。所以我建议您将 session.setAttribute("id", id); 替换为 session.setAttribute("id", user.getId());


标签:Spring Boot
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号