Spring 3 MVC:如何存储表格中的€符号? [英] Spring 3 MVC: How to store € symbol from form?

查看:101
本文介绍了Spring 3 MVC:如何存储表格中的€符号?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Spring 3 MVC和MySQL 5作为数据库。

I am using Spring 3 MVC and MySQL 5 as my DB.

我已经使用Spring表单标签创建了一个表单,用于更新数据库中的对象。

I have created a form using Spring form tags for updating an object in my database.

我输入票价:€35英寸到该表单的文本输入字段之一,并保存该物品。然后,当我在显示页面中查看项目时,文本显示为票价:?35。

I enter "Ticket price: €35" into one of this form's text input fields and save the item. Then when I view the item in a display page, the text appears as "Ticket price: ?35".

如果我使用MySql查询浏览器直接在数据库中输入机票价格:35欧元,则欧元符号会在显示页面上很好地显示。

If I enter "Ticket price: €35" directly into the database using MySql Query Browser, then the euro symbol displays fine through the display page.

我需要做些什么,以便我的Spring表单将欧元符号正确保存到数据库中?

What do I need to do so that my Spring form saves the euro symbol correctly to the database?

更新

您好,我尝试过您的建议Bozho,没有运气..我的web.xml看起来像这样:

Hi, I tried your suggestion, Bozho, with no luck.. my web.xml looks like this:

<filter>
    <filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>




<servlet>
    <servlet-name>baseApp</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>baseApp</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

还有其他想法吗?

推荐答案

使用spring字符编码过滤器。在 web.xml

Use the spring character encoding filter. In web.xml

<filter>
    <filter-name>CharacterEncodingFilter</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>

并将其映射到默认servlet

And map it to the default servlet

然后,您的MySQL连接字符串应如下所示:

Then, your MySQL connection string should look like this:

jdbc:mysql://localhost/dbName?characterEncoding=utf8

这篇关于Spring 3 MVC:如何存储表格中的€符号?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆