setProperty অ্যাকশন একটি Bean-এর প্রপার্টি সেট করে। Beanটি এই অ্যাকশনের আগে ডিফাইন করা থাকতে হবে। setProperty অ্যাকশন ব্যবহারের দুটি βασিক উপায় আছে:
আপনি jsp:setProperty ব্যবহার করতে পারেন jsp:useBean এলিমেন্টের বাইরে, পরে:
<jsp:useBean id = "myName" ... /> ... <jsp:setProperty name = "myName" property = "someProperty" .../>
এই কেসে, jsp:setProperty এক্সিকিউট হবে ছাড়া নতুন বিন ইনস্ট্যানশিয়েট হয়েছে কিনা বা বিদ্যমান বিন পাওয়া গেছে কিনা।
দूसरा কনটেক্স্ট হলো jsp:useBean এলিমেন্টের বডির ভিতরে jsp:setProperty থাকা:
<jsp:useBean id = "myName" ... > ... <jsp:setProperty name = "myName" property = "someProperty" .../> </jsp:useBean>
এখানে, jsp:setProperty শুধু এক্সিকিউট হবে যদি নতুন অবজেক্ট ইনস্ট্যানশিয়েট হয়, বিদ্যমান অবজেক্ট পাওয়া গেলে নয়।
setProperty অ্যাকশনের সাথে যুক্ত অ্যাট্রিবিউটগুলো:
| ক্রমিক নং | অ্যাট্রিবিউট ও বর্ণনা |
|---|---|
| 1 | name বিন ডিজিগনেট করে যার প্রপার্টি সেট হবে। বিনটি পূর্বে ডিফাইন করা থাকতে হবে। |
| 2 | property ইন্ডিকেট করে কোন প্রপার্টি সেট করতে চান। "*" ভ্যালু মানে সব রিকোয়েস্ট প্যারামিটার যাদের নাম বিন প্রপার্টির সাথে মিলে যায়, সেটি আপনার সেটার মেথডে পাস হবে। |
| 3 | value দেওয়া প্রপার্টির জন্য অ্যাসাইন করা ভ্যালু। প্যারামিটারের ভ্যালু null হলে বা প্যারামিটার অস্তিত্ব না থাকলে setProperty অ্যাকশন উপেক্ষা করা হয়। |
| 4 | param param অ্যাট্রিবিউট হলো রিকোয়েস্ট প্যারামিটারের নাম যার ভ্যালু প্রপার্টি রিসিভ করবে। আপনি value এবং param একসাথে ব্যবহার করতে পারবেন না, কিন্তু দুটোই না ব্যবহার করা permissible। |
উদাহরণ
টেস্ট বিন ডিফাইন করা যাক:
/* File: TestBean.java */
package action;
public class TestBean {
private String message = "No message specified";
public String getMessage() { return(message); }
public void setMessage(String message) { this.message = message; }
}
কম্পাইল করে TestBean.class ফাইল তৈরি করুন এবং C:\apache-tomcat-7.0.2\webapps\WEB-INF\classes\action ফোল্ডারে কপি করুন, CLASSPATH সেট করুন।
main.jsp ফাইলে নিচের কোড ব্যবহার করুন:
<html> <head> <title>Using JavaBeans in JSP</title> </head> <body> <center> <h2>Using JavaBeans in JSP</h2> <jsp:useBean id = "test" class = "action.TestBean" /> <jsp:setProperty name = "test" property = "message" value = "Hello JSP..." /> <p>Got message....</p> <jsp:getProperty name = "test" property = "message" /> </center> </body> </html>
main.jsp অ্যাক্সেস করলে ফলাফল:
Using JavaBeans in JSP
Got message.... Hello JSP...