{"id":2190,"date":"2017-03-24T16:28:02","date_gmt":"2017-03-24T07:28:02","guid":{"rendered":"http:\/\/www.ois-yokohama.co.jp\/oisblog\/?p=2190"},"modified":"2022-09-28T19:03:19","modified_gmt":"2022-09-28T10:03:19","slug":"eclipse-%e3%81%a7-gradle-%e3%83%97%e3%83%ad%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88%e3%81%ae-spring-%e7%92%b0%e5%a2%83%e3%82%92%e3%81%a4%e3%81%8f%e3%82%8b%ef%bc%88part-1%ef%bc%89","status":"publish","type":"post","link":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/archives\/2190","title":{"rendered":"eclipse \u3067 Gradle \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e Spring \u74b0\u5883\u3092\u3064\u304f\u308b\uff08part 1\uff09"},"content":{"rendered":"<p>\u3053\u3093\u306b\u3061\u308f\u3001\u6700\u8fd1\u5e73\u548c\u306a\u65e5\u3005\u3092\u904e\u3054\u3059\u307b\u3052PG\u3067\u3059\u3002<br \/>\n\u4eca\u56de\u3001eclipse\u4e0a\u3067Gradle\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u308a\u3001spring\u306e\u74b0\u5883\u3092\u4f5c\u308a\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<br \/>\n\u5404\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u4ee5\u4e0b\u306e\u901a\u308a<br \/>\neclipse 4.6.2<br \/>\ngradle 2.14.1<br \/>\nspring 4.3.7.RELEASE<br \/>\njdk 1.8<br \/>\ntomcat 8.0<br \/>\n\u30d5\u30a9\u30eb\u30c0\u69cb\u6210<\/p>\n<pre class=\"lang:default decode:true\">src\r\n\u3000main\r\n\u3000\u3000java\r\n\u3000\u3000resources\r\n\u3000\u3000webapp\r\n\u3000\u3000\u3000resources\r\n\u3000\u3000\u3000WEB-INF\r\n\u3000\u3000\u3000\u3000views<\/pre>\n<h3>\uff11\u3001Gradle\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4f5c\u6210<\/h3>\n<p>eclipse \u306e\u65b0\u898f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304b\u3089Gradle\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u9078\u629e\u3057\u3001\u6b21\u3078\u62bc\u4e0b<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2197 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a640a46bbda4e6107d5ac9ad395866d-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a640a46bbda4e6107d5ac9ad395866d-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a640a46bbda4e6107d5ac9ad395866d-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a640a46bbda4e6107d5ac9ad395866d-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a640a46bbda4e6107d5ac9ad395866d.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d\u3092\u6307\u5b9a\u3057\u3001\u5b8c\u4e86\u62bc\u4e0b<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2198 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ca6f3eb7cad90238cbaa6a222a1fad88-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ca6f3eb7cad90238cbaa6a222a1fad88-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ca6f3eb7cad90238cbaa6a222a1fad88-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ca6f3eb7cad90238cbaa6a222a1fad88-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ca6f3eb7cad90238cbaa6a222a1fad88.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n\u3057\u3070\u3089\u304f\u3059\u308b\u3068\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c\u4f5c\u6210\u3055\u308c\u308b<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2199 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2d8a8f06b3fbe7ee4e1fa8461d21608a-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2d8a8f06b3fbe7ee4e1fa8461d21608a-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2d8a8f06b3fbe7ee4e1fa8461d21608a-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2d8a8f06b3fbe7ee4e1fa8461d21608a-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2d8a8f06b3fbe7ee4e1fa8461d21608a.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>\uff12\u3001\u5fc5\u8981\u306a\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3057\u3001Gradle\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5<\/h3>\n<p>\u30d5\u30a9\u30eb\u30c0\u4f5c\u6210\uff1asrc\/main\/webapp\u3001src\/main\/resources<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2201 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/04f0679519578b65a3af4441101ffe4f-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/04f0679519578b65a3af4441101ffe4f-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/04f0679519578b65a3af4441101ffe4f-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/04f0679519578b65a3af4441101ffe4f-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/04f0679519578b65a3af4441101ffe4f.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\nsrc\/main\/webapp\u914d\u4e0b\u306bindex.jsp\u3092\u4f5c\u6210<\/p>\n<pre class=\"lang:default decode:true\">&lt;html&gt;\r\n&lt;body&gt;\r\nHoge\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p>build.gradle \u3092\u4fee\u6b63<\/p>\n<pre class=\"lang:default decode:true\">apply plugin: 'java'\r\napply plugin: 'war'\r\nsourceCompatibility = 1.8\r\ntargetCompatibility = 1.8\r\nrepositories {\r\n    jcenter()\r\n}\r\ndependencies {\r\n    compile 'org.springframework:spring-webmvc:4.3.7.RELEASE'\r\n    compile 'org.slf4j:slf4j-api:1.7.21'\r\n    compile 'org.slf4j:slf4j-log4j12:1.7.21'\r\n    providedCompile 'javax.servlet:javax.servlet-api:3.0.1'\r\n    providedCompile 'javax.servlet:jsp-api:2.0'\r\n    testCompile 'junit:junit:4.12'\r\n}\r\n<\/pre>\n<p>Gradle\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2205 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/b4469f92f2aef545297ce3aa63b98b46-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/b4469f92f2aef545297ce3aa63b98b46-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/b4469f92f2aef545297ce3aa63b98b46-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/b4469f92f2aef545297ce3aa63b98b46-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/b4469f92f2aef545297ce3aa63b98b46.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>\uff14\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u8a2d\u5b9a<\/h3>\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30d5\u30a1\u30bb\u30c3\u30c8\u3092java1.8\u3001\u52d5\u7684Web\u30e2\u30b8\u30e5\u30fc\u30eb3.0\u306b\u8a2d\u5b9a<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2207 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ff59bcff95f2efef2e5aefbe25ef34f9-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ff59bcff95f2efef2e5aefbe25ef34f9-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ff59bcff95f2efef2e5aefbe25ef34f9-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ff59bcff95f2efef2e5aefbe25ef34f9-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ff59bcff95f2efef2e5aefbe25ef34f9.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\nWeb\u30c7\u30d7\u30ed\u30a4\u30e1\u30f3\u30c8\u30fb\u30a2\u30bb\u30f3\u30d6\u30ea\u30fc\u3092\u8a2d\u5b9a<br \/>\n\/WebContent\u3092\u524a\u9664\u3057\u3001\/src\/main\/webapp\u3092\u8ffd\u52a0<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2209 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a08d7bb84752afbed03cc8c6b0425990-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a08d7bb84752afbed03cc8c6b0425990-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a08d7bb84752afbed03cc8c6b0425990-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a08d7bb84752afbed03cc8c6b0425990-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a08d7bb84752afbed03cc8c6b0425990.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u30d1\u30b9\u3092\u5909\u66f4<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2211 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/e29df2f881be37026506686ae094f6aa-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/e29df2f881be37026506686ae094f6aa-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/e29df2f881be37026506686ae094f6aa-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/e29df2f881be37026506686ae094f6aa-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/e29df2f881be37026506686ae094f6aa.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>\u307b\u3052\u308b\uff08tomcat\u306b\u8ffd\u52a0\u3057\u8d77\u52d5\u78ba\u8a8d\uff09<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2212 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a0a2b7c8f88bbe99ca348845308aa36b-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a0a2b7c8f88bbe99ca348845308aa36b-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a0a2b7c8f88bbe99ca348845308aa36b-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a0a2b7c8f88bbe99ca348845308aa36b-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/a0a2b7c8f88bbe99ca348845308aa36b.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2213 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/6e27f46b8f3e43c567150df37d4230e2-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/6e27f46b8f3e43c567150df37d4230e2-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/6e27f46b8f3e43c567150df37d4230e2-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/6e27f46b8f3e43c567150df37d4230e2-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/6e27f46b8f3e43c567150df37d4230e2.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2214 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ad40e1d24152e1c5033b91fffb7243d0-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ad40e1d24152e1c5033b91fffb7243d0-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ad40e1d24152e1c5033b91fffb7243d0-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ad40e1d24152e1c5033b91fffb7243d0-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/ad40e1d24152e1c5033b91fffb7243d0.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>\uff15\u3001\u5404\u7a2e\u8a2d\u5b9a\u3068\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u306a\u3069\u4f5c\u6210<\/h3>\n<p>src\/main\/webapp\/WEB-INF\/web.xml<\/p>\n<pre class=\"lang:default decode:true \">&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\r\n&lt;web-app xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\"\r\n xmlns=\"http:\/\/xmlns.jcp.org\/xml\/ns\/javaee\" xmlns:jsp=\"http:\/\/java.sun.com\/xml\/ns\/javaee\/jsp\"\r\n xsi:schemaLocation=\"http:\/\/xmlns.jcp.org\/xml\/ns\/javaee http:\/\/xmlns.jcp.org\/xml\/ns\/javaee\/web-app_3_1.xsd\"\r\n version=\"3.1\"&gt;\r\n &lt;filter&gt;\r\n  &lt;filter-name&gt;CharacterEncodingFilter&lt;\/filter-name&gt;\r\n  &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter&lt;\/filter-class&gt;\r\n  &lt;init-param&gt;\r\n   &lt;param-name&gt;encoding&lt;\/param-name&gt;\r\n   &lt;param-value&gt;utf-8&lt;\/param-value&gt;\r\n  &lt;\/init-param&gt;\r\n  &lt;init-param&gt;\r\n   &lt;param-name&gt;forceEncoding&lt;\/param-name&gt;\r\n   &lt;param-value&gt;true&lt;\/param-value&gt;\r\n  &lt;\/init-param&gt;\r\n &lt;\/filter&gt;\r\n &lt;filter-mapping&gt;\r\n  &lt;filter-name&gt;CharacterEncodingFilter&lt;\/filter-name&gt;\r\n  &lt;url-pattern&gt;\/*&lt;\/url-pattern&gt;\r\n &lt;\/filter-mapping&gt;\r\n &lt;servlet&gt;\r\n  &lt;servlet-name&gt;dispatcher&lt;\/servlet-name&gt;\r\n  &lt;servlet-class&gt;org.springframework.web.servlet.DispatcherServlet&lt;\/servlet-class&gt;\r\n  &lt;init-param&gt;\r\n   &lt;param-name&gt;contextConfigLocation&lt;\/param-name&gt;\r\n   &lt;param-value&gt;\/WEB-INF\/spring-context.xml&lt;\/param-value&gt;\r\n  &lt;\/init-param&gt;\r\n &lt;\/servlet&gt;\r\n &lt;servlet-mapping&gt;\r\n  &lt;servlet-name&gt;dispatcher&lt;\/servlet-name&gt;\r\n  &lt;url-pattern&gt;\/&lt;\/url-pattern&gt;\r\n &lt;\/servlet-mapping&gt;\r\n&lt;\/web-app&gt;<\/pre>\n<p>src\/main\/webapp\/WEB-INF\/spring-context.xml<\/p>\n<pre class=\"lang:default decode:true\">&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\r\n&lt;beans xmlns=\"http:\/\/www.springframework.org\/schema\/beans\"\r\n xmlns:context=\"http:\/\/www.springframework.org\/schema\/context\"\r\n xmlns:mvc=\"http:\/\/www.springframework.org\/schema\/mvc\"\r\n xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\"\r\n xsi:schemaLocation=\"\r\n http:\/\/www.springframework.org\/schema\/beans\r\n http:\/\/www.springframework.org\/schema\/beans\/spring-beans.xsd\r\n http:\/\/www.springframework.org\/schema\/context\r\n http:\/\/www.springframework.org\/schema\/context\/spring-context.xsd\r\n http:\/\/www.springframework.org\/schema\/mvc\r\n http:\/\/www.springframework.org\/schema\/mvc\/spring-mvc.xsd\"&gt;\r\n &lt;mvc:annotation-driven \/&gt;\r\n &lt;context:component-scan base-package=\"jp.co.ois.hoge\" \/&gt;\r\n &lt;bean\r\n class=\"org.springframework.web.servlet.view.InternalResourceViewResolver\"&gt;\r\n &lt;property name=\"prefix\" value=\"\/WEB-INF\/views\/\" \/&gt;\r\n &lt;property name=\"suffix\" value=\".jsp\" \/&gt;\r\n &lt;\/bean&gt;\r\n &lt;mvc:resources mapping=\"\/resources\/**\" location=\"\/resources\/\" \/&gt;\r\n&lt;\/beans&gt;<\/pre>\n<p>src\/main\/java\/jp\/co\/ois\/hoge\/HogeController.java<\/p>\n<pre class=\"lang:java decode:true\">package jp.co.ois.hoge;\r\nimport org.slf4j.Logger;\r\nimport org.slf4j.LoggerFactory;\r\nimport org.springframework.stereotype.Controller;\r\nimport org.springframework.ui.Model;\r\nimport org.springframework.validation.BindingResult;\r\nimport org.springframework.web.bind.annotation.ModelAttribute;\r\nimport org.springframework.web.bind.annotation.RequestMapping;\r\n@Controller\r\npublic class HogeController {\r\n\tprivate static final Logger log = LoggerFactory.getLogger(HogeController.class);\r\n\t@ModelAttribute(\"hogeForm\")\r\n\tpublic HogeForm createForm() {\r\n\t\tlog.debug(\"called.\");\r\n\t\treturn new HogeForm();\r\n\t}\r\n\t@RequestMapping(\"\/top\")\r\n\tpublic String top(Model model) {\r\n\t\tlog.debug(\"called.\");\r\n\t\treturn \"hoge\";\r\n\t}\r\n\t@RequestMapping(\"\/names\")\r\n\tpublic String names(HogeForm form, BindingResult result, Model model) {\r\n\t\tlog.debug(\"called. {}\", result.getErrorCount());\r\n\t\tString s = form.getName1() + form.getName2();\r\n\t\tlog.debug(\"s = [{}]\", s);\r\n\t\tmodel.addAttribute(\"result\", s);\r\n\t\treturn \"hoge\";\r\n\t}\r\n}<\/pre>\n<p>src\/main\/java\/jp\/co\/ois\/hoge\/HogeForm.java<\/p>\n<pre class=\"lang:java decode:true\">package jp.co.ois.hoge;\r\npublic class HogeForm {\r\n\tprivate String name1;\r\n\tprivate String name2;\r\n\tpublic String getName1() {\r\n\t\treturn name1;\r\n\t}\r\n\tpublic void setName1(String name1) {\r\n\t\tthis.name1 = name1;\r\n\t}\r\n\tpublic String getName2() {\r\n\t\treturn name2;\r\n\t}\r\n\tpublic void setName2(String name2) {\r\n\t\tthis.name2 = name2;\r\n\t}\r\n}\r\n<\/pre>\n<p>src\/main\/webapp\/WEB-INF\/views\/hoge.jsp<\/p>\n<pre class=\"lang:default decode:true\">&lt;%@ page language=\"java\" contentType=\"text\/html; charset=UTF-8\"\r\n    pageEncoding=\"UTF-8\"%&gt;\r\n&lt;%@taglib uri=\"http:\/\/www.springframework.org\/tags\/form\" prefix=\"form\"%&gt;\r\n&lt;!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.01 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/html4\/loose.dtd\"&gt;\r\n&lt;html&gt;\r\n&lt;head&gt;\r\n&lt;meta http-equiv=\"Content-Type\" content=\"text\/html; charset=UTF-8\"&gt;\r\n&lt;title&gt;Are you hoge?&lt;\/title&gt;\r\n&lt;\/head&gt;\r\n&lt;body&gt;\r\n&lt;form:form modelAttribute=\"hogeForm\" servletRelativeAction=\"\/names\" method=\"POST\"&gt;\r\n\u540d\u524d\uff11 &lt;br\/&gt;\r\n&lt;form:input path=\"name1\" \/&gt;\r\n &lt;br\/&gt;\r\n\u540d\u524d\uff12\uff1a &lt;br\/&gt;\r\n&lt;form:input path=\"name2\" \/&gt;\r\n &lt;br\/&gt;\r\n &lt;input type=\"submit\" value=\"\u307b\u3052\" \/&gt;\r\n&lt;\/form:form&gt;\r\n&lt;hr&gt;\r\n${result}\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p>src\/main\/resources\/log4j.properties<\/p>\n<pre class=\"lang:default decode:true\">log4j.rootLogger = INFO, Console\r\nlog4j.logger.jp.co.ois.hoge = DEBUG\r\nlog4j.appender.Console=org.apache.log4j.ConsoleAppender\r\nlog4j.appender.Console.layout=org.apache.log4j.PatternLayout\r\nlog4j.appender.Console.layout.ConversionPattern=%-5p (%F:%L) %M() - %m%n<\/pre>\n<p>\u307b\u3052\u308b\uff08tomcat\u8d77\u52d5\u78ba\u8a8d\uff09<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2217 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/496bf7cba4c3be5ca276147c88dd1d14-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/496bf7cba4c3be5ca276147c88dd1d14-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/496bf7cba4c3be5ca276147c88dd1d14-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/496bf7cba4c3be5ca276147c88dd1d14-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/496bf7cba4c3be5ca276147c88dd1d14.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2218 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a87a2b702f73caffba6af1bdcbe7c25-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a87a2b702f73caffba6af1bdcbe7c25-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a87a2b702f73caffba6af1bdcbe7c25-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a87a2b702f73caffba6af1bdcbe7c25-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/2a87a2b702f73caffba6af1bdcbe7c25.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2219 size-large\" src=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/1392239cc22b277587b24af0c329433e-1024x640.png\" alt=\"\" width=\"1024\" height=\"640\" srcset=\"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/1392239cc22b277587b24af0c329433e-1024x640.png 1024w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/1392239cc22b277587b24af0c329433e-300x188.png 300w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/1392239cc22b277587b24af0c329433e-768x480.png 768w, https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-content\/uploads\/2017\/03\/1392239cc22b277587b24af0c329433e.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<span style=\"color: #666666;\">\u307b\u3052\uff01\uff08good\uff09<\/span><\/p>\n<p style=\"color: #666666;\">\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u4e00\u5f0f\u306f\u4ee5\u4e0b\u306b\u7f6e\u304d\u307e\u3057\u305f\u3002<\/p>\n<p style=\"color: #666666;\"><a href=\"http:\/\/www.ois-yokohama.co.jp\/oisblog2018\/file\/Hogedle.zip\">http:\/\/www.ois-yokohama.co.jp\/oisblog2018\/file\/Hogedle.zip<\/a><\/p>\n<p>\u4eca\u56de\u306f\u3053\u3053\u307e\u3067\u3002\u6b21\u56de\u306f Eclipse\u4e0a\u3067\u8a2d\u5b9a\u3057\u305f\u3053\u3068\u3092build.gradle \u306b\u8a18\u8f09\u3057\u3066Eclipse\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002\u3067\u306f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3053\u3093\u306b\u3061\u308f\u3001\u6700\u8fd1\u5e73\u548c\u306a\u65e5\u3005\u3092\u904e\u3054\u3059\u307b\u3052PG\u3067\u3059\u3002 \u4eca\u56de\u3001eclipse\u4e0a\u3067Gradle\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u308a\u3001spring\u306e\u74b0\u5883\u3092\u4f5c\u308a\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002 \u5404\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u4ee5\u4e0b\u306e\u901a\u308a eclipse 4.6.2 gra [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"vkexunit_cta_each_option":"","footnotes":""},"categories":[6],"tags":[51,52,28,24],"class_list":["post-2190","post","type-post","status-publish","format-standard","hentry","category-engineer","tag-eclipse","tag-gradle","tag-hoge","tag-spring"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/posts\/2190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/comments?post=2190"}],"version-history":[{"count":2,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/posts\/2190\/revisions"}],"predecessor-version":[{"id":8132,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/posts\/2190\/revisions\/8132"}],"wp:attachment":[{"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/media?parent=2190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/categories?post=2190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ois-yokohama.co.jp\/oisblog2018\/wp-json\/wp\/v2\/tags?post=2190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}