Core এবং Formatting ট্যাগ লাইব্রেরি

Servlet API এর জন্য Custom Tag Libraries (JSTL) - সার্ভলেটস (Servlets) - Java Technologies

238

Java সার্ভলেটস (Servlets) হলো Java EE (বর্তমানে Jakarta EE)-র একটি মূল টেকনোলজি যা ডায়নামিক ওয়েব অ্যাপ্লিকেশন তৈরিতে ব্যবহৃত হয়। এটি সার্ভার-সাইড প্রোগ্রামিং এর মাধ্যমে ক্লায়েন্টের অনুরোধ (HTTP Request) গ্রহণ করে এবং সেই অনুযায়ী HTTP রেসপন্স তৈরি করতে ব্যবহৃত হয়।


Core এবং Formatting ট্যাগ লাইব্রেরি

Java Server Pages (JSP) এর সাথে সার্ভলেটস প্রায়ই ব্যবহার করা হয়, যেখানে JSTL (JavaServer Pages Standard Tag Library) গুরুত্বপূর্ণ ভূমিকা পালন করে। JSTL-এর মধ্যে দুটি প্রধান লাইব্রেরি হলো:

  1. Core ট্যাগ লাইব্রেরি
  2. Formatting ট্যাগ লাইব্রেরি

1. Core ট্যাগ লাইব্রেরি

Core ট্যাগ লাইব্রেরি সাধারণ কার্যক্রম, যেমন শর্তমূলক লজিক, লুপিং, এবং ডেটা ম্যানিপুলেশনের জন্য ব্যবহৃত হয়।

Core লাইব্রেরি ডিরেক্টিভ

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

কিছু গুরুত্বপূর্ণ Core ট্যাগ

ট্যাগকাজ
<c:out>ভেরিয়েবলের মান আউটপুট দেয়
<c:if>শর্ত পূরণ হলে ব্লকটি কার্যকর করে
<c:choose>Switch-case এর মতো শর্ত চেক করে
<c:forEach>লুপের মাধ্যমে ডেটা ট্রাভার্স করে
<c:set>ভেরিয়েবলের মান সেট করে
<c:remove>ভেরিয়েবল রিমুভ করে

উদাহরণ:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:set var="name" value="John Doe" />
<c:if test="${not empty name}">
    <p>Name: <c:out value="${name}" /></p>
</c:if>

<c:forEach var="item" items="${items}">
    <p>Item: <c:out value="${item}" /></p>
</c:forEach>

2. Formatting ট্যাগ লাইব্রেরি

Formatting ট্যাগ লাইব্রেরি ডেটা ফরম্যাট, যেমন তারিখ, সংখ্যা, এবং আন্তর্জাতিকীকরণের জন্য ব্যবহৃত হয়।

Formatting লাইব্রেরি ডিরেক্টিভ

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

কিছু গুরুত্বপূর্ণ Formatting ট্যাগ

ট্যাগকাজ
<fmt:formatNumber>সংখ্যাকে ফরম্যাট করে
<fmt:formatDate>তারিখ এবং সময় ফরম্যাট করে
<fmt:setLocale>নির্দিষ্ট লোকেল সেট করে
<fmt:message>লোকেল-সাপোর্টেড বার্তা দেখায়
<fmt:parseNumber>String থেকে সংখ্যা তৈরি করে
<fmt:parseDate>String থেকে Date তৈরি করে

উদাহরণ:

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<fmt:setLocale value="en_US" />

<p>Today's Date: <fmt:formatDate value="${now}" pattern="yyyy-MM-dd" /></p>
<p>Formatted Number: <fmt:formatNumber value="1234567.89" type="currency" /></p>
<p>Localized Message: <fmt:message key="welcome.message" /></p>

Core এবং Formatting ট্যাগ ব্যবহার করার উদাহরণ

Servlet কোড:

import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/example")
public class ExampleServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
            throws ServletException, IOException {
        List<String> items = new ArrayList<>();
        items.add("Apple");
        items.add("Banana");
        items.add("Cherry");

        request.setAttribute("items", items);
        request.setAttribute("now", new Date());

        request.getRequestDispatcher("/example.jsp").forward(request, response);
    }
}

JSP ফাইল (example.jsp):

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<html>
<head>
    <title>JSTL Example</title>
</head>
<body>
    <h1>Core এবং Formatting ট্যাগ উদাহরণ</h1>

    <h2>Items List</h2>
    <ul>
        <c:forEach var="item" items="${items}">
            <li><c:out value="${item}" /></li>
        </c:forEach>
    </ul>

    <h2>Formatting Example</h2>
    <p>Current Date: <fmt:formatDate value="${now}" pattern="dd-MM-yyyy" /></p>
</body>
</html>

রান করার ফলাফল

  1. ব্রাউজারে http://localhost:8080/example এ যান।
  2. আউটপুট হবে:

    Core এবং Formatting ট্যাগ উদাহরণ
    
    Items List:
    - Apple
    - Banana
    - Cherry
    
    Formatting Example:
    Current Date: 21-12-2024
    

উপসংহার

Core এবং Formatting ট্যাগ লাইব্রেরি জটিল JSP পৃষ্ঠার কাজকে সহজ এবং আরও কার্যকর করে। এটি Java সার্ভলেট ও JSP এর মধ্যে ফ্লেক্সিবল এবং রিডেবল ইন্টারফেস প্রদান করে।

Content added By
Promotion

Are you sure to start over?

Loading...