I finally implemented MVC with RequestDispatcher.

xiaoxiao2021-03-06  38

1. First create an HTML page collection input, the fool will, pass the parameters to Color

2. Then the servlet collects the parameters and establishes an instance with the parameter through JavaBean.

Bean Object = New bean;

3. Then follow the GET method of JavaBean to return to the Color, servlet to determine .// Equals () Method.

Object.getcolor ();

4. Servlet is judged to the corresponding JSP page

String addr = ...

Core method:

Reqest.setttribute ("Instance", Object);

RequestDispatcher Dispatcher = Request.GetRequestDispatcher (AddR);

Dispatcher .forward (Request, Response);

5.jsp page reads the corresponding String based on the example established by the previous example.

This program begins with the book, and later written itself.

The following code is not very understanding, and the establishment of several objects? That is an example? Especially SetAttribute ("RED", color);

Is it in front of the replacement?

String TempColor = Request.GetParameter ("color");

ColorBean Color = New ColorBean (TempColor);

Request.setttribute ("Red", Color; RequestDispatcher Dispatcher = Request.GetRequestDispatcher (addr);

Dispatcher.Forward (Request, Response);

You can now implement the MVC architecture, however, where the object's generation process is still not understood, the object, the object ...

The following is the source code:

among them

INPUT.JSP is the collection color page

Wantcolor.java is servlet

ColorBean.java is Javabean

Others are three JSP pages to connect JavaBean display colors

The book is classic, why are I not Americans?

***********

//input.jsp

<% @ Page ContentType = "text / html; charset = GB2312"%>

Please enter the color you want </ Title></p> <p></ hEAD></p> <p><body></p> <p><form action = "./ servlet / wantcolors" type = post></p> <p><Input Type = Text Name = Color></p> <p><Input Type = Submit Value = Submit></p> <p></ form></p> <p></ body></p> <p></ html></p> <p>************** // Wantcolors.java</p> <p>Package moonsoft.test.j2ee.wantcolors;</p> <p>Import javax.servlet. *;</p> <p>Import javax.servlet.http. *;</p> <p>Import java.io.printwriter;</p> <p>Import java.io.ioException;</p> <p>Public Class Wantcolors Extends httpservlet</p> <p>{</p> <p>Private static final string content_type = "text / html; charSet = BIG5";</p> <p>Public Void Init (ServletConfig Config) Throws ServleTexception</p> <p>{</p> <p>Super.init (config);</p> <p>}</p> <p>Public void doget (httpservletRequest Request, HttpservletResponse Response) Throws ServletException, IOException</p> <p>{</p> <p>String TempColor = Request.GetParameter ("color");</p> <p>ColorBean Color = New ColorBean (TempColor);</p> <p>IF ((Color.getColor () == null) && (color.getcolor ()). Equals (""))</p> <p>{</p> <p>Addr = "../ input.jsp";</p> <p>Response.sendRedirect ("");</p> <p>}</p> <p>Else IF (color.getcolor (). Equals ("red"))</p> <p>{</p> <p>Request.setattribute ("Red", Color);</p> <p>AddR = "../ red.jsp";</p> <p>}</p> <p>Else IF (color.getcolor (). Equals ("green"))</p> <p>{</p> <p>Request.setttribute ("Green", Color);</p> <p>Addr = "../ Green.jsp";</p> <p>}</p> <p>Else</p> <p>{</p> <p>Request.setttribute ("Blue", Color);</p> <p>Addr = "../ blue.jsp";</p> <p>}</p> <p>RequestDispatcher Dispatcher = Request.GetRequestDispatcher (AddR);</p> <p>Dispatcher.Forward (Request, Response);</p> <p>/*Response.setContentType (t_type);</p> <p>PrintWriter out = response.getwriter ();</p> <p>Out.println ("<html>");</p> <p>Out.println ("<head> <title> wantcolors </ title> </ head>);</p> <p>Out.println ("<Body>");</p> <p>Out.println ("<p> the servlet Has Received A get. this is the reply. </ p>");</p> <p>Out.println ("</ Body> </ HTML>");</p> <p>Out.close (); * /</p> <p>}</p> <p>Public void dopost (httpservletRequest request, httpservletResponse response) throws servletexception, ioException {</p> <p>DOGET (Request, Response);</p> <p>/*Response.setContentType (t_type);</p> <p>PrintWriter out = response.getwriter ();</p> <p>Out.println ("<html>");</p> <p>Out.println ("<head> <title> wantcolors </ title> </ head>);</p> <p>Out.println ("<Body>");</p> <p>Out.println ("<p> The servlet has received a pos. this is the reply. </ p>");</p> <p>Out.println ("</ Body> </ HTML>");</p> <p>Out.close (); * /</p> <p>}</p> <p>PRIVATE STRING ADDR;</p> <p>}</p> <p>**********************</p> <p>//Colorbean.java</p> <p>Package moonsoft.test.j2ee.wantcolors;</p> <p>Public Class Colorbean</p> <p>{</p> <p>Public ColorBean (String Color)</p> <p>{</p> <p>THIS.COLOR = Color;</p> <p>}</p> <p>Public string getString ()</p> <p>{</p> <p>String s = "the color is: / t";</p> <p>Return S Color;</p> <p>}</p> <p>Public string getcolor ()</p> <p>{</p> <p>Return Color;</p> <p>}</p> <p>Public Void SetColor (String Color)</p> <p>{</p> <p>THIS.COLOR = Color;</p> <p>}</p> <p>PRIVATE STRING Color;</p> <p>}</p> <p>*************</p> <p>Red.jsp</p> <p><% @ Page ContentType = "Text / HTML; Charset = BIG5"%></p> <p><html></p> <p><HEAD></p> <p><meta http-equiv = "content-type" content = "text / html; charSet = big5"></p> <p><title> red </ title></p> <p></ hEAD></p> <p><body bgcolor = "# ff0000"></p> <p><font color = "# ffffff" size = 6></p> <p><jsp: usebean id = "red" type = "moonsoft.test.j2ee.wantcolors.colorbean" scope = "request" /></p> <p><jsp: getproperty name = "red" property = "string" /></p> <p></ font></p> <p></ body></p> <p></ html></p> <p>The two greens and blue copys, then change the value.</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-64621.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="64621" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.037</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'wnGSogyIL5HP13s03wWWkG0kJR1PBKIG3JCQpB2FgI5V_2BidN5_2BQssT_2BJVluJ_2BELbfexONzDrYfFtBM1o'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>