首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >model.addAttribute是否返回null?

model.addAttribute是否返回null?
EN

Stack Overflow用户
提问于 2019-08-12 16:25:05
回答 1查看 492关注 0票数 0

我的model.addAttribute (create_room.jsp)向我的控制器(AdminController.java)返回null?

my create_room.jsp的表单:

代码语言:javascript
复制
<form action="create_room_bdd">
    <label for="nameRoom">Name Room</label><br><br>
    <input type="text" name="nameRoom">
    <input type="submit" value="Create Room">
</form>

我的样板房:

代码语言:javascript
复制
package Projet.stage.maven.virtualschool4.model;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class Room {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String name;

public Room() {

}

public Room(Integer id, String name) {
    this.id = id;
    this.name = name;
}

public Room(String name) {
    this.name = name;
}

    public String getName() {
    return name;
}

我的控制器AdminController:

代码语言:javascript
复制
package Projet.stage.maven.virtualschool4.controller;


import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import Projet.stage.maven.virtualschool4.model.Room;
import Projet.stage.maven.virtualschool4.repository.RoomRepository;


@Controller
public class AdminController {
@Autowired
RoomRepository repo;

@RequestMapping(value = { "create_room" }, method = RequestMethod.GET)
public String index(Model model) {
    return "create_room";
}





@RequestMapping("/create_room_bdd")
public String index4(@ModelAttribute Room room, Model model) {

    model.addAttribute("nameRoom", room.getName());



    Map<String, Object> nameForm;
    nameForm = model.asMap();

    System.out.println("room : " + nameForm.toString());
    //repo.save(test);      

    return "admin";
}


}

结果在我的控制台中,我的"nameRomm“= null而不是我的输入中抓取的文本?:

代码语言:javascript
复制
room : {room=Projet.stage.maven.virtualschool4.model.Room@1b7cbcf9, org.springframework.validation.BindingResult.room=org.springframework.validation.BeanPropertyBindingResult: 0 errors, nameRoom=null}

为什么这个不能工作,而同一型号上的另一个可以工作?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-12 19:12:28

将此名称更改为<input type="text" name="name">,而不是nameRoom。应该可以

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57457806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档