hibernate

  1. quydtkt

    [Hibernate] Khắc phục lỗi An AnnotationConfiguration instance is required to use

    Khi sủ dụng Hibernate annotation thì nó yêu cầu sử dụng “AnnotationConfiguration” thay vì “Configuration()” để khởi tạo session factory. INFO: Configuration resource: /hibernate.cfg.xml Initial SessionFactory creation failed.org.hibernate.MappingException: An AnnotationConfiguration instance is...
  2. quydtkt

    [Hibernate] Khắc phục lỗi org.hibernate.AnnotationException: Unknown Id.generator

    Vấn đề Chạy chương trình Hibernate có sử dụng annotation sequence generator với PostgreSQL database. @Id @Column(name="user_id", nullable=false) @GeneratedValue(strategy = GenerationType.SEQUENCE ,generator="account_user_id_seq") private Integer userId; Sẽ xảy ra exception Unknown...
  3. quydtkt

    [Hibernate] Khắc phục lỗi Remember that ordinal parameters are 1-based! – HibernateTemplate

    Vấn đề Code sử dụng HibernateTemplate … getHibernateTemplate().find("from Domain d where d.domainName = :domainName", domainName); Khi chạy đoạn code trên, sẽ xuất hiện lỗi sau java.lang.IndexOutOfBoundsException: Remember that ordinal parameters are 1-based! ... at...
  4. quydtkt

    [Hibernate] Khắc phục lỗi java.lang.ClassNotFoundException : javassist.util.proxy.MethodFilter

    Vấn đề Sử dụng Hibernate 3.6.3, nhưng gặp lỗi javassist not found error, xem error stacktrace bên dưới: Caused by: java.lang.NoClassDefFoundError: javassist/util/proxy/MethodFilter ... at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:77) ... 16 more...
  5. quydtkt

    [Hibernate] Khắc phục lỗi The type AnnotationConfiguration is deprecated

    Vấn đề Sử dụng Hibernate 3.6, ta thấy “org.hibernate.cfg.AnnotationConfiguration“, bị đánh dấu là “deprecated“. Code … import org.hibernate.cfg.AnnotationConfiguration; //... private static SessionFactory buildSessionFactory() { try { return new...
  6. quydtkt

    [Hibernate] Khắc phục lỗi Could not find C3P0ConnectionProvider

    Vấn đề Đã cấu hình Hibernate để sử dụng “c3p0” connection pool, nhưng xuất hiện cảnh báo sau: //... 2011-04-25_12:18:37.190 WARN o.h.c.ConnectionProviderFactory - c3p0 properties is specificed, but could not find org.hibernate.connection.C3P0ConnectionProvider from the classpath, these...
  7. quydtkt

    [Hibernate] Khắc phục lỗi Unable to insert if column named is keyword, such as DESC

    Vấn đề Bảng có tên “category” trong database MySQL, chứa cột có tên “DESC”. CREATE TABLE `category` ( `CATEGORY_ID` int(10) unsigned NOT NULL AUTO_INCREMENT, `NAME` varchar(10) NOT NULL, `DESC` varchar(255) NOT NULL, PRIMARY KEY (`CATEGORY_ID`) USING BTREE ); File mapping XML của...
  8. quydtkt

    [Hibernate] Lưu hình ảnh vào database

    Để lưu hình ảnh vào database, cần xác định cột của bảng là kiểu blob trong MySQL hoặc loại nhị phân tương đương trong database khác. Trong Hibernate, có thể khai báo một biến kiểu byte[] để lưu trữ dữ liệu hình ảnh. Download source code – Hibernate-Image-Example.zip Đây là 1 prrooject Maven...
  9. quydtkt

    [Hibernate] Sử dụng các keyword của database trong hibernate

    Trong Hibernate, khi cố lưu đối tượng vào bảng với bất kỳ keyword dành riêng cho database nào dưới dạng tên cột, có thể gặp phải lỗi sau … ERROR JDBCExceptionReporter:78 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax...
  10. quydtkt

    [Hibernate] Cấu hình hiển thị hibernate sql parameter - Log4j

    Vấn đề Hibernate có tính năng ghi log cơ bản để hiển thị câu SQL được tạo ra với property show_sql trong file cấu hình Hibernate: INSERT INTO mkyong.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME) VALUES (?, ?, ?, ?, ?, ?) Tuy nhiên, nó không đủ để fix bug, giá trị của các...
  11. quydtkt

    [Hibernate] Cấu hình hiển thị hibernate sql parameter - P6Spy

    Câu hỏi đặt ra Có nhiều developer đặt ra câu hỏi về giá trị Hibernate SQL parameter. Làm thế nào để hiển thị giá trị của Hibernate SQL parameter được truyền vào database? Hibernate chỉ hiển thị giá trị tham số dưới dạng dấu hỏi (?). Với property show_sql, Hibernate sẽ hiển thị tất cả các câu SQL...
  12. quydtkt

    [Hibernate] Hiển thị SQL của hibernate ra console – show_sql , format_sql và use_sql_comments

    Hibernate có 1 hàm để enable tính năng ghi log tất cả các lệnh SQL được tạo ra tại console. Có thể kích hoạt nó bằng cách tạo 1 property “show_sql” trong file cấu hình Hibernate “hibernate.cfg.xml“. Hàm này tốt cho xử lý sự cố cơ bản và để xem những gì mà Hibernate đang làm phía sau 1...
  13. quydtkt

    [Hibernate] Liệt kê các Hibernate SQL Dialect

    Hibernate SQL Dialect sẽ nói cho ứng dụng Hibernate biết nên sử dụng ngôn ngữ SQL nào để giao tiếp với database. 1. DB2 org.hibernate.dialect.DB2Dialect 2. DB2 AS/400 org.hibernate.dialect.DB2400Dialect 3. DB2 OS390 org.hibernate.dialect.DB2390Dialect 4. PostgreSQL...
  14. quydtkt

    [Hibernate] Cách thêm file hibernate XML mapping (hbm.xml) theo cách lập trình

    File mapping XML của Hibernate chứa relationship mapping giữa class Java và table trong database. Chúng thường có tên là “xx.hbm.xml” và khai báo trong file cấu hình Hibernate “hibernate.cfg.xml”. Ví dụ, file mapping (hbm.xml) được khai báo trong thẻ “mapping”. <?xml version="1.0"...
  15. quydtkt

    [Hibernate] Cách load file hibernate.cfg.xml từ một thư mục khác

    File cấu hình XML của Hibernate “hibernate.cfg.xml” thường được đặt ở thư mục gốc của project classpath, bên ngoài của bất kì package nào. Nếu cho file cấu hình vào thư mục khác, sẽ gặp lỗi bên dưới: Initial SessionFactory creation failed.org.hibernate.HibernateException: /hibernate.cfg.xml...
  16. quydtkt

    [Hibernate] Maven + (Spring + Hibernate) Annotation + MySql

    Download – Spring-Hibernate-Annotation-Example.zip Trong bài trước, chúng ta đã sử dụng Maven để tạo Java project đơn giản và sử dụng Hibernate trong Spring framework để thực hiện các thao tác (select, insert, update và delete) tại database MySQL. Trong bài này, ta sẽ biết thêm cách làm điều...
  17. quydtkt

    Maven + Spring + Hibernate + MySql

    Chào các bạn, trong bài viết này, chúng ta sẽ sử dụng Maven để tạo 1 Java project đơn giản và sử dụng Hibernate trong Spring framework để thực hiện các thao tác với dữ liệu (insert, select, update và delete) trong database MySQL. Cấu trúc project sau cùng Đây là cấu trúc project, nếu bạn gặp...
  18. quydtkt

    [Hibernate] Struts + Spring + Hibernate

    Download source code Struts 1.x + Spring + Hibernate – Struts-Spring-Hibernate-Example.zip Chào các bạn, trong bài viết này, chúng ta sẽ tạo ứng dụng web quản lí khách hàng đơn giản. Dùng Maven để quản lý project, Struts 1.x là web framework, Spring là dependency injection framework và...
  19. quydtkt

    [Hibernate] Tích hợp Hibernate vào Struts framework

    Chào các bạn, trong bài viết này, chúng ta sẽ cùng tìm hiểu về cách tích hợp Hibernate vào web application được phát triển bằng Apache Struts 1.x. Download source code – Struts-Hibernate-Example.zip Các bước tích hợp: Tạo file Hibernate Struts plug-in để thiết lập Hibernate session factory...
  20. quydtkt

    [Hibernate] Sự khác nhau giữa session.get() và session.load()

    Thường xuyên, ta sẽ thấy các Hibernate developer sử dụng kết hợp session.get() và session load(). Bạn có tự hỏi những điểm khác nhau giữa chúng và khi nào nên sử dụng 1 trong 2? Sự khác nhau giữa session.get() và session.load() Thực ra, cả 2 hàm được sử dụng để lấy ra 1đối tượng với cơ chế...