使用JPA的一个小问题

    使用JPA的时候,都有对象和数据库表映射的步骤,我在开发过程中遇到一个问题就是MYSQL中,一个text字段无法和对象中的String类型对应,所以无法正常工作,在网上找了些解决方法,都提到了hibernate.dialect这个东西,但是不知道为什么,我采用这些解决办法时都不成功,我用的组合是struts2.1.6 + spring2 + JPA。
     没办法,根据栈的提示信息,把相关类的源代码看了看,终于找到了适合我的结构的解决办法。
<bean id="entityManagerFactory"
        class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="jpaVendorAdapter">
            <bean
                class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="database" value="MYSQL" />
                <property name="showSql" value="true" />
                <property name="databasePlatform" value="ExtendedDialect" />
     
            </bean>
        </property>
    </bean>

    
就是这一项
<property name="databasePlatform" value="ExtendedDialect" /> 


ExtendedDialect的实现方法如下。

public ExtendedDialect()
	{
		super();   
        //registerHibernateType(Types.DECIMAL, Hibernate.BIG_DECIMAL.getName());   
        registerHibernateType(-1, Hibernate.STRING.getName());   
        //registerHibernateType(, Hibernate.INTEGER.getName());

        
	}

你可能感兴趣的:(java,Hibernate,mysql,xml,jpa)