تقدم هذه المقالة Spring Boot و Kotlin لتقديم طرق عرض الويب باستخدام محرك قالب ThymeLeaf.
الوصول الثابت للموارد
عندما نطور تطبيقات الويب ، نحتاج إلى الرجوع إلى عدد كبير من الموارد الثابتة مثل JS و CSS والصور. كيف تدعم هذه الموارد الثابتة باستخدام Spring Boot و Kotlin؟ ، بسيطة جدا.
التكوين الافتراضي
يوفر SPRING BOOT مواقع دليل موارد ثابتة بشكل افتراضي ويجب وضعها تحت ClassPath ، ويجب أن يتوافق اسم الدليل للقواعد التالية:
/ثابت/عام/موارد/meta-Inf/الموارد
على سبيل المثال: يمكننا إنشاء ثابت في SRC/Main/Resources/Directory ووضع ملف صورة في هذا الموقع. بعد بدء البرنامج ، حاول الوصول إلى http: // localhost: 8080/ruby.jpg. إذا كان يمكن عرض الصورة ، فسيكون التكوين ناجحًا.
تقديم صفحة ويب
في السابق ، تمت معالجة الطلب من خلال RestController ، وكان المحتوى الذي تم إرجاعه كائن JSON. إذا كنت بحاجة إلى تقديم صفحة HTML ، كيف تنفذها؟
محرك القالب
ضمن محرك القالب الموصى به من قبل Spring Boot ، يمكننا أن نبدأ بسرعة بتطوير مواقع الويب الديناميكية.
يوفر SPRING BOOT محركات قالب التكوين الافتراضي مع الأنواع الرئيسية التالية:
Thymeleaffreemarkergrovymustache
يوصي SPRING BOOT باستخدام محركات القالب هذه لتجنب استخدام JSP. إذا كان عليك استخدام JSP ، فلن تتمكن من تنفيذ ميزات مختلفة من Spring Boot. للحصول على التفاصيل ، يمكنك رؤية النص التالي: دعم تكوين JSP.
عند استخدام أي من محركات القالب أعلاه ، فإن مسار تكوين القالب الافتراضي هو: SRC/Main/Resources/Templates. بالطبع ، يمكن أيضًا تعديل هذا المسار. للحصول على التفاصيل ، يمكنك الاستعلام عنها وتعديلها في خصائص تكوين محركات القالب اللاحقة.
الغدة الدرقية
ThymeLeaf هو محرك قالب XML/XHTML/HTML5 يمكن استخدامه لتطوير التطبيق في كل من بيئات الويب وغير وايب. إنها مكتبة Java مفتوحة المصدر تعتمد على ترخيص Apache 2.0 وتم إنشاؤها بواسطة Daniel Fernández ، مؤلف مكتبة Java Encryption Jasypt.
يوفر ThymeLeaf وحدة اختيارية لدمج MVC Spring. في تطوير التطبيقات ، يمكنك استخدام Thymeleaf لاستبدال JSP تمامًا أو محركات القالب الأخرى ، مثل علامة الثقل ، وما إلى ذلك. الهدف الرئيسي من Thymeleaf هو توفير طريقة إنشاء قالب جيدة الشكل يمكن عرضها بشكل صحيح من قبل المتصفح ، وبالتالي يمكن استخدامها أيضًا كنمذجة ثابتة. يمكنك استخدامه لإنشاء قوالب XML و HTML التي تم التحقق من صحتها. مقارنة بكتابة المنطق أو الكود ، يحتاج المطورون ببساطة إلى إضافة سمات العلامة إلى القالب. بعد ذلك ، تنفذ خصائص العلامة هذه المنطق مسبقًا على DOM (نموذج كائن المستند).
قالب عينة:
<! doctype html> <html xmlns: th = "http://www.w3.org/1999/xhtml"> <head lang = "en"> <meta charset = "utf-8"/> العالم </h1> </body> </html>
يمكن ملاحظة أن Thymeleaf يضاف بشكل أساسي إلى علامة HTML في شكل سمات. عندما يقوم المتصفح بتوزيع HTML ، فإنه سيتجاهله عندما يتحقق من عدم وجود سمة. لذلك ، يمكن تسجيل قالب Thymeleaf مباشرة من خلال المتصفح ، وهو مفضي جدًا لفصل النهايات الأمامية والخلفية.
لاستخدام ThymeLeaf في SPRING BOOT ، تحتاج فقط إلى تقديم التبعيات التالية وكتابة ملف القالب ضمن مسار القالب الافتراضي SRC/Main/Resources/Templates لإكماله.
ترجمة "org.springframework.boot: spring-boot-starter-thymelef: $ spring_boot_version"
بعد الانتهاء من التكوين ، قدم مثالًا بسيطًا ، استنادًا إلى مشروع البدء السريع ، قدم مثالًا بسيطًا لتقديم صفحة عبر Thymeleaf.
استيراد org.springframework.stereteType.ControllerImport org.springframework.ui.modelmapimport org.springframework.web.bind.annotation.requestmapp/*** التي تم إنشاؤها بواسطة http://quanke.name على 2018/1/10. */ @ @controlRclass HelloconTroller {REquestMapping ("/") فهرس المرح (الخريطة: ModelMap): String {// إضافة سمة لقراءة map.addattribute ("HOST" ، "http://quanke.name") في القرف // اسم ملف الإرجاع ، يتوافق مع src/main " }}بشكل افتراضي ، أضف ملف index.html في دليل SRC/Main/Resources/Templates.
<! doctype html> <html xmlns: th = "http://www.w3.org/1999/xhtml"> <head lang = "en"> <meta charset = "utf-8"/> العالم </h1> </body> </html>
أضف طريقة بدء تشغيل SPRING Boot باستخدام لغة Kotlin:
استيراد org.springframework.boot.springapplicationimport org.springframework.boot.autoconfigure.springbootapplication/** ** ** ** تم إنشاؤها بواسطة http://quanke.name في 2018/1/9. */@springbootapplicationClass ApplicationFun Main (args: Array <string>) {SpringApplication.run (Application :: class.java ، *args)}كما هو موضح في الصفحة أعلاه ، يمكنك فتح صفحة HTML مباشرة لعرض Hello World ، ولكن بعد بدء البرنامج ، قم بزيارة http: // localhost: 8080/، مما يدل على قيمة المضيفة في وحدة التحكم: http://quanke.name ، الذي يحقق الفصل المنطقي للبيانات دون تدمير محتوى HTML الخاص.
لمزيد من بناء جملة صفحة Thymeleaf ، يرجى زيارة الوثائق الرسمية لـ Thymeleaf للاستعلام.
تكوين المعلمة الافتراضية
إذا كنت بحاجة إلى تعديل التكوين الافتراضي ، فما عليك سوى نسخ السمات التي تريد تعديلها أدناه إلى application.yml وتعديلها إلى القيمة المطلوبة ، مثل تعديل تمديد ملف القالب ، وتعديل مسار القالب الافتراضي ، وما إلى ذلك.
# تمكين القالب caching.spring.thymeleaf.cache = صحيح # تحقق من أن موقع القوالب موجود. الترميز. راجع أيضًا standardTemplateModeHandlers.Spring.ThymeLeaf.Mode = html5 # البادئة التي تحصل عليها مسبقًا للعرض # ترتيب حل القالب في السلسلة. Spring.ThymeLeaf.View-Names = # قائمة مفصولة بأسماء العرض التي يمكن حلها.
اختبار البيئة أو بيئة التنمية لتجنب مشاكل غير متوقعة. الإعدادات العامة: spring.thymeleaf.cache = صحيح
دعم تكوين JSP
لا ينصح بتمهيد الربيع ، ولكن إذا كان عليك استخدامه ، فيمكنك الرجوع إلى هذا المشروع كسقالة: دعم JSP
بشكل عام ، يدعم Kotlin Boot Spring جيدًا. تحتاج فقط إلى استخدام Boot Spring في Java وترجمته إلى Kotlin.
لخص
ما سبق هو طريقة استخدام محرك قالب ThymeLeaf لتقديم طرق عرض الويب بواسطة SPRING BOOT و Kotlin المقدمة إليك. آمل أن يكون ذلك مفيدًا لك. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر إليك في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!