*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle
Java ile MySQL Veritabanındaki Verileri Okuma ve Yazma
Java programlama dilinde veri tabanlarına erişmek oldukça yaygın bir ihtiyaçtır. Bunun için kullanılabilecek birçok veri tabanı yönetim sistemi bulunmaktadır. Bu yazıda, Java programlama dilinde MySQL veritabanına nasıl bağlanabileceğimizi ve verileri nasıl okuyup yazabileceğimizi detaylı bir şekilde ele alacağız.
MySQL Veritabanına Bağlanma
Java programlama dilinde MySQL veritabanına erişmek için kullanılabilecek iki yöntem vardır:
- JDBC API
- ORM Framework (Örneğin Hibernate)
JDBC API, temel olarak Java programlama dilindeki veri tabanlarına genel bir erişim yöntemi sunar. Bu API, JDBC sürücüsünün yüklenmesi ve veritabanına bağlantının kurulması gibi adımlar gerektirir.
Bağlantı kurmak için öncelikle aşağıdaki adımların gerçekleştirilmesi gerekir:
1. JDBC sürücüsünün yüklenmesi
2. Veritabanına bağlanmak için gerekli bilgilerin tanımlanması
3. Connection sınıfı kullanılarak veritabanına bağlantının sağlanması
JDBC sürücüsünü yüklemek için veritabanı yönetim sistemi tarafından sunulan sürücü dosyasını projede kullanılabilir halde yüklememiz gerekmektedir. Bu dosyayı internette aratarak bulabiliriz. Örneğin, MySQL JDBC Sürücüsü'nü indirmek için aşağıdaki bağlantıyı kullanabilirsiniz:
https://dev.mysql.com/downloads/connector/j/
Sürücü dosyasını indirdikten sonra, projemize ekleyebiliriz. Bu işlem, dosyayı projenin klasör yapısına yerleştirerek gerçekleştirilebilir.
Veritabanına bağlantı için gerekli bilgiler genellikle bir konfigürasyon dosyasında yer alır. Bu bilgiler şunları içerir:
- Veritabanı adı
- Host adresi
- Kullanıcı adı
- Parola
Bu bilgiler, Connection sınıfı tarafından kullanılmak üzere bir URL string'inde birleştirilir ve veritabanına bağlantı sağlanır.
Bağlantı örneği aşağıdaki gibi olabilir:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class VeritabaniBaglantisi {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
System.out.println(\"Bağlantı başarılı.\");
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, JDBC API kullanarak MySQL veritabanına bağlantı sağlamaktadır. Bağlantı kurulduktan sonra, veritabanında bulunan tablolara erişmek ve bu tablolardan veri okuyup yazmak mümkün olabilir.
Veri Tabanından Veri Okuma
Veri tabanından veri okuma işlemi SELECT sorgusunun kullanılmasıyla gerçekleştirilir. Bunun için PreparedStatement sınıfı kullanılır. PreparedStatement sınıfı, SQL sorgusuyla birlikte veri tabanına gönderilmek üzere hazırlanmış bir nesnedir.
Aşağıdaki kod örneğinde selectSorgusu() metodu kullanılarak MySQL veritabanındaki öğrenciler tablosundaki öğrencilere ait bilgiler okunur:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class VeriOkuma {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
selectSorgusu();
}
private static void selectSorgusu() {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
PreparedStatement preparedStatement = baglanti.prepareStatement(\"SELECT * FROM ogrenciler\");
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
int id = resultSet.getInt(\"id\");
String isim = resultSet.getString(\"isim\");
String soyisim = resultSet.getString(\"soyisim\");
System.out.println(\"ID: \" + id + \" - İsim: \" + isim + \" - Soyisim: \" + soyisim);
}
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, * karakteri ile tüm tablo alanlarını seçer ve ResultSet nesnesine kaydeder. Ardından, ResultSet nesnesi üzerinden tablo alanlarına erişerek seçili verileri ekrana yazdırır.
Veri Tabanına Veri Yazma
Veri tabanına veri yazma işlemi INSERT sorgusunun kullanılmasıyla gerçekleştirilir. Bunun için de PreparedStatement sınıfı kullanılır.
Aşağıdaki kod örneğinde insertSorgusu() metodu kullanılarak MySQL veritabanındaki öğrenciler tablosuna yeni bir öğrenci eklenir:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class VeriYazma {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
insertSorgusu();
}
private static void insertSorgusu() {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
PreparedStatement preparedStatement = baglanti.prepareStatement(\"INSERT INTO ogrenciler (isim, soyisim) VALUES (?, ?)\");
preparedStatement.setString(1, \"John\");
preparedStatement.setString(2, \"Doe\");
preparedStatement.executeUpdate();
System.out.println(\"Veri başarıyla eklendi.\");
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, PreparedStatement sınıfı ve executeUpdate() metodu kullanılarak veri tabanına yeni bir kayıt ekler.
Sık Sorulan Sorular
S: JDBC nedir?
C: JDBC (Java Database Connectivity), Java programlama dilinde veri tabanlarına erişmek için kullanılan bir API'dir.
S: PreparedStatement nedir?
C: PreparedStatement, parametreleri olan SQL sorgularını veri tabanına göndermek için kullanılan bir Java nesnesidir.
S: Veri tabanına nasıl bağlanabilirim?
C: Veri tabanına bağlanmak için JDBC sürücüsünü yüklemeli ve Connection sınıfını kullanarak bir bağlantı nesnesi oluşturmalısınız. Bu bağlantı nesnesi sonra PreparedStatement sınıfı tarafından kullanılabilir.
S: Veri tabanından nasıl veri okuyabilirim?
C: Veri tabanından veri okumak için JDBC API kullanarak SELECT sorgusu hazırlayabilirsiniz. Bu sorguyu kullanarak bir PreparedStatement nesnesi oluşturabilir ve ResultSet nesnesi üzerinden sonuçları alabilirsiniz.
S: Veri tabanına nasıl veri yazabilirim?
C: Veri tabanına veri yazmak için JDBC API kullanarak INSERT sorgusu hazırlayabilirsiniz. Bu sorguyu kullanarak bir PreparedStatement nesnesi oluşturabilir ve executeUpdate() metodu kullanarak veritabanına yeni bir kayıt ekleyebilirsiniz.
Java ile MySQL Veritabanındaki Verileri Okuma ve Yazma
Java programlama dilinde veri tabanlarına erişmek oldukça yaygın bir ihtiyaçtır. Bunun için kullanılabilecek birçok veri tabanı yönetim sistemi bulunmaktadır. Bu yazıda, Java programlama dilinde MySQL veritabanına nasıl bağlanabileceğimizi ve verileri nasıl okuyup yazabileceğimizi detaylı bir şekilde ele alacağız.
MySQL Veritabanına Bağlanma
Java programlama dilinde MySQL veritabanına erişmek için kullanılabilecek iki yöntem vardır:
- JDBC API
- ORM Framework (Örneğin Hibernate)
JDBC API, temel olarak Java programlama dilindeki veri tabanlarına genel bir erişim yöntemi sunar. Bu API, JDBC sürücüsünün yüklenmesi ve veritabanına bağlantının kurulması gibi adımlar gerektirir.
Bağlantı kurmak için öncelikle aşağıdaki adımların gerçekleştirilmesi gerekir:
1. JDBC sürücüsünün yüklenmesi
2. Veritabanına bağlanmak için gerekli bilgilerin tanımlanması
3. Connection sınıfı kullanılarak veritabanına bağlantının sağlanması
JDBC sürücüsünü yüklemek için veritabanı yönetim sistemi tarafından sunulan sürücü dosyasını projede kullanılabilir halde yüklememiz gerekmektedir. Bu dosyayı internette aratarak bulabiliriz. Örneğin, MySQL JDBC Sürücüsü'nü indirmek için aşağıdaki bağlantıyı kullanabilirsiniz:
https://dev.mysql.com/downloads/connector/j/
Sürücü dosyasını indirdikten sonra, projemize ekleyebiliriz. Bu işlem, dosyayı projenin klasör yapısına yerleştirerek gerçekleştirilebilir.
Veritabanına bağlantı için gerekli bilgiler genellikle bir konfigürasyon dosyasında yer alır. Bu bilgiler şunları içerir:
- Veritabanı adı
- Host adresi
- Kullanıcı adı
- Parola
Bu bilgiler, Connection sınıfı tarafından kullanılmak üzere bir URL string'inde birleştirilir ve veritabanına bağlantı sağlanır.
Bağlantı örneği aşağıdaki gibi olabilir:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class VeritabaniBaglantisi {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
System.out.println(\"Bağlantı başarılı.\");
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, JDBC API kullanarak MySQL veritabanına bağlantı sağlamaktadır. Bağlantı kurulduktan sonra, veritabanında bulunan tablolara erişmek ve bu tablolardan veri okuyup yazmak mümkün olabilir.
Veri Tabanından Veri Okuma
Veri tabanından veri okuma işlemi SELECT sorgusunun kullanılmasıyla gerçekleştirilir. Bunun için PreparedStatement sınıfı kullanılır. PreparedStatement sınıfı, SQL sorgusuyla birlikte veri tabanına gönderilmek üzere hazırlanmış bir nesnedir.
Aşağıdaki kod örneğinde selectSorgusu() metodu kullanılarak MySQL veritabanındaki öğrenciler tablosundaki öğrencilere ait bilgiler okunur:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class VeriOkuma {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
selectSorgusu();
}
private static void selectSorgusu() {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
PreparedStatement preparedStatement = baglanti.prepareStatement(\"SELECT * FROM ogrenciler\");
ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) {
int id = resultSet.getInt(\"id\");
String isim = resultSet.getString(\"isim\");
String soyisim = resultSet.getString(\"soyisim\");
System.out.println(\"ID: \" + id + \" - İsim: \" + isim + \" - Soyisim: \" + soyisim);
}
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, * karakteri ile tüm tablo alanlarını seçer ve ResultSet nesnesine kaydeder. Ardından, ResultSet nesnesi üzerinden tablo alanlarına erişerek seçili verileri ekrana yazdırır.
Veri Tabanına Veri Yazma
Veri tabanına veri yazma işlemi INSERT sorgusunun kullanılmasıyla gerçekleştirilir. Bunun için de PreparedStatement sınıfı kullanılır.
Aşağıdaki kod örneğinde insertSorgusu() metodu kullanılarak MySQL veritabanındaki öğrenciler tablosuna yeni bir öğrenci eklenir:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class VeriYazma {
private static final String VERITABANI_URL = \"jdbc:mysql://localhost:3306/yazilim_blogu\";
private static final String VERITABANI_KULLANICI_ADI = \"root\";
private static final String VERITABANI_PAROLA = \"\";
public static void main(String[] args) {
insertSorgusu();
}
private static void insertSorgusu() {
try {
Connection baglanti = DriverManager.getConnection(VERITABANI_URL, VERITABANI_KULLANICI_ADI, VERITABANI_PAROLA);
PreparedStatement preparedStatement = baglanti.prepareStatement(\"INSERT INTO ogrenciler (isim, soyisim) VALUES (?, ?)\");
preparedStatement.setString(1, \"John\");
preparedStatement.setString(2, \"Doe\");
preparedStatement.executeUpdate();
System.out.println(\"Veri başarıyla eklendi.\");
} catch (SQLException e) {
System.out.println(\"Bağlantı hatası: \" + e.getMessage());
}
}
}
Yukarıdaki kod, PreparedStatement sınıfı ve executeUpdate() metodu kullanılarak veri tabanına yeni bir kayıt ekler.
Sık Sorulan Sorular
S: JDBC nedir?
C: JDBC (Java Database Connectivity), Java programlama dilinde veri tabanlarına erişmek için kullanılan bir API'dir.
S: PreparedStatement nedir?
C: PreparedStatement, parametreleri olan SQL sorgularını veri tabanına göndermek için kullanılan bir Java nesnesidir.
S: Veri tabanına nasıl bağlanabilirim?
C: Veri tabanına bağlanmak için JDBC sürücüsünü yüklemeli ve Connection sınıfını kullanarak bir bağlantı nesnesi oluşturmalısınız. Bu bağlantı nesnesi sonra PreparedStatement sınıfı tarafından kullanılabilir.
S: Veri tabanından nasıl veri okuyabilirim?
C: Veri tabanından veri okumak için JDBC API kullanarak SELECT sorgusu hazırlayabilirsiniz. Bu sorguyu kullanarak bir PreparedStatement nesnesi oluşturabilir ve ResultSet nesnesi üzerinden sonuçları alabilirsiniz.
S: Veri tabanına nasıl veri yazabilirim?
C: Veri tabanına veri yazmak için JDBC API kullanarak INSERT sorgusu hazırlayabilirsiniz. Bu sorguyu kullanarak bir PreparedStatement nesnesi oluşturabilir ve executeUpdate() metodu kullanarak veritabanına yeni bir kayıt ekleyebilirsiniz.
*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle