Den String direkt zurückgeben: Diese Methode verkettet den zurückgegebenen String mit dem Präfix und Suffix des Ansichtsparsers und springt dann. ?? Daten werden häufig im Anforderungsfeld gespeichert und auf der JSP-Seite angezeigt. Wie speichert der Controller Daten im Anforderungsfeld?
① Wird über die setAttribute()-Methode des vom SpringMVC-Framework injizierten Anforderungsobjekts festgelegt.
@RequestMapping("/quick2") public ModelAndView quickMethod2(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("redirect:index.jsp"); return modelAndView; } @RequestMapping("/quick3") public ModelAndView quickMethod3(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("forward:/WEB-INF/views/index.jsp"); return modelAndView; }② Wird über die addObject()-Methode von ModelAndView festgelegt.
@RequestMapping("/quick") public String quickMethod(HttpServletRequest request){ request.setAttribute("name","zhangsan"); return "index"; }2) Daten zurückschreiben String direkt zurückgeben: In der Grundstufe von Web greift der Client auf den Server zu. Wenn Sie den String direkt zurückschreiben und als Antworttext zurückgeben möchten, müssen Sie nur die Antwort verwenden .getWriter().print("hello world"), was ist also, wenn Sie einen String direkt in den Controller zurückschreiben möchten? ① Verwenden Sie Response.getWriter().print("hello world"), um Daten über das vom SpringMVC-Framework injizierte Antwortobjekt zurückzuschreiben. Zu diesem Zeitpunkt ist kein Ansichtssprung erforderlich, und der Rückgabewert der Geschäftsmethode ist Leere.
@RequestMapping("/quick3") public ModelAndView quickMethod3(){ ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("forward:/WEB-INF/views/index.jsp"); modelAndView.addObject("name","lisi"); return modelAndView; }② Geben Sie die Zeichenfolge zurück, die direkt zurückgeschrieben werden muss. Zu diesem Zeitpunkt müssen Sie das SpringMVC-Framework jedoch über die Annotation @ResponseBody informieren. Die von der Methode zurückgegebene Zeichenfolge ist kein Sprung, sondern wird direkt in der http-Antwort zurückgegeben Körper.
@RequestMapping("/quick4") public void quickMethod4(HttpServletResponse response) throws IOException { response.getWriter().print("hello world"); }In der Entwicklung müssen wir häufig komplexe Java-Objekte in JSON-Format-Strings konvertieren. Zum Konvertieren können wir Jackson-Koordinaten verwenden.
@RequestMapping("/quick5") @ResponseBody public String quickMethod5() throws IOException { return "hello springMVC!!!"; }2. Konvertieren Sie die Zeichenfolge im JSON-Format über Jackson und schreiben Sie die Zeichenfolge zurück.
<!--jackson--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.9.0</version> </dependency>Objekte oder Sammlungen zurückgebenVerwenden Sie SpringMVC, um uns dabei zu helfen, Objekte oder Sammlungen in JSON-Strings zu konvertieren und zurückzuschreiben, Nachrichtenkonvertierungsparameter für den Prozessoradapter zu konfigurieren und die Verwendung von Jackson zum Konvertieren von Objekten oder Sammlungen anzugeben, was wir benötigen Um Spring zu verwenden, konfigurieren Sie Folgendes in mvc.xml:
@RequestMapping("/quick7") @ResponseBody public String quickMethod7() throws IOException { User user = new User(); user.setUsername("zhangsan"); user.setAge(18); ObjectMapper objectMapper = new ObjectMapper(); String s = objectMapper.writeValueAsString(user); return s; }Objekte oder Sammlungen direkt in der Methode zurückgeben
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"> <property name="messageConverters"> <list> <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"></bean> </list> </property> </bean>3) Konfigurieren Sie den AnnotationstreiberFügen Sie @ResponseBody zur Methode hinzu, um eine Zeichenfolge im JSON-Format zurückzugeben, aber dies Die Konfiguration ist problematischer, der Konfigurationscode ist relativ groß, daher können wir den Annotationstreiber von mvc anstelle der obigen Konfiguration verwenden. Unter den verschiedenen Komponenten von SpringMVC werden der Prozessor-Mapper, der Prozessor-Adapter und der View-Resolver als die drei Hauptkomponenten von SpringMVC bezeichnet. Verwenden Sie
@RequestMapping("/quick8") @ResponseBody public User quickMethod8() throws IOException { User user = new User(); user.setUsername("zhangsan"); user.setAge(18); return user; }4) Wissenspunkte Datenantwortmethode von SpringMVC1) Seitensprung String direkt zurückgeben Rückgabe über ModelAndView-Objekt 2 ) Daten zurückschreiben. Rückgabezeichenfolge direkt
Das obige ist der detaillierte Inhalt vonBeispielanalyse einer Java SpringMVC-Datenantwort. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!