Tiles Configuration ফাইল এবং Layout Management

Struts 2 এর Tiles Framework Integration - স্ট্রাটস (Struts 2) - Java Technologies

334

Struts 2 তে Tiles কী?

Tiles হলো একটি টেমপ্লেট ম্যানেজমেন্ট সিস্টেম যা Struts 2-এ ব্যবহারকারী ইন্টারফেস (UI) ডিজাইন এবং কনফিগারেশনের জন্য ব্যবহৃত হয়। Tiles এর মাধ্যমে আপনি layouts এবং reusable components তৈরি করতে পারেন, যা অ্যাপ্লিকেশনে একাধিক জায়গায় পুনঃব্যবহার করা সম্ভব। এটি UI উপাদানগুলোর মধ্যে পুনঃব্যবহারযোগ্য অংশ (যেমন হেডার, ফুটার, সাইডবার ইত্যাদি) তৈরি করার জন্য উপযোগী।

Tiles ফ্রেমওয়ার্কে Tiles Definition কনফিগারেশন ফাইল ব্যবহৃত হয়, যা নির্ধারণ করে UI উপাদানগুলোর লেআউট এবং অন্যান্য অংশ কীভাবে একসাথে সংযুক্ত হবে।


Tiles Configuration ফাইল কী?

Tiles Configuration ফাইল (সাধারণত tiles.xml) Struts 2 অ্যাপ্লিকেশনটিতে Tiles Definition সংজ্ঞায়িত করে। এই ফাইলটি ব্যবহার করে আমরা Tiles Definitions তৈরি করতে পারি, যা UI লেআউটগুলোর বিভিন্ন অংশকে একত্রিত করে। একটি Tiles Definition একটি লেআউট টেমপ্লেট হিসেবে কাজ করে এবং এর মধ্যে বিভিন্ন tiles (যেমন, header, footer, content) যোগ করা যায়।

Tiles Configuration ফাইল তৈরি করা

Struts 2 অ্যাপ্লিকেশনে Tiles ব্যবহার করতে হলে প্রথমে একটি tiles.xml কনফিগারেশন ফাইল তৈরি করতে হয়, যেখানে Tiles Definitions এবং অন্যান্য কনফিগারেশন সন্নিবেশ করা হয়।

উদাহরণ: tiles.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN" "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
<tiles-definitions>

    <!-- Default layout definition -->
    <definition name="defaultLayout" template="/WEB-INF/layouts/defaultLayout.jsp">
        <put-attribute name="header" value="/WEB-INF/views/partials/header.jsp"/>
        <put-attribute name="footer" value="/WEB-INF/views/partials/footer.jsp"/>
        <put-attribute name="body" value="body"/>
    </definition>

    <!-- Another layout definition -->
    <definition name="anotherLayout" template="/WEB-INF/layouts/anotherLayout.jsp">
        <put-attribute name="header" value="/WEB-INF/views/partials/header.jsp"/>
        <put-attribute name="footer" value="/WEB-INF/views/partials/footer.jsp"/>
        <put-attribute name="body" value="body"/>
    </definition>

</tiles-definitions>

ব্যাখ্যা:

  1. definition: এটি একটি টেমপ্লেট (layout) ডিফাইন করে, যা template অ্যাট্রিবিউটের মাধ্যমে একটি JSP পৃষ্ঠার রেফারেন্স প্রদান করে। উদাহরণস্বরূপ, defaultLayout.jsp একটি টেমপ্লেট পৃষ্ঠা।
  2. put-attribute: এটি একটি অ্যাট্রিবিউটের মান নির্ধারণ করে, যা header, footer এবং body নামক অংশগুলি কনফিগার করে। এগুলি বিভিন্ন JSP পৃষ্ঠার অংশ হতে পারে, যেমন হেডার, ফুটার এবং কনটেন্ট।
  3. template: এটি যে JSP পৃষ্ঠাটি টেমপ্লেট হিসেবে কাজ করবে তা নির্দেশ করে।

Struts 2 এর মধ্যে Tiles ইন্টিগ্রেশন

Struts 2 অ্যাপ্লিকেশনে Tiles ব্যবহার করতে হলে, tiles-plugin লাইব্রেরি প্রজেক্টে যুক্ত করতে হয় এবং struts.xml ফাইলের মাধ্যমে Tiles কনফিগার করতে হয়।

১. tiles-plugin jar যুক্ত করা

প্রথমে tiles-plugin JAR ফাইলটি lib ফোল্ডারে যুক্ত করতে হবে অথবা Maven ব্যবহার করলে pom.xml ফাইলে এটি অন্তর্ভুক্ত করতে হবে।

<dependency>
    <groupId>org.apache.tiles</groupId>
    <artifactId>tiles-core</artifactId>
    <version>3.0.8</version>
</dependency>

<dependency>
    <groupId>org.apache.tiles</groupId>
    <artifactId>tiles-struts2</artifactId>
    <version>3.0.8</version>
</dependency>

২. struts.xml কনফিগারেশন

Struts 2 অ্যাপ্লিকেশনে Tiles ব্যবহারের জন্য, struts.xml ফাইলে Tiles কনফিগারেশন যোগ করা প্রয়োজন।

<struts>
    <package name="default" extends="struts-default,tiles-default">
        <!-- Define actions here -->
    </package>
</struts>

Tiles Layout Management ব্যবহার করা

Tiles কনফিগারেশন ফাইল (tiles.xml) ব্যবহার করে লেআউট তৈরি করা হয়, যা template এবং put-attribute দিয়ে বিভিন্ন অংশ (header, footer, body) সংযুক্ত করে।

উদাহরণ: DefaultLayout.jsp

<!DOCTYPE html>
<html>
<head>
    <title>Default Layout</title>
</head>
<body>
    <div id="header">
        <tiles:insertAttribute name="header" />
    </div>
    <div id="content">
        <tiles:insertAttribute name="body" />
    </div>
    <div id="footer">
        <tiles:insertAttribute name="footer" />
    </div>
</body>
</html>

ব্যাখ্যা:

  1. tiles:insertAttribute: এই ট্যাগটি tiles.xml ফাইল থেকে নির্দিষ্ট অ্যাট্রিবিউটের মান ইনসার্ট করে। উদাহরণস্বরূপ, এখানে header, body, এবং footer অ্যাট্রিবিউটগুলি tiles.xml থেকে ইন্সার্ট করা হবে।

Layout Management

Tiles ফ্রেমওয়ার্ক ব্যবহার করে আপনি অ্যাপ্লিকেশনের বিভিন্ন অংশকে একত্রিত এবং ম্যানেজ করতে পারেন। এটি অ্যাপ্লিকেশনের UI-কে বেশি রিস্পন্সিভ এবং কাস্টমাইজেবল করে তোলে। উদাহরণস্বরূপ:

  1. Header: সমস্ত পৃষ্ঠায় একই হেডার ব্যবহার করা যায়, যেমন একটি ন্যাভিগেশন বার বা টাইটেল।
  2. Footer: একই ফুটার সব পৃষ্ঠায় যোগ করা যায়, যেমন কপিরাইট বা ফুটা লিংক।
  3. Body: বিভিন্ন পৃষ্ঠার জন্য ডায়নামিক কন্টেন্ট তৈরি করা যায়।

Tiles ফ্রেমওয়ার্ক Layout Management প্রক্রিয়াটি সহজ করে, যা বিভিন্ন অংশের পুনঃব্যবহারযোগ্যতা এবং কোডের মেইনটেন্যান্স সহজ করে তোলে।


সারাংশ

Struts 2 অ্যাপ্লিকেশনে Tiles ব্যবহারের মাধ্যমে আপনি সহজেই layout management করতে পারেন। tiles.xml ফাইলের মাধ্যমে টেমপ্লেট এবং অংশগুলির কনফিগারেশন করা হয়, যা UI উপাদানগুলোর মধ্যে পুনঃব্যবহারযোগ্যতা এবং সঠিক লেআউট তৈরি করতে সহায়তা করে। Struts 2 ফ্রেমওয়ার্কের সাথে Tiles একত্রিত করে অ্যাপ্লিকেশনটির ডিজাইন এবং কনফিগারেশন অনেক সহজ এবং পরিষ্কার হয়ে ওঠে।


Content added By
Promotion

Are you sure to start over?

Loading...