Hibernate Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/hibernate Cao Đẳng FPT M?ng c c??c bng ? tuyển sinh theo hình thức xét tuyển h?sơ. Tiêu chí đào tạo: Thực học ?Thực nghiệp! Sat, 29 Jul 2023 16:53:20 +0000 vi hourly 1 //wordpress.org/?v=6.4.1 //westview-heights.com/wp-content/uploads/cropped-logo-fpt-32x32.png Hibernate Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tag/hibernate 32 32 Hibernate Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-crud-hibernate-voi-jsp-servlet-phan-1.html //westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-crud-hibernate-voi-jsp-servlet-phan-1.html#respond Mon, 24 Jul 2023 07:24:31 +0000 //westview-heights.com/?p=245658 Hibernate là một khung công tác Java triển khai mẫu thiết k?ORM (ánh x?quan h?đối tượng). Nó được s?dụng đ?ánh x?các đối tượng java vào cơ s?d?liệu quan h?(relationship) và s?...

The post Tìm hiểu v?CRUD Hibernate với JSP, Servlet (Phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
Hibernate là một khung công tác Java triển khai mẫu thiết k?ORM (ánh x?quan h?đối tượng). Nó được s?dụng đ?ánh x?các đối tượng java vào cơ s?d?liệu quan h?(relationship) và s?dụng nội b?JDBC (kết nối cơ s?d?liệu Java), JTA (API giao dịch Java) và JNDI (giao diện thư mục và đặt tên Java).

Hibernate là gì?

Hibernate giúp cho các đối tượng java tồn tại trong cơ s?d?liệu mà không mất trạng thái của chúng, do đó nó được đặt tên là Hibernate. Hibernate có th?được s?dụng đ?thực hiện tất c?các hoạt động Crud mà không cần phải viết các truy vấn SQL. Crud đ?cập đến các hoạt động cơ s?d?liệu.

JSP là gì?

Java Server Pages (JSP) là một công ngh?cho phép các nhà phát triển tạo các trang web động bằng cách s?dụng kết hợp mã HTML, XML và Java. Các trang JSP được thực thi trên máy ch?web và kết qu?đầu ra được gửi đến trình duyệt web của máy khách.

JSP cung cấp một cách đ?d?dàng truy cập mã Java và các đối tượng t?bên trong một trang web, giúp đơn giản hóa việc tạo các trang web động. Các trang JSP thường được s?dụng cùng với các servlet Java x?lý x?lý d?liệu và các yêu cầu của máy khách. JSP là một phần của nền tảng Java EE và được hầu hết các máy ch?web và b?chứa servlet h?tr?

JSP có gì?

Cấu trúc thư mục

Đầu tiên là cấu trúc thư mục như hình dưới đây:

Thiết lập d?án

Bạn cần bao gồm các ph?thuộc sau trong tập lệnh pom.xml

<dependencies>

        <dependency>

            <groupId>jakarta.servlet</groupId>

            <artifactId>jakarta.servlet-api</artifactId>

            <version>5.0.0</version>

            <scope>provided</scope>

        </dependency>

        <dependency>

            <groupId>org.junit.jupiter</groupId>

            <artifactId>junit-jupiter-api</artifactId>

            <version>${junit.version}</version>

            <scope>test</scope>

        </dependency>

        <dependency>

            <groupId>org.junit.jupiter</groupId>

            <artifactId>junit-jupiter-engine</artifactId>

            <version>${junit.version}</version>

            <scope>test</scope>

        </dependency>

        <dependency>

            <groupId>com.microsoft.sqlserver</groupId>

            <artifactId>mssql-jdbc</artifactId>

            <version>9.4.1.jre16</version>

        </dependency>

        <dependency>

            <groupId>org.hibernate</groupId>

            <artifactId>hibernate-search-orm</artifactId>

            <version>5.8.2.Final</version>

        </dependency>

        <dependency>

            <groupId>jakarta.persistence</groupId>

            <artifactId>jakarta.persistence-api</artifactId>

            <version>3.1.0</version>

        </dependency>

        <dependency>

            <groupId>jakarta.xml.bind</groupId>

            <artifactId>jakarta.xml.bind-api</artifactId>

            <version>2.3.2</version>

        </dependency>

        <!– //mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-impl –>

        <dependency>

            <groupId>org.apache.taglibs</groupId>

            <artifactId>taglibs-standard-impl</artifactId>

            <version>1.2.5</version>

            <scope>runtime</scope>

        </dependency>

        <!– //mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-spec –>

        <dependency>

            <groupId>org.apache.taglibs</groupId>

            <artifactId>taglibs-standard-spec</artifactId>

            <version>1.2.5</version>

        </dependency>

        <dependency>

            <groupId>jakarta.servlet.jsp.jstl</groupId>

            <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>

            <version>3.0.0</version>

        </dependency>

        <dependency>

            <groupId>org.glassfish.web</groupId>

            <artifactId>jakarta.servlet.jsp.jstl</artifactId>

            <version>2.0.0</version>

        </dependency>

    </dependencies>

Tạo các lớp thực th?/b>

SanPham.java

@Table(name=”san_pham”)

@Entity

public class SanPham {

    

    @Id

    @Column(name = “id”)

    @GeneratedValue(strategy = GenerationType.IDENTITY)

    private int id;

    

    @Column(name = “ten”)

    private String ten;

    

    @Column(name = “gia”)

    private float gia;

    public SanPham(int id, String ten, float gia) {

        this.id = id;

        this.ten = ten;

        this.gia = gia;

    }

    public SanPham() {

    }

    public int getId() {

        return id;

    }

    public void setId(int id) {

        this.id = id;

    }

    public String getTen() {

        return ten;

    }

    public void setTen(String ten) {

        this.ten = ten;

    }

    public float getGia() {

        return gia;

    }

    public void setGia(float gia) {

        this.gia = gia;

    }

    

    

}

Chú thích

@Entity xác định lớp hiện tại là một entity.
@Table xác định tên bảng ánh x?sang.
@Id xác định thuộc tính hiện tại là ID trong bảng CSDL.
@GeneratedValue xác định kiểu sinh khóa chính t?động, ?đây là IDENTITY.
@Column xác định thuộc tính hiện tại là một cột trong CSDL.

Tạo database trong mysql

create database demohibernate

B?môn Ứng dụng phần mềm
Trường Cao đẳng FPT M?ng c c??c bng ? cơ s?Hà Nội

The post Tìm hiểu v?CRUD Hibernate với JSP, Servlet (Phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
//westview-heights.com/tin-tuc-poly/ha-noi-tin-sinh-vien/tim-hieu-ve-crud-hibernate-voi-jsp-servlet-phan-1.html/feed 0
Hibernate Archives - Cao Đẳng FPT M?ng c c??c bng ? xét tuyển //westview-heights.com/tin-tuc-poly/huong-dan-su-dung-hibernate-trong-lap-trinh-ung-dung-java-swing-phan-1.html //westview-heights.com/tin-tuc-poly/huong-dan-su-dung-hibernate-trong-lap-trinh-ung-dung-java-swing-phan-1.html#respond Mon, 24 May 2021 09:09:31 +0000 //westview-heights.com/?p=142643 Thông thường, các ứng dụng (app desktop) s?dụng Java Swing đ?hiển th?được d?liệu t?database ra cho người dùng, chúng ta phải thực hiện các kết nối vào database; tiếp đó s?dụng các câu lệnh ...

The post Hướng dẫn s?dụng Hibernate trong lập trình ứng dụng Java Swing (Phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
Thông thường, các ứng dụng (app desktop) s?dụng Java Swing đ?hiển th?được d?liệu t?database ra cho người dùng, chúng ta phải thực hiện các kết nối vào database; tiếp đó s?dụng các câu lệnh truy vấn như select, insert, update, join các bảng đ?lấy thông tin; Cuối cùng, nhận d?liệu tr?v?t?database đ?x?lý hiển th? Tất c?những cách thức x?lý d?liệu phức tạp và rườm ra đó đã được cải tiến bởi Hibernate FrameWork.

Hibernate là gì?

Hibernate là một FrameWork thuần Java được phát triển và ra đời vào năm 2001 bởi Gavin King. Đây là một giải pháp mã nguồn m?gọn nh? giúp giảm thiểu s?phức tạp trong việc phát triển ứng dụng java tương tác với các loại cơ s?d?liệu.

Hibernate Framework là một giải pháp ORM (Object Relational Mapping), đây là một k?thuật đ?ánh x?đối tượng vào các bảng d?liệu được lưu tr?trong cơ s?d?liệu. Có th?hiểu đơn giản, mỗi bảng trong database s?được ánh x?hay mapping với 1 object class.

Hibernate vẫn s?dụng các JDBC API đ?tương tác với database, nó được s?dụng ?lớp Persistence. Đây là các class Java có objects hoặc các th?hiện s?được lưu tr?trong các bảng cơ s?d?liệu.

Hibernate có những ưu điểm, lợi ích gì?

1. Nâng cao hiệu suất câu lệnh truy vấn: Do có cơ ch?s?dụng Hibernate Cache giúp lưu lại kết qu?câu truy vấn mà không phải thực hiện thao tác truy xuất xuống database nhiều lần.

2. S?dụng HQL Query truy vẫn độc lập với cơ s?d?liệu: HQL (Hibernate Query Language) là hướng đối tượng trong SQL. Trước đây trong các d?án nếu có s?thay đổi hay nâng cấp cơ s?d?liệu, chúng ta cần phải thay đổi truy vấn SQL tương ứng với loại csdl mới dẫn đến s?c?bảo trì. Nhưng khi s?dụng HQL thì ta không ph?thuộc vào database đang s?dụng vì câu lệnh HQL nó tương thích với các loại database khác nhau như SQL Server, mysql , postgres?

3. H?tr?câu lệnh DDL (Define Data Language): Hiberate h?tr?s?dụng các câu lệnh định nghĩa cấu trúc, giúp chúng ta có th?t?động tạo table, columns, kiểu d?liệu thông qua các annotaion mà ta thêm trong Entity mà không cần phải vào database thao tác bằng tay.

4. Thiệt đặt các khóa chính ?Primary key: Khi tạo table đ?đánh dấu một trường là khoá chính thì ta phải làm việc này bằng tay hoặc viết câu lệnh SQL. Nhưng với Hibernate có th?làm việc này một cách t?động thông qua các Annotation.

Đưa Hibernate vào ứng dụng Java Swing:

Đ?s?dụng hibernate trong JavaSwing trước tiên chúng ta cần import các thư viện Hibernate FrameWork vào project Java: (Link download)

Thêm thư viện Hibernate – Thêm file Hibernate Configuration wizard đ?tạo các thông tin kết nối cơ s?d?liệu.
Tạo file thông tin kết nối cơ s?d?liệu – Thêm các thông tin kết nối cơ s?d?liệu.
Thêm các thông tin cơ s?d?liệu – Tạo file Hibernate Mapping và POJO: Hibernate dùng POJO (Plain Old Java Object) đ?mô t?d?liệu của table trong database. Mỗi thuộc tính của object tương ứng với một field trong table và chúng được mapping thông qua hibernate mapping file xml hoặc dùng annotation trong class. POJO cũng tương t?như JavaBean, chứa các getter và setter.
Tạo file mapping class object và cơ s?d?liệu.

Trên đây là phần giới thiệu và làm quen v?Hibernate, các ví d?c?th?s?có trong phần tiếp theo đ?các bạn sinh viên tham khảo và tìm hiểu sâu hơn v?Hibernate.

The post Hướng dẫn s?dụng Hibernate trong lập trình ứng dụng Java Swing (Phần 1) appeared first on Cao Đẳng FPT M?ng c c??c bng ? xét tuyển.

]]>
//westview-heights.com/tin-tuc-poly/huong-dan-su-dung-hibernate-trong-lap-trinh-ung-dung-java-swing-phan-1.html/feed 0