`

升级到hibernate search 4.0,hibernate core4 ,spring 3.1 初步代码变化

阅读更多

1.hibernate search 已经有4.0.0.Final 版本了

 

正好手头再做新的项目,升级下

 

一升级,发现代码很多错误,发现有两个类发生了重要的变化

 

第一个是 枚举org.hibernate.search.annotations.Index

 

4.0.0以前的版本 里面的枚举是这样的

 

 

   /**

    * Do not index the field value. This field can thus not be searched,

    * but one can still access its contents provided it is

    * {@link Store stored}.

    */

   NO,

   /**

    * Index the field's value so it can be searched. An Analyzer will be used

    * to tokenize and possibly further normalize the text before its

    * terms will be stored in the index. This is useful for common text.

    */

   TOKENIZED,

   /**

    * Index the field's value without using an Analyzer, so it can be searched.

    * As no analyzer is used the value will be stored as a single term. This is

    * useful for unique Ids like product numbers.

    */

   UN_TOKENIZED,

   /**

    * Index the field's value without an Analyzer, and disable

    * the storing of norms.  No norms means that index-time boosting

    * and field length normalization will be disabled.  The benefit is

    * less memory usage as norms take up one byte per indexed field

    * for every document in the index.

    */

   NO_NORMS

 

4.0.0里面的这个枚举是这样的

 

   /**

    * Index the field value.

    */

   YES,

 

   /**

    * Do not index the field value. This field can thus not be searched,

    * but one can still access its contents provided it is

    * {@link Store stored}.

    */

   NO

 

简洁了许多

 

所以 以前的 org.hibernate.search.annotations.Index.TOKENIZED 代码 要改成 org.hibernate.search.annotations.Index.YES

 

2.顺带还发现 @org.hibernate.annotations.Entity 这个annotation 已经@Deprecated,而且javadoc 里面写得很清楚  To be removed in 4.1,呵呵 人家已经和你打招呼了

 

所以 我们原来的乐观锁@org.hibernate.annotations.Entity(optimisticLock = OptimisticLockType.VERSION) 要改成 @OptimisticLocking(type = OptimisticLockType.VERSION),这个annotation  默认采用的是   OptimisticLockType type() default OptimisticLockType.VERSION;

所以,如果你的乐观锁是采用version column 那么 可以简写成 @OptimisticLocking

要改成

 

 

 

第二,原来的

 

org.hibernate.search.filter.CachingWrapperFilter 已经该成 org.hibernate.search.filter.impl.CachingWrapperFilter;

 

 

 

 

3.spring 3.0.6 升级到3.1.0

 

发现

 

   private UrlMatcher urlMatcher = new AntUrlPathMatcher();;

UrlMatcher AntUrlPathMatcher  这两个类不见了

 

 

org.springframework.security.web.util.AntUrlPathMatcher;

import org.springframework.security.web.util.UrlMatcher;

 

 

取而代之的是 

 

import org.springframework.util.AntPathMatcher;

import org.springframework.util.PathMatcher;

 

而且写法也不一样了

 

要这么写

 

 

      FilterInvocation filterInvocation = (FilterInvocation) object;

      HttpServletRequest request = filterInvocation.getHttpRequest();

 

 

RequestMatcher requestMatcher = new AntPathRequestMatcher(resURL);

 

requestMatcher.matches(request)

 

在这里,如果你们的项目有成熟 的架构,我不建议各位去升级 

 

要改动的地方很多

 

 

 

分享到:
评论
2 楼 liuxiang00435057 2012-09-19  
学习了,谢谢分享
1 楼 gao2008ss 2012-04-05  
127.0.0.1/test/aaa.htm?method=add
spring-security-3.1默认的ant匹配方式对 method=add这种参数不能匹配

相关推荐

    spring3.1 jar全集

    总的来说,这个"spring3.1 jar全集"包含的是一套完整的Spring开发工具,涵盖了从核心功能到高级特性的方方面面,旨在帮助开发者高效、灵活地构建高质量的企业级应用。无论你是新手还是经验丰富的开发者,这个集合都...

    最新 spring3.1 完整jar包

    在“最新 spring3.1 完整jar包”的dist目录下,通常会包含所有必要的Spring库,如spring-context、spring-core、spring-aop、spring-beans、spring-expression等,以及可能的其他相关依赖。有了这些jar包,开发者就...

    spring3.1完整包

    这个"spring3.1完整包"包含了Spring框架的多个核心模块,下面将详细介绍这些模块及其功能。 1. **org.springframework.context-3.1.0.M1.jar**:这是Spring上下文模块,提供了容器的核心功能,包括Bean的定义、配置...

    spring3.1需要的jar包

    标题中的“spring3.1需要的jar包”指的是在使用Spring框架版本3.1时所需的外部依赖库。Spring是一个开源的Java平台,它为构建企业级应用提供了全面的框架支持,包括依赖注入(DI),面向切面编程(AOP),以及用于...

    spring3.1所需的全部jar包

    这些jar包组合在一起,构成了Spring 3.1的完整生态系统,涵盖了从基本的IoC到复杂的AOP,从数据库操作到Web应用开发的全面支持。通过这个压缩包,开发者可以快速搭建起一个稳定且功能丰富的Spring 3.1开发环境,从而...

    springmvc3.1+hibernate3环境搭建架包

    3. spring-core-3.1.x.jar:Spring框架的基础,包含IoC容器的核心类。 4. spring-beans-3.1.x.jar:提供Bean工厂和相关支持,用于实现IoC。 5. spring-aop-3.1.x.jar和spring-aspects-3.1.x.jar:支持面向切面编程...

    struts1.2+spring2.0+hibernate3.1jar包

    Struts1.2、Spring2.0和Hibernate3.1是经典的Java企业级开发框架组合,它们在2000年代中期至后期广泛应用于构建基于Java的Web应用程序。这个组合通常被称为“SSH”三位一体,各自负责不同的职责: 1. **Struts1.2**...

    spring3.1包名解析

    Spring 3.1 是一个重要的版本更新,它对之前的 2.X 版本进行了重构,将原本集中的包结构拆分得更为清晰,使得功能分工更加明确。这个更新不仅提高了代码的可维护性和模块化,也为开发者提供了更高效的工作流程。 1....

    SSH 配置实例: Spring 3.1 + Hibernate 4.2 + Struts 2.3

    在这个配置实例中,我们将深入探讨如何将Spring 3.1、Hibernate 4.2和Struts 2.3整合在一起,创建一个功能完备的MVC(模型-视图-控制器)架构。 首先,Spring框架作为核心容器,负责管理应用中的对象,包括依赖注入...

    spring3.1+struts2.3+hibernate4.1搭建

    <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <prop key="hibernate.dialect">${jdbc.dialect} <prop key="hibernate.show_sql">true ...

    Spring 3.1 relase的所有jar包

    7. `org.springframework.orm-3.1.0.RELEASE.jar`:ORM(对象关系映射)模块提供了与各种ORM框架如Hibernate、JPA集成的支持,帮助开发者在面向对象的代码中操作关系数据库。 8. `org.springframework.aop-3.1.0....

    struts1.2+spring2.0+hibernate3.1框架所需jar包

    在这个“struts1.2+spring2.0+hibernate3.1框架所需jar包”压缩包中,包含了这三个框架的核心库和其他必要的依赖,以便于开发者在项目中集成和使用。 **Struts 1.2** 是一个基于MVC设计模式的Java Web框架,它使得...

    Struts2.1.6+Spring2.0+Hibernate3.1

    根据给定文件的信息,本文将详细介绍如何配置Struts2.1.6、Spring2.0与Hibernate3.1这三个框架的整合开发环境。这是一套经典的MVC(Model-View-Controller)架构组合,适用于构建复杂的Java Web应用程序。 ### 一、...

    spring 3.1源码

    - Spring 3.1将框架分为多个模块,如Core Container、Data Access/Integration、Web等,使得开发者可以按需选择和使用。 通过学习Spring 3.1的源码,你可以深入理解这些特性的实现原理,提升你的开发技能,更好地...

    Spring Framework 3.1 官方教程

    此外,Spring 3.1还提供了对Hibernate 4.x的支持,并增加了对嵌入式数据库的支持。 针对Java配置,Spring 3.1提供了新的特性如@Configuration注解的类支持,以及为XML命名空间提供等效的Java代码。此外,Spring框架...

    mvc+spring4+hibernate4 jar包

    标题中的“mvc+spring4+hibernate4 jar包”指的是一个基于Model-View-Controller(MVC)架构,整合了Spring 4框架和Hibernate 4 ORM库的Java Web应用程序的压缩包。这个包包含了运行在Java应用服务器上的所有必需...

    单独使用Spring 3.1时要加的所有包

    为了充分利用Spring 3.1的功能,我们需要确保正确地添加所有必要的依赖包。以下是对这些包的详细解释以及它们在Spring框架中的作用: 1. **spring-core**: 这是Spring框架的基础模块,包含了核心工具类和IoC...

    spring3.1.o.m2 src

    通过研究Spring 3.1.0.M2的源码,开发者可以学习到如何在实际项目中使用Spring,比如自定义拦截器、事务管理、数据访问策略等,从而提高开发效率和代码质量。 总的来说,Spring 3.1.0.M2的源码集合是一个宝贵的...

Global site tag (gtag.js) - Google Analytics