Rumah Java javaTutorial Menggunakan FreeMarker untuk pemprosesan enjin templat Web dalam pembangunan API Java

Menggunakan FreeMarker untuk pemprosesan enjin templat Web dalam pembangunan API Java

Jun 18, 2023 am 08:39 AM
freemarker java api enjin templat web.

Dengan perkembangan pesat Internet, pembangunan aplikasi web telah menjadi semakin biasa. Untuk menjadikan aplikasi web lebih mudah dibaca dan diselenggara, pembangun sering menggunakan enjin templat web untuk pemaparan paparan. Dalam pembangunan Java, terdapat banyak enjin templat web yang popular, dan FreeMarker adalah salah satu daripadanya.

Artikel ini akan memperkenalkan enjin templat Web FreeMarker dan penggunaannya dalam pembangunan API Java, termasuk ciri terasnya, konfigurasi dan aplikasinya dalam pertempuran sebenar.

1. Apakah itu FreeMarker

FreeMarker ialah enjin templat Java sumber terbuka yang menggunakan kaedah berasaskan templat untuk menjana teks statik atau halaman web dinamik. Cirinya ialah pengasingan templat dan kod program, yang menjelaskan sempadan antara prestasi dan logik, memisahkan pemaparan halaman dan logik perniagaan, serta meningkatkan kebolehbacaan dan kebolehselenggaraan kod. FreeMarker menyokong pelbagai jenis templat seperti templat teks, templat XML, templat HTML, perpustakaan tag JSP, dsb., dan boleh disepadukan dengan pelbagai rangka kerja web, seperti Struts2, Spring MVC, dsb.

FreeMarker mempunyai ciri berikut:

  1. Pengasingan kebimbangan: Fail templat hanya mentakrifkan kesan paparan halaman dan tingkah laku interaktif pengguna hadapan, tanpa logik perniagaan terbenam kod.
  2. Sokongan jenis yang kuat: Berbanding dengan JSP, FreeMarker mempunyai keupayaan sokongan jenis yang kukuh, yang boleh membantu kami menyemak ralat jenis pada masa penyusunan dan mengurangkan ralat masa jalan.
  3. Pelbagai format fail templat: FreeMarker menyokong pemprosesan berbilang format fail templat, termasuk, tetapi tidak terhad kepada, HTML, XML dan JSON.
  4. Keserasian: FreeMarker boleh disepadukan ke dalam pelbagai rangka kerja web dan digunakan secara meluas dalam SpringMVC, Struts2 dan rangka kerja lain.

2. Penggunaan FreeMarker API

FreeMarker menyediakan banyak API untuk menggunakannya untuk menjana templat kami melibatkan mengkonfigurasi FreeMarker untuk memancarkan templat. Seterusnya, kami menunjukkan cara untuk menyediakan dan menggunakan API FreeMarker.

  1. Memperkenalkan pakej kebergantungan FreeMarker

Pertama, kita perlu menambah kebergantungan FreeMarker dalam fail pom.xml projek:

    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>2.3.31</version>
    </dependency>
Salin selepas log masuk
  1. Konfigurasikan FreeMarker

Untuk mencipta FreeMarker atau anda memerlukan konfigurasi untuk memberitahunya cara memuatkan templat, rujuk contoh kod berikut:

Configuration configuration = new Configuration(Configuration.VERSION_2_3_28);
configuration.setClassForTemplateLoading(YourClass.class, "templates");
Salin selepas log masuk

Di mana, VERSION_2_3_28 ialah nombor versi FreeMarker, setClassForTemplateLoading () Kaedah menetapkan laluan untuk FreeMarker untuk memuatkan templat.

  1. Tetapkan model data

Seterusnya, anda perlu menetapkan data input templat. Dalam FreeMarker, latar belakang ini ialah Peta dan Peta ini perlu mengandungi semua data yang ingin kami gunakan dalam templat. Kita boleh menggunakan jenis SimpleHash untuk mencipta Peta ini:

Map<String, Object> input = new HashMap<String, Object>();
input.put("title", "FreeMarker Example");
Salin selepas log masuk

Dalam contoh ini, kami menambah "tajuk" sebagai kunci dan "Contoh FreeMarker" sebagai nilai pada input.

  1. Muat dan render templat

Akhir sekali, kita perlu memuatkan templat dan memberikan data input ke dalam templat, rujuk contoh kod berikut:

Template template = configuration.getTemplate("example.ftl");
Writer out = new OutputStreamWriter(System.out);
template.process(input, out);
out.flush();
Salin selepas log masuk

Dalam contoh ini, "example.ftl" ialah fail templat Kami menggunakan kaedah configuration.getTemplate() untuk memuatkannya dan kaedah template.process() untuk memaparkan data dalam input ke dalam templat, dan akhirnya mengeluarkannya keluar.

  1. Sintaks templat FreeMarker

Sintaks templat FreeMarker mentakrifkan teg templat, format dan kaedah terbina dalam. Penanda templat ialah arahan dalam templat, yang terdiri daripada kod templat FreeMarker dalam sepasang teg ${} atau <% %>

Berikut ialah beberapa penanda FreeMarker:

  1. ${...}: Ungkapan FreeMarker boleh mengandungi sebarang ungkapan Java yang sah.
  2. <% ... %>: Mengandungi teg templat asal.
  3. <@...>..: Menunjukkan serpihan templat agregat.
  4. #...#list..#assign...#recover...#stop: Teg asal untuk mengendalikan dan mengawal kejadian templat.
  5. <#macro...>...<#nested>: Tentukan blok templat boleh guna semula.

3. Contoh aplikasi FreeMarker

Di bawah kami akan menunjukkan cara menggunakan FreeMarker untuk menulis templat dalam pembangunan API Java.

  1. Tulis fail templat

Mula-mula, kita perlu menulis fail templat FreeMarker, contohnya, test.ftl:

<html>
<head>
<title>${title}</title>
</head>
<body>
<h1>${title}</h1>
<ul>
<#list users as user>
<li>${user.name} (${user.email})</li>
</#list>
</ul>
</body>
</html>
Salin selepas log masuk

Dalam contoh ini , kami Gunakan teg ${...} untuk merujuk data dalam input, dan menggunakan teg <#list ...> setiap pengguna.

  1. Tetapkan model data dan muatkan templat

Kemudian, kita perlu tetapkan model data, rujuk contoh kod berikut:

Map<String, Object> input = new HashMap<String, Object>();
input.put("title", "FreeMarker Example");
List userList = new ArrayList();
userList.add(new User("Tom", "tom@example.com"));
userList.add(new User("Jerry", "jerry@example.com"));
input.put("users", userList);

Configuration configuration = new Configuration(Configuration.VERSION_2_3_28);
configuration.setClassForTemplateLoading(YourClass.class, "/templates");

Template template = configuration.getTemplate("test.ftl");
Writer out = new OutputStreamWriter(System.out);
template.process(input, out);
out.flush();
Salin selepas log masuk

Dalam contoh ini, kami Kelas JavaBean bernama Pengguna dicipta Apabila membuat Peta, kami menggunakan userList sebagai kunci dan rujukan Senarai sebagai nilai, dan menambahnya pada input.

3. Ringkasan

Artikel ini memperkenalkan enjin templat Web FreeMarker dan penggunaannya dalam pembangunan API Java. FreeMarker menjadikan pembangunan aplikasi web lebih mudah sambil meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Dengan menerangkan ciri teras, konfigurasi dan aplikasi FreeMarker dalam amalan, kami berharap dapat membantu pembaca memahami dan menggunakan FreeMarker dengan lebih baik.

Atas ialah kandungan terperinci Menggunakan FreeMarker untuk pemprosesan enjin templat Web dalam pembangunan API Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Menggunakan Imgscalr untuk pemprosesan imej dalam pembangunan API Java Menggunakan Imgscalr untuk pemprosesan imej dalam pembangunan API Java Jun 18, 2023 am 08:40 AM

Menggunakan Imgscalr untuk pemprosesan imej dalam pembangunan API Java Dengan perkembangan Internet mudah alih dan populariti pengiklanan Internet, imej telah menjadi elemen yang amat diperlukan dalam banyak aplikasi. Sama ada ia memaparkan produk, membina kalangan sosial atau meningkatkan pengalaman pengguna, imej memainkan peranan penting. Dalam aplikasi, selalunya perlu untuk melakukan operasi seperti pemangkasan, penskalaan dan pemutaran imej, yang memerlukan penggunaan beberapa alat pemprosesan imej. Imgscalr ialah imej yang sangat biasa digunakan dalam pembangunan JavaAPI.

Apakah tapak web antara muka API percuma? Apakah tapak web antara muka API percuma? Jan 05, 2024 am 11:33 AM

Laman web antara muka api percuma: 1. UomgAPI: platform yang menyediakan perkhidmatan API percuma yang stabil dan pantas, dengan lebih daripada 100 antara muka API 2. api percuma: menyediakan pelbagai antara muka API percuma 3. API JSON: menyediakan antara muka API data percuma; . Platform Terbuka AutoNavi: Menyediakan antara muka API yang berkaitan dengan peta; 5. Pengecaman muka Muka++: Menyediakan antara muka API yang berkaitan dengan pengecaman muka: Menyediakan lebih seratus antara muka API percuma, sesuai untuk pelbagai keperluan sumber; 7. Data agregat, dsb.

Bagaimana untuk melaksanakan kod pengesahan imej dalam pembangunan API Java Bagaimana untuk melaksanakan kod pengesahan imej dalam pembangunan API Java Jun 18, 2023 am 09:22 AM

Dengan perkembangan pesat teknologi Internet, untuk memastikan keselamatan sistem, kod pengesahan telah menjadi bahagian penting dalam setiap sistem. Antaranya, kod pengesahan gambar digemari oleh pembangun kerana kemudahan penggunaan dan keselamatannya. Artikel ini akan memperkenalkan kaedah khusus untuk melaksanakan kod pengesahan imej dalam pembangunan JavaAPI. 1. Apakah itu kod pengesahan gambar? Kod pengesahan gambar ialah cara pengesahan mesin manusia melalui gambar. Ia biasanya terdiri daripada gabungan gambar rawak yang mengandungi nombor, huruf, simbol, dsb., yang meningkatkan keselamatan sistem. Prinsip kerjanya termasuk

Menggunakan GreenMail untuk ujian e-mel dalam pembangunan API Java Menggunakan GreenMail untuk ujian e-mel dalam pembangunan API Java Jun 18, 2023 pm 02:22 PM

Java API ialah bahasa pembangunan yang digunakan secara meluas untuk membangunkan aplikasi web, aplikasi desktop, aplikasi mudah alih, dsb. Dalam pembangunan API Java, ujian e-mel adalah penting kerana komunikasi e-mel adalah salah satu kaedah komunikasi utama dalam masyarakat moden. Oleh itu, pembangun perlu menggunakan beberapa alat untuk menguji sama ada e-mel mereka berfungsi dengan baik. Artikel ini akan memperkenalkan perisian sumber terbuka yang dipanggil GreenMail, yang boleh digunakan dalam pembangunan JavaAPI untuk ujian e-mel. hijau

Apakah protokol biasa untuk pengaturcaraan rangkaian Java? Apakah protokol biasa untuk pengaturcaraan rangkaian Java? Apr 15, 2024 am 11:33 AM

Protokol yang biasa digunakan dalam pengaturcaraan rangkaian Java termasuk: TCP/IP: digunakan untuk penghantaran data dan pengurusan sambungan yang boleh dipercayai. HTTP: digunakan untuk penghantaran data web. HTTPS: Versi HTTP selamat yang menggunakan penyulitan untuk menghantar data. UDP: Untuk pemindahan data yang cepat tetapi tidak stabil. JDBC: digunakan untuk berinteraksi dengan pangkalan data hubungan.

Apakah itu j2ee dan apakah teknologi yang disertakan Apakah itu j2ee dan apakah teknologi yang disertakan Apr 14, 2024 pm 09:06 PM

J2EE ialah platform Java yang direka untuk membangunkan aplikasi perusahaan dan termasuk teknologi berikut: Java Servlet dan JSPJava Enterprise Beans (EJB)Java Persistence API (JPA)Java API untuk XML Web Services (JAX-WS)JavaMailJava Message Service ( JMS)Java Transaction API (JTA) Penamaan Java dan Antara Muka Direktori (JNDI)

JAX-RS lwn. Spring MVC: Pertempuran antara gergasi RESTful JAX-RS lwn. Spring MVC: Pertempuran antara gergasi RESTful Feb 29, 2024 pm 05:16 PM

Pengenalan API RESTful telah menjadi sebahagian daripada aplikasi WEB moden. Mereka menyediakan pendekatan piawai untuk mencipta dan menggunakan perkhidmatan Web, dengan itu meningkatkan kemudahalihan, kebolehskalaan dan kemudahan penggunaan. Dalam ekosistem Java, JAX-RS dan springmvc ialah dua rangka kerja yang paling popular untuk membina API RESTful. Artikel ini akan melihat secara mendalam kedua-dua rangka kerja, membandingkan ciri, kelebihan dan keburukannya untuk membantu anda membuat keputusan termaklum. JAX-RS: JAX-RSAPI JAX-RS (JavaAPI untuk Perkhidmatan Web RESTful) ialah JAX-RSAPI standard yang dibangunkan oleh JavaEE untuk membangunkan REST

Menggunakan Jgroups untuk komunikasi teragih dalam pembangunan API Java Menggunakan Jgroups untuk komunikasi teragih dalam pembangunan API Java Jun 18, 2023 pm 11:04 PM

Menggunakan JGroups untuk komunikasi teragih dalam pembangunan JavaAPI Dengan perkembangan pesat Internet dan populariti pengkomputeran awan, sistem teragih telah menjadi salah satu trend penting dalam pembangunan Internet hari ini. Dalam sistem teragih, nod yang berbeza perlu berkomunikasi dan bekerjasama antara satu sama lain untuk mencapai ketersediaan tinggi, prestasi tinggi, berskala tinggi dan ciri-ciri lain sistem teragih. Komunikasi teragih adalah bahagian penting daripadanya. JGroups ialah perpustakaan Java yang menyokong kolaborasi multicast dan diedarkan Ia menyediakan satu siri

See all articles