1. Trang chủ
  2. » Công Nghệ Thông Tin

Slide 5 jparepository 1 (1)

39 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Conceive Design Implement Operate JPAREPOSITORY API GIẢNG VIÊN: AGENDA JPAREPOSITORY API GIỚI THIỆU CSDL MẪU J5SHOP TẠO CÁC LỚP THỰC THỂ SƠ ĐỒ PHÂN CẤP THỪA KẾ JPAREPOSITORY TẠO CÁC DAO LÀM VIỆC VỚI J5SHOP XÂY DỰNG ỨNG DỤNG CRUD SẮP XẾP VÀ PHÂN TRANG VỚI JPAREPOSITORY TRUY VẤN CÓ SẮP XẾP TRUY VẤN CÓ PHÂN TRANG SẮP XẾP VÀ PHÂN TRANG SẢN PHẨM CSDL J5SHOP CSDL J5SHOP POM.XML - THƯ VIỆN CẦN THIẾT APPLICATION.PROPERTIES - THÔNG SỐ KẾT NỐI CSDL spring.datasource.url= spring.datasource.username= spring.datasource.password= spring.datasource.driverClassName= spring.jpa.hibernate.dialect= spring.jpa.hibernate.ddl-auto= spring.jpa.show-sql= spring.jpa.properties.hibernate.format_sql= ENTITY RELATIONAL DIAGRAM Product Id: Integer Name: String Image: String Price: Double Quantity: Integer CreateDate: Date CategoryId: String Available: Boolean Username: String Fullname: String Password: String Email: String Photo: String Activated: Boolean Admin: Boolean Id: Long Username: String CreateDate: Date Address: String Id: Long OrderId: Long ProductId: Integer Price: Double Quantity: Integer ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Account Id: String Name: String Order OrderDetail Category @Entity @Table @UniqueConstraint @Column @Id @GeneratedValue @Temporal @OneToMany @ManyToOne @JoinColumn J5SHOP REPOSITORY IMPLEMENTATION public interface CategoryDAO extends JpaRepository{} public interface ProductDAO extends JpaRepository{} public interface AccountDAO extends JpaRepository{} public interface OrderDAO extends JpaRepository{} public interface OrderDetailDAO extends JpaRepository{} TỔ CHỨC CONTROLLER Tiêm DAO cần thiết vào Controller TRUY VẤN KIỂM TRA VÀ THAO TÁC Conceive Design Implement Operate TRUY VẤN CÓ SẮP XẾP VÀ PHÂN TRANG GIẢNG VIÊN: SORTING ❑List findAll(Sort) ❖Cho phép cung cấp tiêu chuẩn xếp việc truy vấn tất thực thể ❑Sort ❖Sort.by(Direction, String properties): Tạo Sort ❖Sort.by(String properties): tạo Sort tang dần ❑Ví dụ: THẢO LUẬN NHÓM ❑Hiển thị sản phẩm theo cấu trúc giao diện sau ❑Thực xếp tăng dần giảm dần click chuột vào ô tiêu đề cột Name Price Date Category PAGINATING ❑Page findAll(Pageable) ❖Cho phép thực truy vấn có xếp phân trang Trong Pageable cung cấp tiêu chí xếp phân trang ❑Pageable tạo theo cách sau ❖PageRequest.of(int page, int size) ❖PageRequest.of(int page, int size, Sort sort) ❖PageRequest.of(int page, int size, Direction direction, String properties) ❑Page chứa kết truy vấn gồm ❖Trang liệu List ❖Thông tin tổng hợp phân trang hoạt động điều hướng khác PAGE API ❑Dữ liệu trang ❖getContent(): List ❑Thông tin phân trang ❖getNumber(): int ➢ Trang số ❖getSize(): int ➢ Kích thước trang ❖getTotalPages(): int ➢ Tổng số trang ❖getTotalElements(): int ➢ Tổng số thực thể ❖getNumberOfElements(): int ➢ Số thực thể có ❑Điều hướng ❖nextPageable(): Pageable ❖nextOrLastPageable(): Pageable ❖previousPageable(): Pageable ❖previousOrFirstPageable(): Pageable ❑Kiểm tra ❖hasNext(): boolean ❖hasPrevious() : boolean ❖isFirst() : boolean ❖isLast() : boolean VÍ DỤ PHÂN TRANG ❑ http://localhost:8080/pager/list ❑ http://localhost:8080/pager/list?pageNo=2 HTTP://LOCALHOST:8080/PAGER/LIST?PAGENO=2 • Content: liệu truy vấn • Pageable: thơng tin phân trang đầu vào • Các thuộc tính cịn lại thơng số tính từ kết việc phân trang LÀM VIỆC VỚI PAGE TRONG JSP ❑Duyệt liệu //… ❑Hiển thị kết phân trang ❖Trang số: ${page.number} ❖Kích thước trang: ${page.size} ❖Tổng số trang: ${page.totalPages} ❖Số phần tử tại: ${page.numberOfElements} ❖Tổng số phần tử: ${page.totalElements} THẢO LUẬN NHĨM ❑Tìm giải pháp thực phân trang sản phẩm hình sau Name • • • • Trang: ? Tổng số trang: ? Số thực thể: ? Tổng số thực thể: ? Price Date Category |< > >| |< << > > >| SUMMARY JpaRepository API  Giới thiệu CSDL mẫu J5Shop  Tạo lớp thực thể  Sơ đồ phân cấp thừa kế JpaRepository  Tạo DAO làm việc với J5Shop  Xây dựng ứng dụng CRUD Sắp xếp phân trang với JpaRepository  Truy vấn có xếp  Truy vấn có phân trang  Sắp xếp phân trang sản phẩm

Ngày đăng: 21/11/2023, 07:24

Xem thêm: