এখানে একটি সিম্পল Spring MVC অ্যাপ্লিকেশন তৈরি করার ধাপ তুলে ধরা হলো। এই উদাহরণে, আমরা একটি "Hello World" পেজ তৈরি করব, যেখানে Spring MVC কন্ট্রোলার একটি রিকোয়েস্ট গ্রহণ করবে এবং সেটি একটি ভিউ রেন্ডার করবে।
Step 1: Maven Dependencies
Spring MVC অ্যাপ্লিকেশন শুরু করতে প্রথমে Maven ডিপেনডেন্সি যোগ করুন। আমরা Spring Boot ব্যবহার করতে পারি যাতে কনফিগারেশন সহজ হয়।
pom.xml ফাইল:
<dependencies>
<!-- Spring Boot Starter Web (Includes Spring MVC and Tomcat) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Thymeleaf for View Template -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- Spring Boot Starter Test (for testing purposes) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
spring-boot-starter-web: Spring MVC ও Tomcat সহ ওয়েব অ্যাপ্লিকেশন ডেভেলপ করতে প্রয়োজনীয় ডিপেনডেন্সি।spring-boot-starter-thymeleaf: HTML রেন্ডারিং এর জন্য Thymeleaf টেমপ্লেট ইঞ্জিন।spring-boot-starter-test: টেস্টিং এর জন্য ডিপেনডেন্সি (যদি আপনি টেস্ট করতে চান)।
Step 2: Spring Boot Application Class
Spring Boot অ্যাপ্লিকেশন ক্লাসে @SpringBootApplication অ্যানোটেশন ব্যবহার করে অ্যাপ্লিকেশন চালু করুন।
HelloWorldApplication.java:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class HelloWorldApplication {
public static void main(String[] args) {
SpringApplication.run(HelloWorldApplication.class, args);
}
}
@SpringBootApplication: Spring Boot অ্যাপ্লিকেশন চালু করার জন্য প্রধান অ্যানোটেশন। এটি@EnableAutoConfiguration,@ComponentScan, এবং@Configurationঅ্যানোটেশনগুলি একসাথে ব্যবহার করে।
Step 3: Controller Class
Spring MVC কন্ট্রোলার ক্লাস তৈরি করুন যেখানে রিকোয়েস্ট ম্যাপিং করা হবে।
HomeController.java:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.ui.Model;
@Controller
public class HomeController {
@GetMapping("/hello")
public String helloWorld(Model model) {
model.addAttribute("message", "Hello, World!"); // Add attribute to model
return "hello"; // Return view name (hello.html)
}
}
@Controller: এটি একটি Spring MVC কন্ট্রোলার ক্লাস।@GetMapping("/hello"):/helloURL প্যাটার্নে GET রিকোয়েস্ট ম্যানেজ করে।Model model: ডাটা ভিউতে পাঠানোর জন্য ব্যবহৃত হয়। আমরাmodel.addAttribute()এর মাধ্যমে ডাটা ভিউতে পাঠাচ্ছি।return "hello": এটি বলে যে,hello.htmlনামক ভিউ টেমপ্লেট রেন্ডার করা হবে।
Step 4: View (Thymeleaf Template)
Spring MVC থাইমলিফের মাধ্যমে HTML টেমপ্লেট রেন্ডার করে। src/main/resources/templates ফোল্ডারে hello.html তৈরি করুন।
hello.html (Thymeleaf Template):
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Hello World</title>
</head>
<body>
<h1 th:text="${message}"></h1> <!-- Display the message -->
</body>
</html>
${message}: এটি Spring MVC এর মডেল থেকে পাস করা ডাটা হবে (অর্থাৎHello, World!), যা ভিউতে রেন্ডার হবে।
Step 5: Run the Application
- Spring Boot অ্যাপ্লিকেশন চালু করুন:
- Maven ব্যবহার করে অ্যাপ্লিকেশনটি রান করতে,
mvn spring-boot:runকমান্ড ব্যবহার করতে পারেন অথবা IDE (IntelliJ IDEA, Eclipse) থেকেHelloWorldApplication.javaক্লাস চালাতে পারেন।
- Maven ব্যবহার করে অ্যাপ্লিকেশনটি রান করতে,
- ব্রাউজারে অ্যাপ্লিকেশনটি দেখুন:
- ব্রাউজারে
http://localhost:8080/helloএ নেভিগেট করুন। - আপনি একটি পেজ দেখতে পাবেন যেখানে "Hello, World!" বার্তা দেখাবে।
- ব্রাউজারে
Step 6: Static Resources (Optional)
Spring MVC স্ট্যাটিক রিসোর্স যেমন CSS, JavaScript ফাইল এবং ইমেজ ফাইলকে src/main/resources/static ডিরেক্টরিতে রাখবে। উদাহরণস্বরূপ:
src/main/resources/static/css/style.css
src/main/resources/static/js/script.js
এটি Spring MVC দ্বারা সরাসরি অ্যাক্সেস করা যাবে, যেমন http://localhost:8080/css/style.css।
Step 7: Customizing Error Pages (Optional)
Spring Boot অ্যাপ্লিকেশনগুলিতে কাস্টম Error Pages নির্ধারণ করা সম্ভব। যেমন, 404 বা 500 এর জন্য কাস্টম পেজ দেখানো।
error.html:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Error</title>
</head>
<body>
<h1>Something went wrong!</h1>
</body>
</html>
এখন, আপনার অ্যাপ্লিকেশনটি 404 বা অন্য কোনো ত্রুটি পেলে এই কাস্টম পেজটি দেখাবে।
উপসংহার:
এই "Hello World" উদাহরণটি Spring MVC এর মূল ধারণাগুলো যেমন কন্ট্রোলার, ভিউ রেন্ডারিং, মডেল ব্যবহারের সাথে পরিচয় করিয়ে দেয়। Spring Boot এর সাহায্যে Spring MVC অ্যাপ্লিকেশন তৈরি করা অনেক সহজ এবং কম কনফিগারেশন প্রয়োজন। এই উদাহরণের মাধ্যমে আপনি Spring MVC অ্যাপ্লিকেশন তৈরি করতে শিখেছেন এবং এটি আপনার উন্নত ওয়েব অ্যাপ্লিকেশন তৈরির জন্য একটি ভিত্তি হতে পারে।
Read more