Spring HTMLdan boshqa natijalarni qaytarishning usullarini taklif etadi, jumladan PDF va Excel elektron jadvallarini.
Hujjat ko'rinishiga kirish
HTML sahifasi har doim foydalanuvchi uchun model natijalarini ko'rishning eng yaxshi usuli emas va Spring model ma'lumotlariga asoslangan PDF hujjat yoki Excel jadvalini dinamik ravishda yaratishni osonlashtiradi. Hujjat bu ko'rinish bo'lib, serverdan tegishli tarkibiy tur bilan yuboriladi, shunda (xiralashgan holda) mijoz kompyuteri javoban o'zining elektron jadvallar dasturini yoki PDF ko'rish dasturini ishga tushirishi mumkin bo'ladi.
Excel ko'rinishlaridan foydalanish uchun Apache POI kutubxonasini classpath-ga qo'shish kerak. PDF yaratish uchun (imkoniyati bo'lsa) OpenPDF kutubxonasini qo'shish kerak.
PDF ko'rinishlar
So'zlar ro'yxati uchun oddiy PDF ko'rinish org.springframework.web.servlet.view.document.AbstractPdfView dan kengaytirilib, buildPdfDocument() metodini amalga oshirish orqali quyidagi misolda ko'rsatilganidek yaratish mumkin:
public class PdfWordList extends AbstractPdfView {
protected void buildPdfDocument(Map<String, Object> model, Document doc, PdfWriter writer,
HttpServletRequest request, HttpServletResponse response) throws Exception {
List<String> words = (List<String>) model.get("wordList");
// Har bir so'zni jadvalga qo'shish
for (String word : words) {
doc.add(new Paragraph(word));
}
}
}
class PdfWordList : AbstractPdfView() {
override fun buildPdfDocument(model: Map<String, Any>, doc: Document, writer: PdfWriter,
request: HttpServletRequest, response: HttpServletResponse) {
val words = model["wordList"] as List<String>
// Har bir so'zni jadvalga qo'shish
for (word in words) {
doc.add(Paragraph(word))
}
}
}
Kontroller bunday ko'rinishni tashqi ko'rinish aniqlovidan (nomi orqali unga murojaat qilish orqali) yoki metoddan View instansiyasi sifatida qaytarishi mumkin.
Excel ko'rinishlar
Spring Framework 4.2 versiyasidan boshlab, org.springframework.web.servlet.view.document.AbstractXlsView Excel ko'rinishlari uchun asosiy sinf sifatida taqdim etiladi. Bu Apache POI ga asoslanadi va maxsus qilingan AbstractXlsxView va AbstractXlsxStreamingView ost sinflari orasida mavjud, bu eski AbstractExcelView sinfini almashtiradi.
Programmalar modeli AbstractPdfView ga o'xshash, buildExcelDocument() markaziy shablon metodi sifatida va boshqaruvchilar bu ko'rinishni tashqi aniqlash (nomi orqali) yoki metoddan View instansiyasi sifatida qaytarishi mumkin.
GO TO FULL VERSION