2016-06-27 3 views
0

MvcConfigurationUTF-8-Codierung in Spring MVC

@Configuration 
@ComponentScan(basePackages="com") 
@EnableWebMvc 
public class MvcConfiguration extends WebMvcConfigurerAdapter{ 



     @Bean 
     public ViewResolver getViewResolver(){ 
      InternalResourceViewResolver resolver = new InternalResourceViewResolver(); 
      resolver.setPrefix("/WEB-INF/views/"); 
      resolver.setSuffix(".jsp"); 
      return resolver; 
     } 
    } 

jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8" 
     pageEncoding="UTF-8"%> 
    <%@ page isELIgnored="false"%> 
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <!-- Meta, title, CSS, favicons, etc. --> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 


    </head> 
    <body class="nav-md"> 
    <form:form method="POST" modelAttribute="fluxDomaine" class="form-horizontal form-label-left" > 
         <form:input type="hidden" path="id" id="id"/> 
       <div class="item form-group"> 
          <label class="control-label col-md-3 col-sm-3 col-xs-12" for="INDCTR_DS">INDCTR DS </label> 
          <div class="col-md-6 col-sm-6 col-xs-12"> 
           <form:input type="text" path="INDCTR_DS" id="INDCTR_DS" name="INDCTR_DS" class="form-control col-md-7 col-xs-12"/> 
          </div> 
          <form:errors path="INDCTR_DS" cssClass="alerttt" /> 
          </div> 
<input type="submit" class="btn btn-success" value="Add"/> 

</form:form> 
    </body> 
    </html> 

Ich bin ein Problem mit Codierung gegenüber, zum Beispiel, wenn ich ein "à speichern "es wird" Ã "und" é "wird" Ã © ", und wenn ich versuche, es manuell in meiner MySQL-Datenbank zu speichern, wird es korrekt gespeichert.

Vielen Dank für alle Tipps ..

Antwort

0

Sonderzeichen Ausgabe, i ersetzt:

<%@ page language="java" contentType="text/html; charset=UTF-8" 
     pageEncoding="UTF-8"%> 

von

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
     pageEncoding="ISO-8859-1"%> 

und ich war in der Lage Sonderzeichen bestehen bleiben, wie ich will ..

1

Sie müssen einen SpringCharacterEncoding Filter definieren. Fügen Sie einfach die folgenden Zeilen zum web.xml in Ihrem Spring MVC-Projekt hinzu. Dadurch wird die UTF-8-Codierung streng in Ihrem Code erzwungen.

`<filter> 
    <filter-name>encodingFilter</filter-name> 
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 
    <init-param> 
     <param-name>encoding</param-name> 
     <param-value>UTF-8</param-value> 
    </init-param> 
    <init-param> 
     <param-name>forceEncoding</param-name> 
     <param-value>true</param-value> 
    </init-param> 
</filter> 
<filter-mapping> 
    <filter-name>encodingFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> ` 
+0

hat mein Problem nicht behoben .. – FuSsA

+0

Welchen Server benutzen Sie, Tomcat? –

+0

Ich benutze Wildfly .. – FuSsA