آموزش جاوا-آموزش فرم هندلینگ در Spring MVC

سلام دوستان ...در قسمت قبل با مفاهیم زیر آشنا شدیدبرپا کردن محیط مربوط MVC Springآموزش Hello World در Spring MVCقسمت اول آموزش با آموزش Spring MVC همراه ما باشیدآموزش Form Handling در Spring MVCمثال در این مثال چگونگی نوشتن یک برنامه ی تحت وب ساده ی Hello World با استفاده از Spring MVC Framework نشان داده شده است. برای شروع Eclipse IDE را آماده کنید و جهت توسعه ی یک برنامه ی وب پویا با استفاده از Spring Web Framework مراحل زیر را دنبال کنید.Student.javapackage com.tutorialspoint;public class Student { private Integer age; private String name; private Integer id; public void setAge(Integer age) { this.age = age; } public Integer getAge() { return age; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setId(Integer id) { this.id = id; } public Integer getId() { return id; }}StudentController.javapackage com.tutorialspoint;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.ModelAttribute;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.servlet.ModelAndView;import org.springframework.ui.ModelMap;@Controllerpublic class StudentController { @RequestMapping(value = &quot/student&quot, method = RequestMethod.GET) public ModelAndView student() { return new ModelAndView(&quotstudent&quot, &quotcommand&quot, new Student()); } @RequestMapping(value = &quot/addStudent&quot, method = RequestMethod.POST) public String addStudent(@ModelAttribute(&quotSpringWeb&quot)Student student, ModelMap model) { model.addAttribute(&quotname&quot, student.getName()); model.addAttribute(&quotage&quot, student.getAge()); model.addAttribute(&quotid&quot, student.getId()); return &quotresult&quot }}آموزش Spring MVC : در اینجا در اولین متد سرویس student() یک Studentobject خالی را در شیء ModelAndView با نام "command" عبور داده ایم. دلیل انجام این کاراین است که spring framework انتظار دارد که اسم شیء "command"باشد. این برای حالتی است که ما از تگ های < form:form > در فایل JSP استفاده کنیم. بنابراین زمانی که متد student() فراخوانی می شود، این متد ویوی student.jsp را برگشت می دهد.دومین متد سرویس addStudent() در برابر یک متد POST و در آدرس HelloWeb/addStudent فراخوانی می شود. شما باید شیء مدل خود را بر اساس اطلاعات ارائه شده آماده کنید. در نهایت یک ویوی "result" از متد سرویس برگشت داده می شود. این امر باعث می شود result.jsp نمایش داده شود.student.jsp< %@taglib uri=&quothttp://www.springframework.org/tags/form&quot prefix = &quotform&quot% >< html > < head > < title >Spring MVC Form Handling< /title > < /head > < body > < h2 >Student Information< /h2 > < form:form method = &quotPOST&quot action = &quot/HelloWeb/addStudent&quot > < table > < tr > < td >< form:label path = &quotname&quot >Name< /form:label >< /td > < td >< form:input path = &quotname&quot / >< /td > < /tr > < tr > < td >< form:label path = &quotage&quot >Age< /form:label >< /td > < td >< form:input path = &quotage&quot / >< /td > < /tr > < tr > < td >< form:label path = &quotid&quot >id< /form:label >< /td > < td >< form:input path = &quotid&quot / >< /td > < /tr > < tr > < td colspan = &quot2&quot > < input type = &quotsubmit&quot value = &quotSubmit&quot/ > < /td > < /tr > < /table > < /form:form > < /body >< /html >result.jsp< %@taglib uri = &quothttp://www.springframework.org/tags/form&quot prefix = &quotform&quot% >< html > < head > < title >Spring MVC Form Handling< /title > < /head > < body > < h2 >Submitted Student Information< /h2 > < table > < tr > < td >Name< /td > < td >$ {name}< /td > < /tr > < tr > < td >Age< /td > < td >$ {age}< /td > < /tr > < tr > < td >ID< /td > < td >$ {id}< /td > < /tr > < /table > < /body >< /html >بعد از آن که کار فایل های پیکربندی و منبع تمام شد، برنامه ی خود را اکسپورت کنید. بر روی برنامه ی خود کلیک راست کنید، از گزینه ی Export → WAR File استفاده کنید و فایل SpringWeb.war را داخل پوشه ی webapps متعلق به Tomcat ذخیره کنید.حالا سرور Tomcat را اجرا کنید و مطمئن شوید که از طریق پوشه ی webapps و با استفاده از یک مرورگر استاندارد می توانید به دیگر صفحات وب دسترسی پیدا کنید. حالا در صورت وارد کردن آدرس http://localhost:8080/SpringWeb/student و در صورت نبود مشکل در برنامه ی Spring Web صفحه ی زیر نمایش داده می شود.آموزش Spring MVC : بعد از وارد کردن اطلاعات مورد نیاز، بر روی دکمه ی submit کلیک کنید تا اگر مشکلی در برنامه ی Spring Web وجود نداشته باشد، صفحه زیر نمایش داده شود.آموزش Page Redirection در Spring MVCدر این مثال چگونگی نوشتن یک برنامه ی تحت وب ساده نشان داده شده است که از طریق آن می توان جهت انتقال یک درخواست HTTP به صفحه ی دیگر از قابلیت redirect استفاده کرد. برای شروع Eclipse IDE را آماده کنید و جهت توسعه ی این برنامه ی وب مبتنی بر فرم پویا با استفاده از Spring Web Framework مراحل زیر را دنبال کنید.WebController.javapackage com.tutorialspoint; import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod; @Controllerpublic class WebController { @RequestMapping(value = &quot/index&quot, method = RequestMethod.GET) public String index() { return &quotindex&quot } @RequestMapping(value = &quot/redirect&quot, method = RequestMethod.GET) public String redirect() { return &quotredirect:finalPage&quot } @RequestMapping(value = &quot/finalPage&quot, method = RequestMethod.GET) public String finalPage() { return &quotfinal&quot }}در ادامه می توانید محتوای فایل ویوی index.jsp را مشاهده کنید. این صفحه قرار است صفحه ی landing باشد. به این صورت که درخواستی را به متد سرویس access-redirect ارسال می کند که این درخواست به متد سرویس دیگری redirect می شود و در نهایت صفحه ی final.jsp نمایش داده می شود.index.jsp< %@taglib uri = &quothttp://www.springframework.org/tags/form&quot prefix = &quotform&quot% >< html > < head > < title >Spring Page Redirection< /title > < /head > < body > < h2 >Spring Page Redirection< /h2 > < p >Click below button to redirect the result to new page< /p > < form:form method = &quotGET&quot action = &quot/HelloWeb/redirect&quot > < table > < tr > < td > < input type = &quotsubmit&quot value = &quotRedirect Page&quot/ > < /td > < /tr > < /table > < /form:form > < /body >< /html >final.jsp< %@taglib uri = &quothttp://www.springframework.org/tags/form&quot prefix = &quotform&quot% >< html > < head > < title >Spring Page Redirection< /title > < /head > < body > < h2 >Redirected Page< /h2 > < /body > < /html >بعد از آن که کار فایل های پیکربندی و منبع تمام شد، برنامه ی خود را اکسپورت کنید. بر روی برنامه ی خود کلیک راست کنید، از گزینه ی Export → WAR File استفاده کنید و فایل HelloWeb.war را داخل پوشه ی webapps متعلق به Tomcat ذخیره کنید.حالا سرور Tomcat را اجرا کنید و مطمئن شوید که از طریق پوشه ی webapps و با استفاده از یک مرورگر استاندارد می توانید به دیگر صفحات وب دسترسی پیدا کنید. حالا در صورت وارد کردن آدرس http://localhost:8080/HelloWeb/index و در صورت نبود مشکل در برنامه ی Spring Web صفحه ی زیر نمایش داده می شود.حالا بر روی دکمه ی "Redirect Page" کلیک کنید تا فرم مورد نظرتان ارائه شود و بتوانید به صفحه ی Redirect شده ی نهایی بروید. اگر مشکلی وجود نداشته باشد، صفحه ی زیر نمایش داده می شود.آموزش Spring MVC ادامه دارد