SlideShare a Scribd company logo
1 of 21
Download to read offline
Java Database
 Programlama
          Aralık 3, 2012
Ø İlkin Ulaş BALKANAY

       	
  C1	
            1	
  
İçerik	
  


1. JDBC	
  Teknolojisi	
  
2. Database	
  Programlama	
  
   Temelleri	
  
3. İleri	
  Seviye	
  Teknikler	
  



   Java	
  for	
  Telco	
     	
  C1	
     2	
  
JDBC	
  Teknolojisi	
  
Java	
  DataBase	
  Connec@vity	
  Mimarisi	
  




    Java	
  for	
  Telco	
                	
  C1	
     3	
  
JDBC	
  Teknolojisi	
  
Driver	
  Tipleri	
  

                           CLIENT	
  

     Type	
  1	
                           ODBC	
  
   ODBC	
  Bridge	
                        Driver	
  


     Type	
  2	
  
                                        Na@ve	
  API	
  
    Na@ve	
  API	
  
                                                                                                 Database	
  
     Type	
  3	
                                                        Middleware	
  
  JDBC-­‐Network	
                                                        Server	
  


     Type	
  4	
  
    100%	
  Java	
  




     Java	
  for	
  Telco	
                                	
  C1	
                      4	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  

1.  Driver’ı	
  yükle	
  
2.  BağlanT	
  adresini	
  belirle	
  
3.  BağlanT	
  kur	
  
4.  Statement	
  oluştur	
  
5.  Sorguyu	
  çalışTr	
  
6.  Sonuçları	
  işle	
  
7.  BağlanTyı	
  kapat	
  

     Java	
  for	
  Telco	
     	
  C1	
     5	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  :	
  (1)	
  Driver’ın	
  yüklenmesi	
  

	
  
Class.forName(driverName);	
  
	
  
•  “com.mysql.jdbc.Driver”	
  
•  “oracle.jdbc.driver.OracleDriver“	
  
•  “org.postgresql.Driver”	
  


Jdbc	
  4.0	
  ile	
  birlikte	
  (J2SE	
  6.0)	
  	
  
“Class.forName“	
  çağırmaya	
  gerek	
  kalmıyor.	
  
	
  


     Java	
  for	
  Telco	
                     	
  C1	
        6	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  :	
  (2)	
  BağlanT	
  adresinin	
  belirlenmesi	
  

Mysql	
  
jdbc:myqsl://<HOST>:<PORT>/<DATABASE_NAME>!
jdbc:mysql://localhost/testdb!
!
!
Oracle	
  
jdbc:oracle:thin@<HOST>:<PORT>:<DATABASE_NAME>!
jdbc:oracle:thin:@172.28.106.178:1522:testdb!
!
jdbc:oracle:oci:@<DATABASE_NAME> è Type 2 driver!




     Java	
  for	
  Telco	
                   	
  C1	
                       7	
  
JDBC	
  Teknolojisi	
  
  7	
  Temel	
  Adım	
  :	
  (3)	
  BağlanT	
  kur	
  

	
  
String	
  url	
  =	
  "jdbc:mysql://localhost/testdb";	
  
String	
  username	
  =	
  ”ilkin";	
  
String	
  password	
  =	
  ”12345";	
  
	
  
Connec@on	
  connec@on	
  =	
  	
  
          	
  DriverManager.getConnec-on(	
  
          	
             	
  url,	
  username,	
  password);!




       Java	
  for	
  Telco	
                            	
  C1	
     8	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  :	
  (4)	
  Statement	
  oluştur	
  



•  Statement	
  
                 !connection.createStatement();!
	
  
•  PreparedStatement	
  
                     connection.prepareStatement(sql);!
        	
  
•  CallableStatement	
  
                     connection.prepareCall(sql)!




     Java	
  for	
  Telco	
                     	
  C1	
     9	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  :	
  (5)	
  Sorguyu	
  çalışTr	
  


String query = "SELECT * FROM TEST_TABLE
     !     !     !WHERE ID=?";!
!
PreparedStatement ps =
     !connection.prepareStatement(query);!
ps.setInt(1, 5505);!
!
ResultSet rs = ps.executeQuery();!
!
//int rowCount = ps.executeUpdate()!




     Java	
  for	
  Telco	
                        	
  C1	
     10	
  
JDBC	
  Teknolojisi	
  
7	
  Temel	
  Adım	
  :	
  (6)	
  Sonuçları	
  işle	
  


   PreparedStatement ps =
        !connection.prepareStatement(query);!
   !
   ResultSet rs = ps.executeQuery();!
   !
   while (rs.next()) {!
        !… rs.getString(1) …!
        !… rs.getInt(2) …!
        !… rs.getTimestamp(3) …!
   }!




     Java	
  for	
  Telco	
                          	
  C1	
     11	
  
JDBC	
  Teknolojisi	
  
 7	
  Temel	
  Adım	
  :	
  (7)	
  BağlanTyı	
  kapat	
  


       resultSet.close();!
       preparedStatement.close();!
       connection.close();!
       !

•  Senkron	
  çalışır	
  
•  Database	
  ve	
  JDBC	
  kaynakları	
  temizlenir.	
  
	
  	
  	
  	
  (Socket	
  kapaTlır)	
  
•  Daha	
  önceden	
  kapaTlmış	
  bir	
  connec@on’ın	
  “close”	
  
                metodunun	
  çağırılması	
  birşey	
  yapmaz.	
  (no-­‐op)	
  



      Java	
  for	
  Telco	
                       	
  C1	
       12	
  
İleri	
  Seviye	
  Teknikler	
  


•  Spring	
  JDBC	
  
•  Transac@ons	
  
•  Performans	
  op@mizasyonları	
  
    •  Connec@on	
  pools	
  
    •  Batch	
  işlemler	
  
    •  Fetch	
  Size	
  
    •  Query	
  Timeout	
  
•  Unit	
  Tests	
  (	
  In	
  Memory	
  Databases	
  )	
  



     Java	
  for	
  Telco	
          	
  C1	
                 13	
  
İleri	
  Seviye	
  Teknikler	
  
    Spring	
  JDBC	
  

İşlem	
                                                                Spring	
   Sen	
  
BağlanT	
  parametrelerinin	
  belirlenmesi	
                                               X	
  
BağlanTnın	
  kurulması	
                                                    X	
  
SQL	
  cümlelerinin	
  belirlenmesi	
                                                       X	
  
SQL	
  parametrelerinin/@plerinin	
  belirlenmesi	
                                         X	
  
SQL	
  cümlesinin	
  hazırlanması	
  ve	
  işle@lmesi	
                      X	
  
Sonuçları	
  gezmek	
  için	
  	
  döngü	
  hazırlanması	
                   X	
  
Her	
  iterasyon	
  için	
  sonucun	
  işlenmesi	
                                          X	
  
Excep@on’ların	
  işlenmesi	
                                                X	
  
Transac@on’ların	
  yöne@lmesi	
                                             X	
  
Connec@on,	
  Statement	
  ve	
  ResultSet’in	
  kapaTlmasi	
                X	
  


            Java	
  for	
  Telco	
                     	
  C1	
     14	
  
İleri	
  Seviye	
  Teknikler	
  
TransacQons	
  

try {!
    connection.setAutoCommit(false);!
!
    execute “INSERT INTO TEST_TABLE VALUES(……)”!
    execute “INSERT INTO TEST_TABLE VALUES(……)”!
    execute “INSERT INTO TEST_TABLE VALUES(……)”!
!
    connection.commit();!
!
} catch( Exception e) {!
!
    connection.rollback();!
!
} finally {!
!
    connection.close(); !
}!


   Java	
  for	
  Telco	
     	
  C1	
      15	
  
İleri	
  Seviye	
  Teknikler	
  
Performans	
  OpQmizasyonları	
  :	
  Connec@on	
  Pools	
  

•  DB	
  Connec@on	
  açmak	
  ve	
  kapatmat	
  maliyetli	
  
•  Connec@on	
  pool	
  içinde	
  hazır,	
  kullanılmayı	
  bekleyen	
  
     connec@on’lar	
  bulunur.	
  
•  Ortak	
  parametreler:	
  
      •  Max	
  Connec@ons	
  
      •  Min	
  Connec@ons	
  
      •  Test	
  query	
  
      •  Uygun	
  Connec@on	
  bekleme	
  süresi	
  
•  Bir	
  çok	
  	
  open-­‐source	
  connec@on	
  pool	
  var.	
  
      •  DBCP	
  (hqp://commons.apache.org/dbcp/)	
  
      •  BoneCP	
  (hqp://jolbox.com/)	
  
      •  C3P0	
  (hqp://sourceforge.net/projects/c3p0)	
  
	
  
    Java	
  for	
  Telco	
            	
  C1	
                 16	
  
İleri	
  Seviye	
  Teknikler	
  
Performans	
  OpQmizasyonları	
  :	
  Batch	
  İşlemler	
  

 Tanım	
  :	
  Benzer	
  sorguların	
  gruplanması	
  ve	
  tek	
  
 seferde	
  DB’ye	
  gönderilmesi	
  
 	
  
 Avantajları:	
  
 •  Uygulama	
  ve	
  Database	
  arasındaki	
  network	
  
      trafiğini	
  azalTr	
  
 •  Database	
  commit	
  (IOPS)	
  sayısını	
  azalTr.	
  




    Java	
  for	
  Telco	
              	
  C1	
               17	
  
İleri	
  Seviye	
  Teknikler	
  
Performans	
  OpQmizasyonları	
  


resultSet.setFetchSize(100)                                          *!

                               “select	
  *	
  from	
  test_table”	
  
     Applica@on	
  
                                                                          Database	
  
                                         saTrlar	
  
                                          saTrlar	
  
                                           saTrlar	
  
                                            saTrlar	
  




  *	
  	
  Fetch	
  Size’ın	
  Varsayılan	
  değeri	
  10’dur.	
  



    Java	
  for	
  Telco	
                            	
  C1	
                     18	
  
İleri	
  Seviye	
  Teknikler	
  
Performans	
  OpQmizasyonları	
  


preparedStatement.setQueryTimeout(5)                                                *!

                               “select	
  *	
  from	
  test_table”	
                            Database’
                                                                                                den	
  cevap	
  
    Applica@on	
                                                                                5	
  saniye	
  
                                                                         Database	
  
                                                                                                içinde	
  
                                                                                                gelmez	
  ise	
  
                                      SQLExcep@on	
  




  *	
  	
  Query	
  Timeout	
  birimi	
  saniyedir.	
  Varsayılan	
  değeri	
  sonsuzdur.	
  



    Java	
  for	
  Telco	
                            	
  C1	
                     19	
  
İleri	
  Seviye	
  Teknikler	
  
Unit	
  Tests	
  :	
  In	
  Memory	
  Databases	
  




     Java	
  for	
  Telco	
                    	
  C1	
     20	
  
Son	
  olarak....	
  


JPA	
  :	
  Java	
  Persistency	
  API	
  
ORM	
  :	
  Object	
  Rela@onal	
  Mapping	
  
	
  
	
  
	
  
Önce	
  JDBC	
  ve	
  SQL’i	
  iyi	
  öğrenmek	
  gerekiyor.	
  




    Java	
  for	
  Telco	
             	
  C1	
                    21	
  

More Related Content

Similar to JDBC

Java ee kursu-kartal
Java ee kursu-kartalJava ee kursu-kartal
Java ee kursu-kartalsersld60
 
Java Web Uygulama Geliştirme
Java Web Uygulama GeliştirmeJava Web Uygulama Geliştirme
Java Web Uygulama Geliştirmeahmetdemirelli
 
Solaris Sparc Sunucularda WebLogic Performansı
Solaris Sparc Sunucularda WebLogic PerformansıSolaris Sparc Sunucularda WebLogic Performansı
Solaris Sparc Sunucularda WebLogic PerformansıM. Fevzi Korkutata
 
Java ee kursu-adana
Java ee kursu-adanaJava ee kursu-adana
Java ee kursu-adanasersld60
 
Java ee kursu-bagcilar
Java ee kursu-bagcilarJava ee kursu-bagcilar
Java ee kursu-bagcilarsersld60
 
Java SE 8 Programming
Java SE 8 Programming Java SE 8 Programming
Java SE 8 Programming Ercan Er
 
Java ee kursu-bahcelievler
Java ee kursu-bahcelievlerJava ee kursu-bahcelievler
Java ee kursu-bahcelievlersersld60
 
Java ee kursu-atasehir
Java ee kursu-atasehirJava ee kursu-atasehir
Java ee kursu-atasehirsersld60
 
Java ee kursu-ankara
Java ee kursu-ankaraJava ee kursu-ankara
Java ee kursu-ankarasersld60
 
Java ee kursu-pendik
Java ee kursu-pendikJava ee kursu-pendik
Java ee kursu-pendiksersld60
 
Java ee kursu-tuzla
Java ee kursu-tuzlaJava ee kursu-tuzla
Java ee kursu-tuzlasersld60
 
Java ee kursu-gaziantep
Java ee kursu-gaziantepJava ee kursu-gaziantep
Java ee kursu-gaziantepsersld60
 
Dba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriDba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriZekeriya Besiroglu
 
Java ee kursu-bakirkoy
Java ee kursu-bakirkoyJava ee kursu-bakirkoy
Java ee kursu-bakirkoysersld60
 
Java ee kursu-sultanbeyli
Java ee kursu-sultanbeyliJava ee kursu-sultanbeyli
Java ee kursu-sultanbeylisersld60
 
Oracle veritabanı yonetiminde onemli teknikler
Oracle veritabanı yonetiminde onemli tekniklerOracle veritabanı yonetiminde onemli teknikler
Oracle veritabanı yonetiminde onemli tekniklerOrhan ERIPEK
 
6.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V26.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V2Ermando
 
Java ee kursu-gungoren
Java ee kursu-gungorenJava ee kursu-gungoren
Java ee kursu-gungorensersld60
 
Java ee kursu-kocaeli
Java ee kursu-kocaeliJava ee kursu-kocaeli
Java ee kursu-kocaelisersld60
 

Similar to JDBC (20)

Java ee kursu-kartal
Java ee kursu-kartalJava ee kursu-kartal
Java ee kursu-kartal
 
Java Web Uygulama Geliştirme
Java Web Uygulama GeliştirmeJava Web Uygulama Geliştirme
Java Web Uygulama Geliştirme
 
Solaris Sparc Sunucularda WebLogic Performansı
Solaris Sparc Sunucularda WebLogic PerformansıSolaris Sparc Sunucularda WebLogic Performansı
Solaris Sparc Sunucularda WebLogic Performansı
 
Java ee kursu-adana
Java ee kursu-adanaJava ee kursu-adana
Java ee kursu-adana
 
Java ee kursu-bagcilar
Java ee kursu-bagcilarJava ee kursu-bagcilar
Java ee kursu-bagcilar
 
Java SE 8 Programming
Java SE 8 Programming Java SE 8 Programming
Java SE 8 Programming
 
Java ee kursu-bahcelievler
Java ee kursu-bahcelievlerJava ee kursu-bahcelievler
Java ee kursu-bahcelievler
 
Java ee kursu-atasehir
Java ee kursu-atasehirJava ee kursu-atasehir
Java ee kursu-atasehir
 
Java ee kursu-ankara
Java ee kursu-ankaraJava ee kursu-ankara
Java ee kursu-ankara
 
Java ee kursu-pendik
Java ee kursu-pendikJava ee kursu-pendik
Java ee kursu-pendik
 
Java ee kursu-tuzla
Java ee kursu-tuzlaJava ee kursu-tuzla
Java ee kursu-tuzla
 
Java ee kursu-gaziantep
Java ee kursu-gaziantepJava ee kursu-gaziantep
Java ee kursu-gaziantep
 
Dba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleriDba için oracle veritabanı 11g yeni özellikleri
Dba için oracle veritabanı 11g yeni özellikleri
 
Java ee kursu-bakirkoy
Java ee kursu-bakirkoyJava ee kursu-bakirkoy
Java ee kursu-bakirkoy
 
Java ee kursu-sultanbeyli
Java ee kursu-sultanbeyliJava ee kursu-sultanbeyli
Java ee kursu-sultanbeyli
 
Oracle veritabanı yonetiminde onemli teknikler
Oracle veritabanı yonetiminde onemli tekniklerOracle veritabanı yonetiminde onemli teknikler
Oracle veritabanı yonetiminde onemli teknikler
 
6.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V26.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V2
 
Aspnet M V C
Aspnet M V CAspnet M V C
Aspnet M V C
 
Java ee kursu-gungoren
Java ee kursu-gungorenJava ee kursu-gungoren
Java ee kursu-gungoren
 
Java ee kursu-kocaeli
Java ee kursu-kocaeliJava ee kursu-kocaeli
Java ee kursu-kocaeli
 

JDBC

  • 1. Java Database Programlama Aralık 3, 2012 Ø İlkin Ulaş BALKANAY  C1   1  
  • 2. İçerik   1. JDBC  Teknolojisi   2. Database  Programlama   Temelleri   3. İleri  Seviye  Teknikler   Java  for  Telco    C1   2  
  • 3. JDBC  Teknolojisi   Java  DataBase  Connec@vity  Mimarisi   Java  for  Telco    C1   3  
  • 4. JDBC  Teknolojisi   Driver  Tipleri   CLIENT   Type  1   ODBC   ODBC  Bridge   Driver   Type  2   Na@ve  API   Na@ve  API   Database   Type  3   Middleware   JDBC-­‐Network   Server   Type  4   100%  Java   Java  for  Telco    C1   4  
  • 5. JDBC  Teknolojisi   7  Temel  Adım   1.  Driver’ı  yükle   2.  BağlanT  adresini  belirle   3.  BağlanT  kur   4.  Statement  oluştur   5.  Sorguyu  çalışTr   6.  Sonuçları  işle   7.  BağlanTyı  kapat   Java  for  Telco    C1   5  
  • 6. JDBC  Teknolojisi   7  Temel  Adım  :  (1)  Driver’ın  yüklenmesi     Class.forName(driverName);     •  “com.mysql.jdbc.Driver”   •  “oracle.jdbc.driver.OracleDriver“   •  “org.postgresql.Driver”   Jdbc  4.0  ile  birlikte  (J2SE  6.0)     “Class.forName“  çağırmaya  gerek  kalmıyor.     Java  for  Telco    C1   6  
  • 7. JDBC  Teknolojisi   7  Temel  Adım  :  (2)  BağlanT  adresinin  belirlenmesi   Mysql   jdbc:myqsl://<HOST>:<PORT>/<DATABASE_NAME>! jdbc:mysql://localhost/testdb! ! ! Oracle   jdbc:oracle:thin@<HOST>:<PORT>:<DATABASE_NAME>! jdbc:oracle:thin:@172.28.106.178:1522:testdb! ! jdbc:oracle:oci:@<DATABASE_NAME> è Type 2 driver! Java  for  Telco    C1   7  
  • 8. JDBC  Teknolojisi   7  Temel  Adım  :  (3)  BağlanT  kur     String  url  =  "jdbc:mysql://localhost/testdb";   String  username  =  ”ilkin";   String  password  =  ”12345";     Connec@on  connec@on  =      DriverManager.getConnec-on(      url,  username,  password);! Java  for  Telco    C1   8  
  • 9. JDBC  Teknolojisi   7  Temel  Adım  :  (4)  Statement  oluştur   •  Statement   !connection.createStatement();!   •  PreparedStatement   connection.prepareStatement(sql);!   •  CallableStatement   connection.prepareCall(sql)! Java  for  Telco    C1   9  
  • 10. JDBC  Teknolojisi   7  Temel  Adım  :  (5)  Sorguyu  çalışTr   String query = "SELECT * FROM TEST_TABLE ! ! !WHERE ID=?";! ! PreparedStatement ps = !connection.prepareStatement(query);! ps.setInt(1, 5505);! ! ResultSet rs = ps.executeQuery();! ! //int rowCount = ps.executeUpdate()! Java  for  Telco    C1   10  
  • 11. JDBC  Teknolojisi   7  Temel  Adım  :  (6)  Sonuçları  işle   PreparedStatement ps = !connection.prepareStatement(query);! ! ResultSet rs = ps.executeQuery();! ! while (rs.next()) {! !… rs.getString(1) …! !… rs.getInt(2) …! !… rs.getTimestamp(3) …! }! Java  for  Telco    C1   11  
  • 12. JDBC  Teknolojisi   7  Temel  Adım  :  (7)  BağlanTyı  kapat   resultSet.close();! preparedStatement.close();! connection.close();! ! •  Senkron  çalışır   •  Database  ve  JDBC  kaynakları  temizlenir.          (Socket  kapaTlır)   •  Daha  önceden  kapaTlmış  bir  connec@on’ın  “close”   metodunun  çağırılması  birşey  yapmaz.  (no-­‐op)   Java  for  Telco    C1   12  
  • 13. İleri  Seviye  Teknikler   •  Spring  JDBC   •  Transac@ons   •  Performans  op@mizasyonları   •  Connec@on  pools   •  Batch  işlemler   •  Fetch  Size   •  Query  Timeout   •  Unit  Tests  (  In  Memory  Databases  )   Java  for  Telco    C1   13  
  • 14. İleri  Seviye  Teknikler   Spring  JDBC   İşlem   Spring   Sen   BağlanT  parametrelerinin  belirlenmesi   X   BağlanTnın  kurulması   X   SQL  cümlelerinin  belirlenmesi   X   SQL  parametrelerinin/@plerinin  belirlenmesi   X   SQL  cümlesinin  hazırlanması  ve  işle@lmesi   X   Sonuçları  gezmek  için    döngü  hazırlanması   X   Her  iterasyon  için  sonucun  işlenmesi   X   Excep@on’ların  işlenmesi   X   Transac@on’ların  yöne@lmesi   X   Connec@on,  Statement  ve  ResultSet’in  kapaTlmasi   X   Java  for  Telco    C1   14  
  • 15. İleri  Seviye  Teknikler   TransacQons   try {! connection.setAutoCommit(false);! ! execute “INSERT INTO TEST_TABLE VALUES(……)”! execute “INSERT INTO TEST_TABLE VALUES(……)”! execute “INSERT INTO TEST_TABLE VALUES(……)”! ! connection.commit();! ! } catch( Exception e) {! ! connection.rollback();! ! } finally {! ! connection.close(); ! }! Java  for  Telco    C1   15  
  • 16. İleri  Seviye  Teknikler   Performans  OpQmizasyonları  :  Connec@on  Pools   •  DB  Connec@on  açmak  ve  kapatmat  maliyetli   •  Connec@on  pool  içinde  hazır,  kullanılmayı  bekleyen   connec@on’lar  bulunur.   •  Ortak  parametreler:   •  Max  Connec@ons   •  Min  Connec@ons   •  Test  query   •  Uygun  Connec@on  bekleme  süresi   •  Bir  çok    open-­‐source  connec@on  pool  var.   •  DBCP  (hqp://commons.apache.org/dbcp/)   •  BoneCP  (hqp://jolbox.com/)   •  C3P0  (hqp://sourceforge.net/projects/c3p0)     Java  for  Telco    C1   16  
  • 17. İleri  Seviye  Teknikler   Performans  OpQmizasyonları  :  Batch  İşlemler   Tanım  :  Benzer  sorguların  gruplanması  ve  tek   seferde  DB’ye  gönderilmesi     Avantajları:   •  Uygulama  ve  Database  arasındaki  network   trafiğini  azalTr   •  Database  commit  (IOPS)  sayısını  azalTr.   Java  for  Telco    C1   17  
  • 18. İleri  Seviye  Teknikler   Performans  OpQmizasyonları   resultSet.setFetchSize(100) *! “select  *  from  test_table”   Applica@on   Database   saTrlar   saTrlar   saTrlar   saTrlar   *    Fetch  Size’ın  Varsayılan  değeri  10’dur.   Java  for  Telco    C1   18  
  • 19. İleri  Seviye  Teknikler   Performans  OpQmizasyonları   preparedStatement.setQueryTimeout(5) *! “select  *  from  test_table”   Database’ den  cevap   Applica@on   5  saniye   Database   içinde   gelmez  ise   SQLExcep@on   *    Query  Timeout  birimi  saniyedir.  Varsayılan  değeri  sonsuzdur.   Java  for  Telco    C1   19  
  • 20. İleri  Seviye  Teknikler   Unit  Tests  :  In  Memory  Databases   Java  for  Telco    C1   20  
  • 21. Son  olarak....   JPA  :  Java  Persistency  API   ORM  :  Object  Rela@onal  Mapping         Önce  JDBC  ve  SQL’i  iyi  öğrenmek  gerekiyor.   Java  for  Telco    C1   21