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

Spring Boot-এ application.properties-এ MySQL DataSource কনফিগার করা

Spring Boot-এ MySQL DataSource কনফিগার করা সবচেয়ে সহজ পদ্ধতি হলো application.properties ফাইলে প্রপার্টিগুলো ডিফাইন করা। Spring Boot অটোমেটিক্যালি ডেটাসোর্স বিন করবে।

application.properties কনফিগারেশন

spring.datasource.username=yourUserName
spring.datasource.password=yourPassword
spring.datasource.url=jdbc:mysql://localhost:3306/yourDatabase
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

নোট: MySQL 8+ এর জন্য ড্রাইভার ক্লাস com.mysql.cj.jdbc.Driver (পুরানো: com.mysql.jdbc.Driver)।

প্রজেক্ট স্ট্রাকচার

স্ট্যান্ডার্ড Maven/Gradle স্ট্রাকচার: src/main/java, src/main/resources/application.properties

কন্ট্রোলার ক্লাস (JPA EntityManager ব্যবহার)

@RestController
@RequestMapping("/users")
public class DisplayController {
    @Autowired
    EntityManager entityManager;

    @GetMapping("/getdata")
    public String getAll() {
        Query query = entityManager.createNativeQuery("SELECT first_name FROM demo25");
        List allData = query.getResultList();
        return allData.toString();
    }
}

মেইন ক্লাস

@SpringBootApplication
public class JavaMysqlDemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(JavaMysqlDemoApplication.class, args);
    }
}

টেবিল ও ডেটা (MySQL)

mysql> CREATE TABLE demo25 (first_name VARCHAR(20));
mysql> INSERT INTO demo25 VALUES ('David'), ('Adam'), ('Chris');
mysql> SELECT * FROM demo25;
+------------+
| first_name |
+------------+
| David      |
| Adam       |
| Chris      |
+------------+

টেস্ট URL

https://localhost:8080/users/getdata

আউটপুট: [David, Adam, Chris]

সাধারণ সমস্যা: "Failed to configure a DataSource" এরর হলে প্রপার্টি নাম, ড্রাইভার ক্লাস, এবং ডাটাবেজ রানিং স্টেট চেক করুন।

  1. MySQL-এ GROUP_CONCAT() ব্যবহার করে ফিল্ড কনক্যাটেনেট করা

  2. MySQL-এ SOUNDEX() ফাংশন ব্যবহার করে ধ্বনিসাম্য খুঁজে বের করা

  3. Spring Boot-এ application.properties দিয়ে লোকাল MySQL কানেক্ট করা

  4. উবুন্টুতে MySQL ইনস্টল ও কনফিগার করার পদ্ধতি