স্প্রিং জেডিবিসি (Spring JDBC) ডেটাবেসের সাথে সহজ এবং কার্যকরভাবে কাজ করার জন্য একটি শক্তিশালী এবং উচ্চ পর্যায়ের অ্যাবস্ট্রাকশন প্রদান করে। এর একটি গুরুত্বপূর্ণ অংশ হল DataSource
, যা ডেটাবেসের সাথে সংযোগ স্থাপন এবং পরিচালনা করার জন্য ব্যবহৃত হয়।
DataSource
একটি ইন্টারফেস যা ডেটাবেস সংযোগ ব্যবস্থাপনা করে। এটি জাভাতে ডেটাবেস সংযোগ পুল ব্যবস্থাপনার জন্য ব্যবহৃত হয় এবং DriverManagerDataSource
, BasicDataSource
বা HikariCP
ইত্যাদি বিভিন্ন ডেটাবেস কানেকশন পুলের অ্যাপ্লিকেশন কনফিগারেশন ও ম্যানেজমেন্টের জন্য ব্যবহার করা হয়।
DataSource
ব্যবহার করা হয়, যা ডেটাবেস কানেকশন তৈরি ও সংরক্ষণ করতে সহায়তা করে। DataSource
সাধারণত একটি কনফিগারেশন ফাইল থেকে কনফিগার হয়।import org.springframework.jdbc.datasource.DriverManagerDataSource;
import javax.sql.DataSource;
public class DataSourceConfig {
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/mydb");
dataSource.setUsername("root");
dataSource.setPassword("password");
return dataSource;
}
}
এখানে DriverManagerDataSource
ব্যবহার করা হয়েছে, যা একটি সাধারণ DataSource
ইমপ্লিমেন্টেশন।
স্প্রিং জেডিবিসি একটি উচ্চ পর্যায়ের ইন্টারফেস প্রদান করে, যা ডেটাবেসের সাথে কাজ করার জন্য কমপ্লেক্স কোড লিখতে হয় না। এটি ডেটাবেস অ্যাক্সেসের জন্য JdbcTemplate
নামক একটি ক্লাস ব্যবহার করে, যা ডেটাবেস অপারেশনগুলির জন্য কোড সহজ করে তোলে এবং একাধিক সাধারণ কাজ যেমন কুয়েরি এক্সিকিউশন, ইনসার্ট, আপডেট এবং ডিলিট অপারেশন করতে সহায়তা করে।
JdbcTemplate
স্প্রিং জেডিবিসির প্রধান ক্লাস যা ডেটাবেস অপারেশন যেমন সিলেক্ট, ইনসার্ট, আপডেট এবং ডিলিট পরিচালনা করে। এটি ডেটাবেস এক্সেপশন হ্যান্ডলিংকেও সহজ করে দেয়।JdbcTemplate
এর একটি সম্প্রসারণ, যা নামযুক্ত প্যারামিটার (named parameters) ব্যবহারের সুবিধা দেয়।import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource;
public class EmployeeDao {
private JdbcTemplate jdbcTemplate;
// DataSource Inject করা হচ্ছে
public void setDataSource(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
}
// ডেটাবেসে ইনসার্ট অপারেশন
public void insertEmployee(Employee employee) {
String sql = "INSERT INTO employee (id, name, age) VALUES (?, ?, ?)";
jdbcTemplate.update(sql, employee.getId(), employee.getName(), employee.getAge());
}
// ডেটাবেস থেকে ডেটা পড়ার উদাহরণ
public Employee getEmployeeById(int id) {
String sql = "SELECT * FROM employee WHERE id = ?";
return jdbcTemplate.queryForObject(sql, new Object[] {id}, new EmployeeRowMapper());
}
}
এখানে, JdbcTemplate
ব্যবহৃত হয়েছে ডেটাবেসের সাথে সম্পর্কিত অপারেশনগুলির জন্য এবং DataSource
এর মাধ্যমে ডেটাবেস কানেকশন পরিচালিত হচ্ছে।
DataSource
এবং Spring JDBC
একে অপরের সাথে সম্পর্কিত। DataSource
ডেটাবেস সংযোগ পরিচালনা করে এবং JdbcTemplate
এর মাধ্যমে সেই সংযোগ ব্যবহার করে ডেটাবেসের সাথে কার্যকরভাবে যোগাযোগ করা হয়। DataSource
এর মাধ্যমে ডেটাবেস কানেকশন পুল করা হয়, যা সংযোগের ব্যবস্থাপনা সহজ করে দেয় এবং স্প্রিং JDBC এর কর্মক্ষমতা উন্নত করে।
JdbcTemplate
এবং অন্যান্য ক্লাসের মাধ্যমে ডেটাবেসের সাথে সংযোগ স্থাপন, কুয়েরি এক্সিকিউশন এবং এক্সেপশন হ্যান্ডলিং সহজ করা হয়।DataSource স্প্রিং জেডিবিসি (Spring JDBC) এর একটি গুরুত্বপূর্ণ উপাদান। এটি ডেটাবেসের সাথে সংযোগ স্থাপন করার জন্য প্রয়োজনীয় কনফিগারেশন প্রদান করে এবং একটি ডেটাবেস কানেকশন পুল (Connection Pool) সরবরাহ করে।
DataSource
একটি ইন্টারফেস যা ডেটাবেসের সাথে সংযোগ (connection) প্রতিষ্ঠা করার জন্য ব্যবহৃত হয়। এটি একটি কাস্টম ডেটাবেস কনফিগারেশন সরবরাহ করে, যেমন ডেটাবেস URL, ব্যবহারকারীর নাম, পাসওয়ার্ড, ড্রাইভার ক্লাস ইত্যাদি।
এটি JDBC কনফিগারেশন এবং ডেটাবেসের সাথে সংযোগের জন্য অন্যান্য কার্যক্রমের জন্য একটি ইউনিফাইড API সরবরাহ করে।
স্প্রিং ফ্রেমওয়ার্কে, DataSource
ব্যবহারের মূল উদ্দেশ্য হলো ডেটাবেসের সাথে কাজ করার সময় সংযোগের পুনঃব্যবহার এবং পরিচালনা সহজ করা।
DataSource
সংযোগ পুল ব্যবহার করে। অর্থাৎ, একবার ডেটাবেসের সাথে একটি সংযোগ তৈরি হলে, সেটি পরবর্তী প্রয়োজনে পুনরায় ব্যবহার করা যায়। এতে ডেটাবেসে অতিরিক্ত সংযোগ খোলার প্রয়োজন পড়েনা এবং এটি সিস্টেমের পারফরমেন্স বাড়ায়।DataSource
ডেটাবেসের কনফিগারেশন যেমন URL, ড্রাইভার, ব্যবহারকারীর নাম, পাসওয়ার্ড ইত্যাদি এক জায়গায় সংরক্ষণ করতে সাহায্য করে। এর ফলে কনফিগারেশন মানেজমেন্ট সহজ হয়ে যায়।DataSource
ব্যবহার করে ডেটাবেসের সাথে সংযোগ স্থাপনের জন্য অনেক বেশি কোড লিখতে হয় না। স্প্রিং এই কনফিগারেশন এবং সংযোগ ব্যবস্থাপনা অনেক সহজ করে দিয়েছে।এখানে একটি সাধারণ DataSource
কনফিগারেশনের উদাহরণ দেওয়া হলো:
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import javax.sql.DataSource;
public class DataSourceConfig {
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/mydatabase");
dataSource.setUsername("root");
dataSource.setPassword("password");
return dataSource;
}
}
এখানে, DriverManagerDataSource
একটি সাধারণ DataSource
ইমপ্লিমেন্টেশন যা ডেটাবেসের URL, ড্রাইভার ক্লাস, ইউজারনেম এবং পাসওয়ার্ড সেট করে।
স্প্রিংে DataSource
কনফিগারেশন সাধারণত XML বা Java কনফিগারেশনের মাধ্যমে করা হয়। এটি JdbcTemplate
বা অন্যান্য জেডিবিসি ক্লাসগুলির সাথে সংযুক্ত হয়ে ডেটাবেস অ্যাক্সেস পরিচালনা করে।
XML কনফিগারেশন উদাহরণ:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mydatabase" />
<property name="username" value="root" />
<property name="password" value="password" />
</bean>
এখানে, dataSource
নামক একটি Bean তৈরি করা হয়েছে, যা JdbcTemplate
ক্লাসের জন্য ডেটাবেস কানেকশন প্রদান করবে।
Java কনফিগারেশন উদাহরণ:
@Configuration
public class AppConfig {
@Bean
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/mydatabase");
dataSource.setUsername("root");
dataSource.setPassword("password");
return dataSource;
}
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(dataSource());
}
}
এই কনফিগারেশনে, dataSource
একটি Bean
হিসেবে তৈরি করা হয়েছে এবং JdbcTemplate
এর সাথে সংযুক্ত করা হয়েছে।
DataSource
ব্যবহার করে ডেটাবেসের সাথে কার্যকরী এবং দক্ষ সংযোগ স্থাপন করা যায়।Spring JDBC-এ DataSource কনফিগারেশন খুবই গুরুত্বপূর্ণ কারণ এটি ডেটাবেসের সাথে সংযোগ স্থাপন করতে ব্যবহৃত হয়। Spring Framework একটি DataSource কনফিগারেশনকে সহজ এবং কার্যকরভাবে পরিচালনা করতে সাহায্য করে। DataSource কনফিগারেশন, ডেটাবেসের সাথে সংযোগ স্থাপন এবং ম্যানেজমেন্টকে সহজ করে তোলে।
Spring JDBC ব্যবহারে DataSource কনফিগারেশন সাধারণত XML কনফিগারেশন ফাইল বা Java কনফিগারেশন ক্লাসে করা যায়। এখানে আমি দুটি কনফিগারেশন পদ্ধতি দেখাবো:
XML কনফিগারেশন পদ্ধতিতে Spring Bean কনফিগারেশন ফাইল ব্যবহার করা হয়, যেখানে DataSource এবং JdbcTemplate কনফিগার করা হয়।
applicationContext.xml (XML কনফিগারেশন ফাইল)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- DataSource Bean Configuration -->
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mydb"/>
<property name="username" value="root"/>
<property name="password" value="password"/>
</bean>
<!-- JdbcTemplate Bean Configuration -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="dataSource"/>
</bean>
</beans>
এই কনফিগারেশনে:
BasicDataSource
: এটি Apache Commons DBCP (Database Connection Pool) থেকে একটি DataSource। এটি কনফিগার করা হয় driverClassName
, url
, username
, এবং password
প্রপার্টির মাধ্যমে।JdbcTemplate
: JdbcTemplate
একটি Spring Bean হিসাবে কনফিগার করা হয়েছে এবং এটি dataSource
এর রেফারেন্স পায়।Spring 3 থেকে @Configuration
এবং @Bean
অ্যানোটেশন ব্যবহার করে Java কনফিগারেশন পদ্ধতিতে Spring Beans কনফিগার করা হয়।
AppConfig.java (Java কনফিগারেশন ক্লাস)
import org.apache.commons.dbcp2.BasicDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource;
@Configuration
public class AppConfig {
// DataSource Bean Configuration
@Bean
public DataSource dataSource() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/mydb");
dataSource.setUsername("root");
dataSource.setPassword("password");
return dataSource;
}
// JdbcTemplate Bean Configuration
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(dataSource());
}
}
এই কনফিগারেশনে:
@Bean
: এই অ্যানোটেশন ব্যবহার করে dataSource
এবং jdbcTemplate
Bean কনফিগার করা হয়।dataSource()
: এখানে BasicDataSource
এর কনফিগারেশন করা হয়, যেমন driverClassName
, url
, username
, এবং password
।jdbcTemplate()
: JdbcTemplate
Bean কে dataSource
Bean এর সাথে ইনিশিয়ালাইজ করা হয়।insert
, update
, select
ইত্যাদি পরিচালনা করতে ব্যবহৃত হয়।Spring JDBC কনফিগারেশন ব্যবহারে আরও উন্নত কনফিগারেশনগুলি থাকতে পারে, যেমন:
Spring JDBC-এ DataSource কনফিগারেশনের মাধ্যমে আপনি ডেটাবেস অপারেশনগুলো খুব সহজে ও দক্ষতার সাথে পরিচালনা করতে পারেন।
Spring JDBC-তে HikariCP এবং Tomcat Connection Pool দুইটি প্রধান Connection Pooling লাইব্রেরি যা ডেটাবেস কানেকশনের কার্যকারিতা এবং পারফরম্যান্স বৃদ্ধি করার জন্য ব্যবহৃত হয়। Spring JDBC-তে এই দুটি পুলের মধ্যে একটি ব্যবহার করার জন্য আপনি DataSource কনফিগার করতে পারবেন। নিচে HikariCP এবং Tomcat Connection Pool ব্যবহার করে Spring JDBC ইন্টিগ্রেট করার ধাপ আলোচনা করা হলো।
HikariCP একটি হালকা, দ্রুত এবং উন্নত connection pool যা অধিকাংশ Java অ্যাপ্লিকেশন এবং Spring Boot প্রোজেক্টে ব্যবহৃত হয়। Spring JDBC-তে HikariCP ইন্টিগ্রেট করার জন্য প্রথমে HikariCP এর জন্য ডিপেনডেন্সি যুক্ত করতে হবে এবং তারপর Spring DataSource হিসেবে এটি কনফিগার করতে হবে।
pom.xml
ফাইলে HikariCP ডিপেনডেন্সি যোগ করতে হবে।
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>5.0.1</version> <!-- সর্বশেষ সংস্করণ নিশ্চিত করতে Maven Repository থেকে চেক করুন -->
</dependency>
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfig {
@Bean
public DataSource dataSource() {
HikariConfig hikariConfig = new HikariConfig();
hikariConfig.setJdbcUrl("jdbc:mysql://localhost:3306/your_database");
hikariConfig.setUsername("your_username");
hikariConfig.setPassword("your_password");
hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
hikariConfig.setMaximumPoolSize(10); // পুলের সর্বোচ্চ কানেকশন সংখ্যা
hikariConfig.setMinimumIdle(5); // ন্যূনতম আইডল কানেকশন
return new HikariDataSource(hikariConfig);
}
@Bean
public JdbcTemplate jdbcTemplate(DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
এখানে আমরা HikariConfig
ক্লাসটি ব্যবহার করে ডেটাবেস সংযোগের জন্য HikariCP কনফিগার করেছি এবং JdbcTemplate
তৈরি করার জন্য ডেটাসোর্স পাস করেছি।
যদি Spring Boot অ্যাপ্লিকেশন ব্যবহার করেন, তাহলে আপনাকে application.properties
বা application.yml
ফাইলে কনফিগারেশন যুক্ত করতে হবে:
spring.datasource.hikari.jdbc-url=jdbc:mysql://localhost:3306/your_database
spring.datasource.hikari.username=your_username
spring.datasource.hikari.password=your_password
spring.datasource.hikari.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.minimum-idle=5
এটি Spring Boot অটোমেটিক্যালি HikariCP ব্যবহার করবে।
Tomcat Connection Pool হচ্ছে একটি জনপ্রিয় এবং উচ্চ পারফরম্যান্স ডেটাবেস কানেকশন পুল যা Apache Tomcat দ্বারা সরবরাহিত হয়। Spring JDBC-তে এটি ব্যবহার করতে পারেন এবং এটি Java EE অ্যাপ্লিকেশন সার্ভারে ব্যবহৃত হয়।
pom.xml
ফাইলে Tomcat JDBC Connection Pool এর জন্য ডিপেনডেন্সি যোগ করুন:
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>9.0.53</version> <!-- সর্বশেষ সংস্করণ নিশ্চিত করতে Maven Repository থেকে চেক করুন -->
</dependency>
import org.apache.tomcat.jdbc.pool.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class DataSourceConfig {
@Bean
public DataSource dataSource() {
DataSource dataSource = new DataSource();
dataSource.setUrl("jdbc:mysql://localhost:3306/your_database");
dataSource.setUsername("your_username");
dataSource.setPassword("your_password");
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setMaxActive(10); // পুলের সর্বোচ্চ কানেকশন সংখ্যা
dataSource.setMinIdle(5); // ন্যূনতম আইডল কানেকশন
return dataSource;
}
@Bean
public JdbcTemplate jdbcTemplate(DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
এখানে, DataSource
ক্লাসটি ব্যবহার করা হয়েছে যা Tomcat JDBC Connection Pool
কনফিগার করে এবং JdbcTemplate
তৈরি করা হয়েছে।
Spring Boot অ্যাপ্লিকেশনের জন্য application.properties
বা application.yml
ফাইলে Tomcat Connection Pool কনফিগারেশন যুক্ত করতে হবে।
spring.datasource.url=jdbc:mysql://localhost:3306/your_database
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=org.apache.tomcat.jdbc.pool.DataSource
spring.datasource.tomcat.max-active=10
spring.datasource.tomcat.min-idle=5
Spring Boot স্বয়ংক্রিয়ভাবে Tomcat Connection Pool ব্যবহার করবে।
এটি আপনার ব্যবহারের প্রয়োজনীয়তার উপর নির্ভর করবে যে কোন পুল ব্যবহার করবেন, তবে HikariCP সাধারণত আধুনিক অ্যাপ্লিকেশনগুলির জন্য বেশি জনপ্রিয়।
Spring JDBC-তে DataSource হল ডেটাবেস সংযোগ ব্যবস্থাপনার একটি প্রধান উপাদান। এটি ডেটাবেস সংযোগের জন্য প্রয়োজনীয় তথ্য (যেমন URL, ইউজারনেম, পাসওয়ার্ড) সরবরাহ করে। Spring Framework-এ আমরা সাধারণত DriverManagerDataSource বা HikariDataSource ব্যবহার করি, তবে এটি অন্যান্য DataSource ইমপ্লিমেন্টেশনকেও সমর্থন করে।
নীচে উদাহরণসহ Spring JDBC-তে DataSource কনফিগারেশনের এবং ব্যবহারের ধাপগুলো দেখানো হয়েছে:
প্রথমে spring-jdbc
এবং ড্রাইভারের নির্ভরশীলতা যোগ করুন।
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.11</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>
DriverManagerDataSource ব্যবহার করে একটি DataSource তৈরি করা যায়।
import org.springframework.jdbc.datasource.DriverManagerDataSource;
public class DataSourceConfig {
public DriverManagerDataSource getDataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/your_database");
dataSource.setUsername("your_username");
dataSource.setPassword("your_password");
return dataSource;
}
}
JdbcTemplate ব্যবহার করে ডেটাবেস অপারেশন করা হয়।
import org.springframework.jdbc.core.JdbcTemplate;
public class JdbcTemplateExample {
public static void main(String[] args) {
// DataSource Config
DataSourceConfig config = new DataSourceConfig();
DriverManagerDataSource dataSource = config.getDataSource();
// JdbcTemplate
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
// Table Creation Example
String createTableQuery = "CREATE TABLE IF NOT EXISTS users (" +
"id INT AUTO_INCREMENT PRIMARY KEY, " +
"name VARCHAR(50), " +
"email VARCHAR(50))";
jdbcTemplate.execute(createTableQuery);
// Insert Query
String insertQuery = "INSERT INTO users (name, email) VALUES (?, ?)";
jdbcTemplate.update(insertQuery, "John Doe", "john@example.com");
// Select Query
String selectQuery = "SELECT name FROM users WHERE email = ?";
String name = jdbcTemplate.queryForObject(selectQuery, new Object[]{"john@example.com"}, String.class);
System.out.println("User Name: " + name);
}
}
RowMapper ব্যবহার করে ResultSet থেকে জটিল অবজেক্ট তৈরি করা সহজ।
import org.springframework.jdbc.core.RowMapper;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserRowMapper implements RowMapper<User> {
@Override
public User mapRow(ResultSet rs, int rowNum) throws SQLException {
User user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setEmail(rs.getString("email"));
return user;
}
}
import java.util.List;
public class FetchUsersExample {
public static void main(String[] args) {
// DataSource Config
DataSourceConfig config = new DataSourceConfig();
DriverManagerDataSource dataSource = config.getDataSource();
// JdbcTemplate
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
// Fetching All Users
String selectAllQuery = "SELECT * FROM users";
List<User> users = jdbcTemplate.query(selectAllQuery, new UserRowMapper());
for (User user : users) {
System.out.println("User ID: " + user.getId());
System.out.println("User Name: " + user.getName());
System.out.println("User Email: " + user.getEmail());
}
}
}
HikariCP একটি উচ্চ-কার্যক্ষমতার DataSource ইমপ্লিমেন্টেশন।
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
import javax.sql.DataSource;
public class HikariDataSourceConfig {
public DataSource getHikariDataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/your_database");
config.setUsername("your_username");
config.setPassword("your_password");
config.setDriverClassName("com.mysql.cj.jdbc.Driver");
config.setMaximumPoolSize(10); // Optional: Connection pool size
return new HikariDataSource(config);
}
}
Hikari DataSource ব্যবহার করে JdbcTemplate তৈরি করার পদ্ধতি একই।
উপরের উদাহরণগুলো ব্যবহার করে আপনি ডেটাবেসে ডেটা যোগ করতে, পড়তে এবং পরিচালনা করতে পারবেন।
Read more