Heim > Java > javaLernprogramm > Hauptteil

Wie behebe ich Inhaltstyp-Diskrepanzen mit @ResponseBody von Spring MVC?

DDD
Freigeben: 2024-10-30 01:26:28
Original
766 Leute haben es durchsucht

How to Resolve Content-Type Discrepancies with Spring MVC's @ResponseBody?

Auflösen von Inhaltstyp-Diskrepanzen mit @ResponseBody von Spring MVC

In Spring MVC-Anwendungen, wenn eine Controller-Methode einen String zurückgibt und mit annotiert wird @ResponseBody, das Framework ist für die Festlegung des Inhaltstyps der Antwort verantwortlich. Standardmäßig wird „text/plain“ mit UTF-8-Kodierung verwendet.

Anpassen des Inhaltstyps

Um den Standardinhaltstyp zu überschreiben, können Sie ihn einschließen die folgende Konfiguration in Ihrer Spring-Anwendung:

<code class="xml"><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
    <property name="messageConverters">
        <list>
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" />
            </bean>
        </list>
    </property>
</bean></code>
Nach dem Login kopieren

Dadurch wird sichergestellt, dass von @ResponseBody-Methoden zurückgegebene Zeichenfolgen den angegebenen Inhaltstyp verwenden. Dieser Ansatz ist jedoch nicht immer effektiv.

Verwendung des Produces-Attributs

Spring 3.1 führt das Produces-Attribut in die RequestMapping-Annotation ein. Durch die Angabe von „produces = „application/json; charset=utf-8““ können Sie den Inhaltstyp für die Antwort explizit festlegen.

Beispiel-Controller:

<code class="java">@RequestMapping(value = "/getDealers", method = RequestMethod.GET,
        produces = "application/json; charset=utf-8")
@ResponseBody
public String sendMobileData() {
    return "...";
}</code>
Nach dem Login kopieren

Dieser Ansatz verwendet die erzeugt ein Attribut, um das Standardverhalten des Inhaltstyps zu überschreiben und sicherzustellen, dass die Antwort die richtige Codierung enthält.

Das obige ist der detaillierte Inhalt vonWie behebe ich Inhaltstyp-Diskrepanzen mit @ResponseBody von Spring MVC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!