Struts 2 হলো একটি ওপেন সোর্স জাভা ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক, যা মূলত Model-View-Controller (MVC) আর্কিটেকচার অনুসরণ করে ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এটি Apache Software Foundation দ্বারা তৈরি এবং এটি Apache Struts 1 এর পরবর্তী সংস্করণ হিসেবে তৈরি হয়েছে। Struts 2 হলো WebWork এবং Struts ফ্রেমওয়ার্কের সমন্বয়ে তৈরি, যা উন্নত বিজনেস লজিক এবং ইন্টারেক্টিভ ইউজার ইন্টারফেস তৈরি করতে সহায়ক।
Struts 2 হলো একটি জাভা-ভিত্তিক ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক, যা Model-View-Controller (MVC) আর্কিটেকচার অনুসরণ করে। এটি মূলত Apache Struts এর উন্নত সংস্করণ এবং WebWork ফ্রেমওয়ার্কের উপর ভিত্তি করে তৈরি। Struts 2 ডেভেলপারদের জন্য ওয়েব অ্যাপ্লিকেশন তৈরি করা সহজ করে তোলে, কারণ এটি একটি শক্তিশালী এবং পুনরায় ব্যবহারযোগ্য কোড স্ট্রাকচার সরবরাহ করে।
Struts 2 মূলত জাভা সার্ভার সাইড ডেভেলপমেন্ট এর জন্য ব্যবহৃত হয় এবং বিজনেস লজিক, প্রেজেন্টেশন লেয়ার, এবং ক্লায়েন্ট অনুরোধ ম্যানেজমেন্টকে আলাদা করে দেয়, যা বড় এবং জটিল ওয়েব অ্যাপ্লিকেশন তৈরি করতে সহায়ক।
ধাপ ১: Struts 2 ইনস্টল করা
Struts 2 ব্যবহার করার জন্য আপনাকে প্রথমে Maven বা Gradle এর মাধ্যমে Struts 2 এর ডিপেন্ডেন্সি যোগ করতে হবে। Maven প্রজেক্টে Struts 2 এর ডিপেন্ডেন্সি যোগ করার জন্য নিচের কোডটি pom.xml এ যোগ করুন:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.5.22</version>
</dependency>
ধাপ ২: Struts 2 এর ফোল্ডার স্ট্রাকচার
Struts 2 প্রজেক্টের সাধারণ ফোল্ডার স্ট্রাকচার নিচের মতো হতে পারে:
src
├── main
│ ├── java
│ │ └── com.example.action
│ │ └── HelloWorldAction.java
│ ├── resources
│ │ └── struts.xml
│ └── webapp
│ ├── WEB-INF
│ │ └── web.xml
│ └── index.jsp
ধাপ ৩: struts.xml ফাইল কনফিগার করা
Struts 2 অ্যাপ্লিকেশনের কনফিগারেশন ফাইল হলো struts.xml। এখানে অ্যাকশন ম্যাপিং এবং ভিউ সংজ্ঞায়িত করা হয়। উদাহরণস্বরূপ:
<struts>
<package name="default" extends="struts-default">
<action name="helloWorld" class="com.example.action.HelloWorldAction">
<result>/hello.jsp</result>
</action>
</package>
</struts>
এই ফাইলটি বলে দিচ্ছে, যখন helloWorld অ্যাকশন কল করা হবে, তখন এটি HelloWorldAction ক্লাস চালাবে এবং hello.jsp পেজে পাঠাবে।
ধাপ ৪: একটি Action ক্লাস তৈরি করা
Struts 2 এ প্রতিটি ক্লায়েন্ট অনুরোধ একটি Action দ্বারা পরিচালিত হয়। একটি সাধারণ Action ক্লাস তৈরি করার জন্য:
package com.example.action;
public class HelloWorldAction {
private String message;
public String execute() {
message = "Hello, Struts 2!";
return "success";
}
public String getMessage() {
return message;
}
}
উপরের উদাহরণে, execute() মেথডটি অ্যাকশন চালাবে এবং success রিটার্ন করবে। Struts 2 অ্যাকশন সফল হলে hello.jsp পেজে পাঠাবে, কারণ আমরা তা struts.xml ফাইলে সংজ্ঞায়িত করেছি।
ধাপ ৫: JSP পেজ তৈরি করা
Struts 2 এর মাধ্যমে ফলাফল প্রদর্শনের জন্য JSP পেজ ব্যবহার করা যায়। উদাহরণস্বরূপ, hello.jsp:
<%@ taglib uri="/struts-tags" prefix="s" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h1><s:property value="message" /></h1>
</body>
</html>
এখানে আমরা Struts tag library ব্যবহার করেছি, যা অ্যাকশন ক্লাসের message প্রোপার্টি দেখাবে।
ধাপ ৬: web.xml ফাইল কনফিগার করা
Struts 2 অ্যাপ্লিকেশনের ডিসপ্যাচার কনফিগার করার জন্য web.xml ফাইল ব্যবহার করা হয়। উদাহরণস্বরূপ:
<web-app>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
Struts 2 হলো একটি শক্তিশালী এবং জনপ্রিয় Java-ভিত্তিক ওয়েব ফ্রেমওয়ার্ক, যা ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এটি MVC আর্কিটেকচারের উপর ভিত্তি করে তৈরি, যা অ্যাপ্লিকেশনের মডেল, ভিউ, এবং কন্ট্রোলার আলাদা করে পরিচালনা করে। Struts 2 এর Action ভিত্তিক ফ্রেমওয়ার্ক, Interceptors, এবং Tag Libraries এর মাধ্যমে ডেভেলপাররা সহজেই বড় এবং জটিল ওয়েব অ্যাপ্লিকেশন তৈরি করতে পারে।
Struts 2 হলো একটি ওপেন সোর্স জাভা ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক, যা মূলত Model-View-Controller (MVC) আর্কিটেকচার অনুসরণ করে ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এটি Apache Software Foundation দ্বারা তৈরি এবং এটি Apache Struts 1 এর পরবর্তী সংস্করণ হিসেবে তৈরি হয়েছে। Struts 2 হলো WebWork এবং Struts ফ্রেমওয়ার্কের সমন্বয়ে তৈরি, যা উন্নত বিজনেস লজিক এবং ইন্টারেক্টিভ ইউজার ইন্টারফেস তৈরি করতে সহায়ক।
Struts 2 হলো একটি জাভা-ভিত্তিক ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক, যা Model-View-Controller (MVC) আর্কিটেকচার অনুসরণ করে। এটি মূলত Apache Struts এর উন্নত সংস্করণ এবং WebWork ফ্রেমওয়ার্কের উপর ভিত্তি করে তৈরি। Struts 2 ডেভেলপারদের জন্য ওয়েব অ্যাপ্লিকেশন তৈরি করা সহজ করে তোলে, কারণ এটি একটি শক্তিশালী এবং পুনরায় ব্যবহারযোগ্য কোড স্ট্রাকচার সরবরাহ করে।
Struts 2 মূলত জাভা সার্ভার সাইড ডেভেলপমেন্ট এর জন্য ব্যবহৃত হয় এবং বিজনেস লজিক, প্রেজেন্টেশন লেয়ার, এবং ক্লায়েন্ট অনুরোধ ম্যানেজমেন্টকে আলাদা করে দেয়, যা বড় এবং জটিল ওয়েব অ্যাপ্লিকেশন তৈরি করতে সহায়ক।
ধাপ ১: Struts 2 ইনস্টল করা
Struts 2 ব্যবহার করার জন্য আপনাকে প্রথমে Maven বা Gradle এর মাধ্যমে Struts 2 এর ডিপেন্ডেন্সি যোগ করতে হবে। Maven প্রজেক্টে Struts 2 এর ডিপেন্ডেন্সি যোগ করার জন্য নিচের কোডটি pom.xml এ যোগ করুন:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.5.22</version>
</dependency>
ধাপ ২: Struts 2 এর ফোল্ডার স্ট্রাকচার
Struts 2 প্রজেক্টের সাধারণ ফোল্ডার স্ট্রাকচার নিচের মতো হতে পারে:
src
├── main
│ ├── java
│ │ └── com.example.action
│ │ └── HelloWorldAction.java
│ ├── resources
│ │ └── struts.xml
│ └── webapp
│ ├── WEB-INF
│ │ └── web.xml
│ └── index.jsp
ধাপ ৩: struts.xml ফাইল কনফিগার করা
Struts 2 অ্যাপ্লিকেশনের কনফিগারেশন ফাইল হলো struts.xml। এখানে অ্যাকশন ম্যাপিং এবং ভিউ সংজ্ঞায়িত করা হয়। উদাহরণস্বরূপ:
<struts>
<package name="default" extends="struts-default">
<action name="helloWorld" class="com.example.action.HelloWorldAction">
<result>/hello.jsp</result>
</action>
</package>
</struts>
এই ফাইলটি বলে দিচ্ছে, যখন helloWorld অ্যাকশন কল করা হবে, তখন এটি HelloWorldAction ক্লাস চালাবে এবং hello.jsp পেজে পাঠাবে।
ধাপ ৪: একটি Action ক্লাস তৈরি করা
Struts 2 এ প্রতিটি ক্লায়েন্ট অনুরোধ একটি Action দ্বারা পরিচালিত হয়। একটি সাধারণ Action ক্লাস তৈরি করার জন্য:
package com.example.action;
public class HelloWorldAction {
private String message;
public String execute() {
message = "Hello, Struts 2!";
return "success";
}
public String getMessage() {
return message;
}
}
উপরের উদাহরণে, execute() মেথডটি অ্যাকশন চালাবে এবং success রিটার্ন করবে। Struts 2 অ্যাকশন সফল হলে hello.jsp পেজে পাঠাবে, কারণ আমরা তা struts.xml ফাইলে সংজ্ঞায়িত করেছি।
ধাপ ৫: JSP পেজ তৈরি করা
Struts 2 এর মাধ্যমে ফলাফল প্রদর্শনের জন্য JSP পেজ ব্যবহার করা যায়। উদাহরণস্বরূপ, hello.jsp:
<%@ taglib uri="/struts-tags" prefix="s" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h1><s:property value="message" /></h1>
</body>
</html>
এখানে আমরা Struts tag library ব্যবহার করেছি, যা অ্যাকশন ক্লাসের message প্রোপার্টি দেখাবে।
ধাপ ৬: web.xml ফাইল কনফিগার করা
Struts 2 অ্যাপ্লিকেশনের ডিসপ্যাচার কনফিগার করার জন্য web.xml ফাইল ব্যবহার করা হয়। উদাহরণস্বরূপ:
<web-app>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
Struts 2 হলো একটি শক্তিশালী এবং জনপ্রিয় Java-ভিত্তিক ওয়েব ফ্রেমওয়ার্ক, যা ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এটি MVC আর্কিটেকচারের উপর ভিত্তি করে তৈরি, যা অ্যাপ্লিকেশনের মডেল, ভিউ, এবং কন্ট্রোলার আলাদা করে পরিচালনা করে। Struts 2 এর Action ভিত্তিক ফ্রেমওয়ার্ক, Interceptors, এবং Tag Libraries এর মাধ্যমে ডেভেলপাররা সহজেই বড় এবং জটিল ওয়েব অ্যাপ্লিকেশন তৈরি করতে পারে।
আপনি আমাকে যেকোনো প্রশ্ন করতে পারেন, যেমনঃ
Are you sure to start over?