কম্পিউটার টিউটোরিয়াল

JSP-এ লোকেল সেট করে রিকোয়ার্ড বান্ডেল আইডেন্টিফাই কীভাবে করবেন?


<fmt:setLocale> ট্যাগটি দেওয়া লোকেলকে লোকেল কনফিগারেশন ভেরিয়েবলে সংরক্ষণ করতে ব্যবহৃত হয়।

অ্যাট্রিবিউট

<fmt:setLocale> ট্যাগটির নিম্নলিখিত অ্যাট্রিবিউটগুলো রয়েছে:

অ্যাট্রিবিউট বিবরণ আবশ্যক ডিফল্ট
value ISO-639 ল্যাঙ্গুয়েজ কোড এবং ISO-3166 কান্ট্রি কোড প্রতিনিধিত্ব করার দুই-ভাগের কোড নির্দিষ্ট করে। হ্যাঁ en_US
variant ব্রাউজার-স্পেসিফিক ভ্যারিয়েন্ট নয় কোনো নয়
scope লোকেল কনফিগারেশন ভেরিয়েবলের স্কোপ নয় Page

উদাহরণ

রিসোর্স বান্ডেলে লোকেল-স্পেসিফিক অবজেক্ট থাকে। রিসোর্স বান্ডেলে কী/ভ্যালু জোড়া থাকে। আপনার প্রোগ্রাম যখন একটি লোকেল-স্পেসিফিক রিসোর্স দরকার করে, তখন আপনি সকল লোকেলের জন্য কীগুলো কমন রাখেন কিন্তু ভ্যালুগুলো লোকেল অনুযায়ী অনুবাদ করে রাখেন। রিসোর্স বান্ডেল লোকেল-স্পেসিফিক কন্টেন্ট প্রদান করতে সাহায্য করে।

একটি জাভা রিসোর্স বান্ডেল ফাইলে একটি সিরিজ কী-টু-স্ট্রিং ম্যাপিং থাকে। আমরা যে পদ্ধতিতে ফোকাস করব সেটি হলো কম্পাইল্ড জাভা ক্লাস তৈরি করা যা java.util.ListResourceBundle ক্লাস এক্সটেন্ড করে। আপনাকে এই ক্লাস ফাইলগুলো কম্পাইল করে আপনার ওয়েব অ্যাপ্লিকেশনের CLASSPATH-এ উপলব্ধ করতে হবে।

একটি ডিফল্ট রিসোর্স বান্ডেল সংজ্ঞায়িত করি:

package com.tutorialspoint; import java.util.ListResourceBundle; public class Example_En extends ListResourceBundle { public Object[][] getContents() { return contents; } static final Object[][] contents = { {"count.one", "One"}, {"count.two", "Two"}, {"count.three", "Three"}, }; }

এখন স্প্যানিশ লোকেলের জন্য আরেকটি রিসোর্স বান্ডেল সংজ্ঞায়িত করি:

package com.tutorialspoint; import java.util.ListResourceBundle; public class Example_es_ES extends ListResourceBundle { public Object[][] getContents() { return contents; } static final Object[][] contents = { {"count.one", "Uno"}, {"count.two", "Dos"}, {"count.three", "Tres"}, }; }

উপরোক্ত ক্লাসগুলো Example.class এবং Example_es_ES.class হিসেবে কম্পাইল করে আপনার ওয়েব অ্যাপ্লিকেশনের CLASSPATH-এ উপলব্ধ করান। এখন নিচের JSTL ট্যাগগুলো ব্যবহার করে তিনটি সংখ্যা প্রদর্শন করা যাবে:

<%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c" %> 
<%@ taglib uri = "https://java.sun.com/jsp/jstl/fmt" prefix = "fmt" %> 
<html> 
     <head> 
          <title>JSTL fmt:setLocale Tag</title> 
     </head> 
     <body> 
        <fmt:bundle basename = "com.tutorialspoint.Example"> 
           <fmt:message key = "count.one"/><br/> 
           <fmt:message key = "count.two"/><br/> 
           <fmt:message key = "count.three"/><br/> 
        </fmt:bundle> 
        <!-- লোকেল পরিবর্তন --> 
        <fmt:setLocale value = "es_ES"/> 
        <fmt:bundle basename = "com.tutorialspoint.Example"> 
           <fmt:message key = "count.one"/><br/> 
           <fmt:message key = "count.two"/><br/> 
           <fmt:message key = "count.three"/><br/> 
        </fmt:bundle> 
</body> 
</html>

উপরোক্ত কোড নিম্নলিখিত ফলাফল তৈরি করবে:

One Two Three Uno Dos Tres

  1. JSP-এ <jsp:useBean> অ্যাকশন ব্যবহার

  2. JSP Expression লিখার নিয়ম

  3. JSP-এ কুকি সেট করার পদ্ধতি

  4. জাভাতে JSplitPane-এ ব্যাকগ্রাউন্ড কালার সেট করা