오류 기록: JDBC 유형 에 대한 방언 매 핑 없 음: 3

어젯밤 getSession (). createsQLQuery ("select * from bbsuser"). list () 를 사 용 했 습 니 다.
오류 가 발생 했 습 니 다: No Dialect mapping for JDBC type: 3;
baidu, google 에서 이 이 유 는 서버 의 데이터 형식 이 자바 의 BigDecimal 데이터 형식 과 성공 적 으로 매 핑 되 지 못 하기 때 문 입 니 다.
해결 방법:
1. 새로 만 든 YYMySQLDialect 는 org. hibenate. dialect. MySQLDialect (데이터 베 이 스 는 MYSQL) 에 계승 되 고 그 안에 새로운 유형의 맵 을 추가 로 등록 합 니 다.
코드 는 다음 과 같 습 니 다:

package com.yeyong.ah;

import java.sql.Types;
import org.hibernate.Hibernate;
import org.hibernate.dialect.MySQLDialect;

public class YYMySQLDialect extends MySQLDialect {
    public YYMySQLDialect () {
        super();
        registerHibernateType(Types.DECIMAL, Hibernate.BIG_INTEGER.getName());
    }
}

2. Hibernate 의 Dialect 를 새로운 Dialect 로 변경
com.yeyong.ah.YYMySQLDialect
SQLServerDialect 에 있 는 registerHibernateType 함수 입 니 다. 더 자세 한 용법 은 보십시오.
http://www.hibernate.org/hib_docs/v3/api/org/hibernate/dialect/Dialect.html#registerHibernateType%28int,%20int,%20java.lang.String%29%20

좋은 웹페이지 즐겨찾기