{"id":7573,"date":"2023-02-09T12:22:10","date_gmt":"2023-02-09T03:22:10","guid":{"rendered":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7573"},"modified":"2023-03-01T10:37:08","modified_gmt":"2023-03-01T01:37:08","slug":"spring-boot-form","status":"publish","type":"post","link":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7573","title":{"rendered":"Spring Boot &#8211; JSTL form"},"content":{"rendered":"<h1>Spring Boot &#8211; JSTL form<\/h1>\n<p>Spring Boot JSTL \ud14c\uadf8\uc911 form \ud14c\uadf8\uc5d0 \ub300\ud574 \uc124\uba85\ud569\ub2c8\ub2e4.<\/p>\n<h2>@Controller<\/h2>\n<p>\uc2e0\uaddc \ub370\uc774\ud0c0\ub97c \uc785\ub825\ud558\uae30 \uc704\ud574 <code>new SearchCompanyResponseDto()<\/code> \uc640 \uac19\uc774 \ube48 \ub370\uc774\ud0c0\ub97c \uc804\uc1a1\ud569\ub2c8\ub2e4.<br \/>\nCompanyDivision \uc740 Enum \uc785\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-java\">@Controller\n@RequiredArgsConstructor\npublic class CompanyIndexController {\n    @GetMapping(&quot;\/admin\/company\/create&quot;)\n    public String create(HttpServletRequest request, ModelMap model) {\n        model.addAttribute(&quot;company&quot;, new SearchCompanyResponseDto());\n        model.addAttribute(&quot;companyDivision&quot;, CompanyDivision.values());\n        return &quot;\/admin\/companyModify&quot;;\n    }\n}<\/code><\/pre>\n<h2>JSP<\/h2>\n<p>\uc0ac\uc6a9\ubc95\uc774 \uc9c1\uad00\uc801\uc774\uc5b4\uc11c \ub530\ub85c \uc124\uba85\uc740 \ud544\uc694\uc5c6\uc744 \ub4ef \ud569\ub2c8\ub2e4.<br \/>\nDTO \uc5d0 \uac12\uc774 \uc788\ub294 \uacbd\uc6b0 \uc790\ub3d9\uc124\uc815\uae4c\uc9c0 \ud574\uc90d\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-html\">&lt;%@ taglib prefix=&quot;form&quot; uri=&quot;http:\/\/www.springframework.org\/tags\/form&quot; %&gt;\n......\n&lt;%--@elvariable id=&quot;company&quot; type=&quot;kr.pe.skyer9.warehouseweb.external.dto.response.SearchCompanyResponseDto&quot;--%&gt;\n......\n&lt;form:form id=&quot;frm&quot; name=&quot;frm&quot; modelAttribute=&quot;company&quot;&gt;\n&lt;table&gt;\n    &lt;tr&gt;\n        &lt;td&gt;ID&lt;\/td&gt;\n        &lt;td&gt;\n            ${company.companyId}\n            &lt;form:hidden path=&quot;companyId&quot; \/&gt;\n        &lt;\/td&gt;\n    &lt;\/tr&gt;\n    &lt;tr&gt;\n        &lt;td&gt;\uad6c\ubd84&lt;\/td&gt;\n        &lt;td&gt;\n            &lt;form:select path=&quot;companyDivision&quot;&gt;\n                &lt;option value=&quot;&quot;&gt;&lt;\/option&gt;\n                &lt;form:options items=&quot;${companyDivision}&quot; itemValue=&quot;name&quot; itemLabel=&quot;description&quot; \/&gt;\n            &lt;\/form:select&gt;\n        &lt;\/td&gt;\n    &lt;\/tr&gt;\n    &lt;tr&gt;\n        &lt;td&gt;\uc5c5\uccb4 \ub85c\uadf8\uc778ID&lt;\/td&gt;\n        &lt;td&gt;\n            &lt;form:input path=&quot;companyLoginId&quot; \/&gt;\n        &lt;\/td&gt;\n    &lt;\/tr&gt;\n    &lt;tr&gt;\n        &lt;td&gt;\uc5c5\uccb4\uba85&lt;\/td&gt;\n        &lt;td&gt;\n            &lt;form:input path=&quot;companyName&quot; \/&gt;\n        &lt;\/td&gt;\n    &lt;\/tr&gt;\n    &lt;tr&gt;\n        &lt;td&gt;\uc0ac\uc6a9\uc5ec\ubd80&lt;\/td&gt;\n        &lt;td&gt;\n            &lt;form:radiobutton path=&quot;isUsing&quot; value=&quot;Y&quot;\/&gt; \uc0ac\uc6a9\n            &lt;form:radiobutton path=&quot;isUsing&quot; value=&quot;N&quot;\/&gt; \uc0ac\uc6a9\uc548\ud568\n            &lt;input type=&quot;button&quot; value=&quot;\uc0ac\uc6a9\uc5ec\ubd80 \uc800\uc7a5&quot; onclick=&quot;jsSaveIsUsing(${company.companyId})&quot; \/&gt;\n        &lt;\/td&gt;\n    &lt;\/tr&gt;\n&lt;\/table&gt;\n    &lt;input type=&quot;submit&quot; value=&quot;\uc800\uc7a5&quot; \/&gt;\n    &lt;input type=&quot;button&quot; value=&quot;\ucde8\uc18c&quot; onclick=&quot;jsBack()&quot; \/&gt;\n&lt;\/form:form&gt;<\/code><\/pre>\n<h2>Controller<\/h2>\n<p>DTO \ub97c \uc124\uc815\ud574 \uc8fc\uba74 \uac12\uc774 \uc790\ub3d9\uc73c\ub85c \uc785\ub825\ub41c\ub2e4.<\/p>\n<pre><code class=\"language-java\">    @GetMapping(&quot;\/admin\/company\/modify&quot;)\n    public String modify(HttpServletRequest request, HttpServletResponse response, ModelMap model, @RequestParam(value = &quot;id&quot;) Long companyId) throws IOException {\n        SearchCompanyResponseDto dto = service.get(companyId);\n        model.addAttribute(&quot;company&quot;, dto);\n        model.addAttribute(&quot;companyDivision&quot;, CompanyDivision.values());\n        return &quot;\/admin\/companyModify&quot;;\n    }<\/code><\/pre>\n<h2>\ud0dc\uadf8 \ubaa9\ub85d<\/h2>\n<pre><code class=\"language-html\">&lt;form:password&gt;\n&lt;form:form&gt;\n&lt;form:input&gt;\n&lt;form:textarea&gt;\n&lt;form:checkbox&gt;\n&lt;form:checkboxes&gt;\n&lt;form:radiobutton&gt;\n&lt;form:radiobuttons&gt;\n&lt;form:select&gt;\n&lt;form:hidden&gt;\n&lt;form:label&gt;\n&lt;form:button&gt;<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Spring Boot &#8211; JSTL form Spring Boot JSTL \ud14c\uadf8\uc911 form \ud14c\uadf8\uc5d0 \ub300\ud574 \uc124\uba85\ud569\ub2c8\ub2e4. @Controller \uc2e0\uaddc \ub370\uc774\ud0c0\ub97c \uc785\ub825\ud558\uae30 \uc704\ud574 new SearchCompanyResponseDto() \uc640 \uac19\uc774 \ube48 \ub370\uc774\ud0c0\ub97c \uc804\uc1a1\ud569\ub2c8\ub2e4. CompanyDivision \uc740 Enum \uc785\ub2c8\ub2e4. @Controller @RequiredArgsConstructor public class CompanyIndexController { @GetMapping(&quot;\/admin\/company\/create&quot;) public String create(HttpServletRequest request, ModelMap model) { model.addAttribute(&quot;company&quot;, new SearchCompanyResponseDto()); model.addAttribute(&quot;companyDivision&quot;, CompanyDivision.values()); return &quot;\/admin\/companyModify&quot;; } } JSP \uc0ac\uc6a9\ubc95\uc774 \uc9c1\uad00\uc801\uc774\uc5b4\uc11c\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7573\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29],"tags":[],"class_list":["post-7573","post","type-post","status-publish","format-standard","hentry","category-spring-boot-2-5"],"_links":{"self":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7573"}],"version-history":[{"count":7,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7573\/revisions"}],"predecessor-version":[{"id":7656,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7573\/revisions\/7656"}],"wp:attachment":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}