Кодировка Spring MVC UTF 8 - PullRequest
       4

Кодировка Spring MVC UTF 8

0 голосов
/ 06 января 2020

Я начинающий Spring Framework. При вводе данных Arabi c в базу данных mysql через приложение они вводятся в эту форму '????' , Какое решение? Я изучаю Hibernate и Spring

Это постоянство

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
    version="2.1">

    <persistence-unit name="test">
        <properties>
            <property name="javax.persistence.jdbc.driver"
                value="com.mysql.jdbc.Driver" />
            <property name="javax.persistence.jdbc.url"
                value="jdbc:mysql://localhost:3306/test?useUnicode=true;characterEncoding=UTF-8" />
            <property name="javax.persistence.jdbc.user" value="root" />
            <property name="javax.persistence.jdbc.password" value="" />

            <property name="javax.persistence.schema-generation.database.action"
                value="none" />
            <property name="hibernate.hbm2ddl.auto" value="update" />

<!--            <property name="hibernate.hbm2ddl.charset_name" value="UTF-8"/> -->

            <property name="hibernate.show_sql" value="true" />
            <property name="hibernate.format_sql" value="true" />

            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.connection.useUnicode" value="true"/>
            <property name="hibernate.connection.characterEncoding" value="UTF-8"/>
            <property name="hibernate.connection.CharSet" value="UTF-8"/>

        </properties>
    </persistence-unit>

</persistence>

, и это WebAppInitializer:

public class WebAppInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {

        AnnotationConfigWebApplicationContext appContext = new AnnotationConfigWebApplicationContext();
        appContext.register(WebMvcConfig.class);
        servletContext.addFilter("filterLogin", filterLogin.class).addMappingForUrlPatterns(null, true, "/*");
        ServletRegistration.Dynamic dispatcher = servletContext.addServlet(
            "SpringDispatcher", new DispatcherServlet(appContext));
        dispatcher.setLoadOnStartup(1);
        dispatcher.addMapping("/");

        FilterRegistration.Dynamic fr = servletContext.addFilter("encodingFilter", CharacterEncodingFilter.class);      
        fr.setInitParameter("encoding", "UTF-8");
        fr.setInitParameter("forceEncoding", "true");
        fr.addMappingForUrlPatterns(null, true, "/*");
    }

, а это WebMvcConfig:

@Configuration
@EnableWebMvc
@ComponentScan("com.aladhas.playstation")
public class WebMvcConfig implements WebMvcConfigurer {

    @Bean(name = "viewResolver")
    public InternalResourceViewResolver getViewResolver() {
        InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
        viewResolver.setViewClass(JstlView.class);
        viewResolver.setPrefix("/WEB-INF/views/");
        viewResolver.setSuffix(".jsp");
        viewResolver.setContentType("text/html; charset=UTF-8");
        return viewResolver;
    }   

       @Override
       public void addResourceHandlers(ResourceHandlerRegistry registry) {

           // Register resource handler for CSS and JS
              registry.addResourceHandler("/resources/**").addResourceLocations("classpath:/statics/", "C:/statics/")
                    .setCacheControl(CacheControl.maxAge(2, TimeUnit.HOURS).cachePublic());

           // Register resource handler for images
          registry.addResourceHandler("/img/**").addResourceLocations("/WEB-INF/img/")
                .setCacheControl(CacheControl.maxAge(2, TimeUnit.HOURS).cachePublic());
       }

Есть ли ошибка в этих кодах?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...