cuốn sách gpt4 ai đã làm

Nhận kết quả từ truy vấn dưới dạng danh sách các đối tượng tùy chỉnh

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 10:03:45 25 4
mua khóa gpt4 Nike

Tôi muốn triển khai truy vấn SQL trên biểu đồ thanh hiển thị khối lượng giao dịch hàng ngày trong 10 ngày qua. Ví dụ tôi có cấu trúc bảng này:

TẠO BẢNG `thanh toán_giao dịch` (
`id` int(11) KHÔNG NULL,
`số tiền` int(11) MẶC ĐỊNH NULL,
`created_at` ngày giờ MẶC ĐỊNH NULL,
KHÓA CHÍNH (`id`),
);

Tôi nhận được kết quả ví dụ này (được nhóm theo ngày):

Ngày | Số tiền | Số lượng giao dịch mỗi ngày |
11-11-2018 30 |
12-11-2018 | 230 |

Truy vấn JPA:

Danh sách công khai findAll() {

Chuỗi hql = "CHỌN ngày(created_at) NHƯ cdate, tổng(số tiền) NHƯ số tiền, đếm(id) NHƯ nooftransaction "
+ "TỪ Payment_transactions WHERE ngày(created_at)>=date(now()- khoảng thời gian 10 NGÀY) "
+ "VÀ ngày(created_at)

TypedQuery query = instanceManager.createQuery(hql, Merchants.class);
Danh sách data = query.getResultList();

trả về dữ liệu;
}

Các đối tượng Java:

lớp công khai DashboardDTO {

ngày riêng tư;
số tiền int riêng tư;
số int riêng_of_transactions;

Bảng điều khiển công khaiDTO(Ngày ngày, số tiền int, số int_of_giao dịch) {
this.date = ngày;
số tiền này = số tiền;
this.number_of_transactions = number_of_transactions;
}

Ngày công khai getDate() {
ngày trở về;
}

public void setDate(Ngày ngày) {
this.date = ngày;
}

công khai int getAmount() {
số tiền hoàn lại;
}

public void setAmount(int money) {
số tiền này = số tiền;
}

công khai int getNumber_of_transactions() {
trả về số_of_giao dịch;
}

public void setNumber_of_transactions(int number_of_transactions) {
this.number_of_transactions = number_of_transactions;
}
}

Làm thế nào để thực hiện truy vấn một cách chính xác? Kết quả tôi muốn nhận được là Danh sáchKhông sử dụng thực thể?

câu trả lời hay nhất

Cách đơn giản là@Entity,@IdThêm vào của bạnBảng điều khiểnDTOvà làm cho bí danh sql gốc của bạn khớp với tên thuộc tính của DTO.

@Entity
lớp công khai DashboardDTO {
@Id
ngày riêng tư cdate;
số tiền int riêng tư;
số int riêng tưOfTransactions;
...
}

Danh sách công khai findAll() {
Chuỗi hql = "CHỌN ... NHƯ cdate, ... NHƯ số tiền, ... NHƯ số_of_giao dịch TỪ ...";
trả về instanceManager.createNativeQuery(hql, DashboardDTO.class).getResultList();
}

Về java - nhận kết quả từ truy vấn dưới dạng danh sách các đối tượng tùy chỉnh, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/53179452/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress