`
8366
  • 浏览: 798789 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

第30讲--Spring提供的CharacterEncoding和OpenSessionInView功能

阅读更多

 

CharacterEncoding:

 

在web 开发中常常遇到中文乱码的问题,解决的方案常常是在web.xml中 配置一个过滤器,spring为我们的web开发提供了一个过滤器,可以解决中文乱码的问题。需要在web.xml 中配置Spring为我们提供的过滤器

 

<!-- 字符集乱码过滤器 -->
	<filter>
	<filter-name>encoding</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>
</filter>
<filter-mapping>
	<filter-name>encoding</filter-name>
	<url-pattern>/*</url-pattern>
</filter-mapping>

 

 

实验,把附件中的web项目部署在Tomcat中如果没有这个过滤器,在页面上提交的中文数据,进了数据库就乱码了

 

注意:

 

1.我的数据库中的表的字符集是gbk

 

CREATE TABLE `person` (                               
          `id` int(11) NOT NULL AUTO_INCREMENT,               
          `name` varchar(128) NOT NULL,                       
          PRIMARY KEY (`id`)                                  
        ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=gbk  

 

 

2.连接数据库的字符串

url=jdbc\:mysql\://localhost\:3306/test?useUnicode\=true&characterEncoding\=GBK

 

3.果如两者不同意 中文数据就不能入库 回报一个错误

 

java.sql.SQLException: Incorrect string value: '\xC3\xA5\

 

 

OpenSessionInView:

 

 

Hibernate 的session的生命周期 横跨 servlet和jsp,当我们的jsp需要用到某个延迟属性的时候,发现session已经关闭了,就会发生延迟加载例外

 

使用spring解决hibernatesession关闭导致的延迟加载例外问题。

 

 

在web.xml配置

 

<!-- 使用spring解决hibernate因session关闭导致的延迟加载例外问题 -->
<filter>
        <filter-name>OpenSessionInViewFilter</filter-name>
        <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
        <filter-name>OpenSessionInViewFilter</filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

 

 附件中式 测试的项目,lib中的jar包 见以前 http://8366.iteye.com/admin/blogs/412303

 

 

  • SSH.rar (21.8 KB)
  • 下载次数: 20
分享到:
评论

相关推荐

    Spring提供的CharacterEncoding和OpenSessionInView功能

    Spring提供的CharacterEncoding和OpenSessionInView功能

    spring2.5学习PPT 传智博客

    spring2.5学习PPT 传智博客 01_全面阐释Spring及其各项功能 ... 30.Spring提供的CharacterEncoding和OpenSessionInView功能 31.使用Spring集成JPA 32.Struts+Spring+JPA集成 33.使用Spring集成Struts2 34.所有源码

    Spring MVC 入门实例

    如果你手上有一本《Spring in Action》, 那么你最好从第三部分"Spring 在 Web 层的应用--建立 Web 层"开始看, 否则那将是一场恶梦! 首先, 我需要在你心里建立起 Spring MVC 的基本概念. 基于 Spring 的 Web 应用...

    springjdbc

    -- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 --&gt; &lt;bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /&gt; &lt;!-- apache.dbcp连接池的配置 --&gt; ...

    SSH_spring4.2_hibernate5完整示例代码

    spring-framework-4.2.1.RELEASE 数据库是 mysql 数据库的连接符 jdbc:mysql://localhost:3306/test_db?useUnicode=true&amp;characterEncoding=UTF-8 放在jdbc.properties 文件中 创建完成数据库test_db后,在...

    springboot双数据源

    useUnicode=true&characterEncoding=utf-8&useSSL=false spring.datasource.db1.username=root spring.datasource.db1.password=123 spring.datasource.db1.driver-class-name=com.mysql.jdbc.Driver spring....

    spring-jdbc.xml

    @ImportResource(value = {"classpath:spring/spring-jdbc.xml"}) application.properties配置: #数据库配置 datasource.url = jdbc:mysql://127.0.0.1:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&...

    springmybatis

    恭喜你,环境搭建配置成功,接下来第二章,将讲述基于接口的操作方式,增删改查。 整个工程目录结构如下: 除非申明,文章均为一号门原创,转载请注明本文地址,谢谢! mybatis实战教程(mybatis in action)之二:以...

    产品销售分析系统spring struts2 jfreechart ibatis

    useUnicode=true&characterEncoding=UTF-8 datasource.username=root datasource.password=111111 注:根据读者实际情况更改IP地址、数据库用户名和密码。 2 发布运行 Tomcat服务器默认安装后使用8080端口,打开...

    Spring3中配置DBCP,C3P0,Proxool,Bonecp数据源

    在Spring3中配置数据源,包括DBCP,C3P0,Proxool,Bonecp主要的数据源,里面包含这些数据源的jar文件和依赖文件及配置文件。。 如Bonecp目前听说是最快的数据源,速度是传统的c3p0的25倍, bonecp.properties文件: ...

    pub_characterencoding表数据(oracle汉字转拼音、五笔等)

    pub_characterencoding表数据,结合相关函数可以实现oracle汉字转拼音、五笔等相关操作

    spring-boot-dynamic-datasource

    基于Spring实现的动态数据源框架使用方法如下:配置文件在springboot的...useUnicode=true&characterEncoding=utf-8spring.datasource.username=rootspring.datasource.password=spring.datasource.driver-class-name=...

    sonarqube-jacoco-maven-sample:简单的spring应用程序,配置用于报告单元和集成测试覆盖率,由jacoco提供给sonarqube

    SonarQube中的使用单位和集成测试覆盖率报告示例为了将jacoco报告发布到sonarqube,请使用您的凭据在本地〜/ .m2 / settings.xml文件中设置新的配置文件: &lt;profile&gt; &lt;id&gt;sonar&lt;/id&gt; &lt;activation&gt; &lt;activeByDefault&gt;...

    security-spring-boot-starter:权限框架和util工具包类

    敏捷开发权限验证模块....serverTimezone=Hongkong&useSSL=false&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true hikari: username: root password: 123456 driver-class-name: ...

    Spring Boot mybatis plus layui 企业后台管理平台

    集成 OAuth2 登录, 且提供了接口易于拓展开发. 全局异常处理. 根据请求方式区分返回 json 数据还是错误页面. Logback MDC 支持, 将当前登录人和操作者 IP 加入日志中. JSR-303 数据校验 运行环境 JDK 1.8 MySQL 5.7 ...

    积分管理系统java源码-GourdDoll-Blog:基于SpringCloud、Vue的前后分离的多人博客系统

    积分管理系统java源码 项目介绍 ​ 葫芦娃博客,一个基于分布式微服务的前后分离的多人博客系统,前端使用VUE + ...characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnec

    mysql-connector-java-8.0.12和c3p0.9.5.2 for mysql8.x的jar包支持库

    Java支持mysql8.0x的jdbc驱动和c3p0库,包含如下三个jar包 c3p0-0.9.5.2.jar mchange-commons-java-0.2.15.jar mysql-connector-java-8.0.12.jar JDBC驱动类库名称变化 driverClass 由原来的 ...

Global site tag (gtag.js) - Google Analytics