Spring MVC form:radiobuttonsタグを使うサンプルコード

環境
Spring 5.2.22
Eclipse 4.24.0

操作方法
1.画面表示用モデルを作成します(RadiobuttonsModel.java)

public class RadiobuttonsModel {
    private String selectedCity;
}

2.コントローラは以下のようになります。ここではradiobuttonの初期値を「303」にしています。

@Controller
public class FormController {
    @RequestMapping(value = "/radiobuttons", method = RequestMethod.GET)
    public String Radiobuttons(Model model) {
        List<City> cft = new ArrayList<>();
         // リストの要素を追加
        cft.add(new City("101", "東京"));
        cft.add(new City("202", "大阪"));
        cft.add(new City("303", "福岡"));
            
            //モデルのオブジェクトのインスタンスの生成
        RadiobuttonsModel rbm = new RadiobuttonsModel();
        rbm.setSelectedCity("303");
        model.addAttribute("radiobuttonsModel", rbm);
        model.addAttribute("cft", cft);

        return "radiobuttons";
    }
}

3.JSP画面
書式

form:radiobuttons path="フィールド名" items="${リスト名または配列名}" itemLabel="都市名" itemValue="クラスのプロパティ名" delimiter="区切文字"

path
form:formで指定したmodelAttributeの中のフィールドのうち、この要素に割り当てるフィールドの名称
items
radiobuttonsを作るための配列やMap
itemValue
valueを出力するitemsで指定したクラスのプロパティ名
delimiter
radiobuttons間の区切り文字。デフォルトはなし

サンプルコード

<form:form modelAttribute="radiobuttonsModel">
 <form:radiobuttons path="selectedCity" items="${cft}" itemLabel="都市名" itemValue="city" delimiter="&nbsp;" />
</form:form>

 

SpringMVC

Posted by arkgame