[{"data":1,"prerenderedAt":247},["ShallowReactive",2],{"page-tr-\u002Fblog\u002Fjava-11-12-13-and-beyond":3,"related-tr-\u002Fblog\u002Fjava-11-12-13-and-beyond":223},{"id":4,"title":5,"body":6,"date":211,"description":212,"extension":213,"meta":214,"navigation":215,"path":216,"seo":217,"stem":218,"tags":219,"translation":221,"__hash__":222},"pages_tr\u002Ftr\u002Fblog\u002Fjava-11-12-13-and-beyond.md","Java 11-12-13 ve …",{"type":7,"value":8,"toc":204},"minimark",[9,13,29,32,37,40,46,49,53,56,73,88,102,106,119,126,133,144,150,156,168,174,178,181,184,187,189,192],[10,11,12],"p",{},"Merhabalar, Java 11 ile beraber Java kullanan herkesin hayatında önemli değişiklikler olacak. Bu yazımda onlardan bahsedeceğim.\nJDK (Java Development Kit) artık her 6 ayda bir güncellenecek, bunlar da yıl içinde Mart ve Eylül aylarına denk geliyor. LTS (Long Term Support) dediğimiz “Uzun Dönem Destek” paketleri de 3 yılda bir çıkacak.",[14,15,16,20,23,26],"ul",{},[17,18,19],"li",{},"2018 Eylül – Java 11",[17,21,22],{},"2021 Eylül – Java 17",[17,24,25],{},"2024 Eylül – Java 23",[17,27,28],{},"… gibi",[10,30,31],{},"Ve tabi ki ücretini ödeyen 3 seneden sonra da desteğini alabilir 🙂",[33,34,36],"h2",{"id":35},"lisanslama-oracle-jdk-open-jdk","Lisanslama – Oracle JDK & Open JDK",[10,38,39],{},"Java 11 ile artık karşımızda Oracle JDK ve Open JDK kavramları var. Bundan sonra",[41,42,43],"blockquote",{},[10,44,45],{},"Oracle JDK – Oracle Binary Code License Aggrement\nOpen JDK – GPL2",[10,47,48],{},"ile lisansları ile hayatımızda yer alacak. GPL2 tamamen açık kaynak ve ücretsiz. Oracle Binary Code Lisansı ise geliştirme yaparken yine ücretsiz kullanılabilecek ama üretim (production) ortamlarına ücretli olacak.",[33,50,52],{"id":51},"modası-geçen-ve-kaldırılanlar","Modası Geçen ve Kaldırılanlar",[10,54,55],{},"Enterprise API’lerden aşağıdakiler JDK içerisinden çıkarıldı.",[14,57,58,61,64,67,70],{},[17,59,60],{},"JAXB – xml binding",[17,62,63],{},"JAX-WS – xml web services and endpoint technology",[17,65,66],{},"CORBA – distributed object technology",[17,68,69],{},"JTA – java transaction api",[17,71,72],{},"JavaBeans Activation",[10,74,75,76,82,83],{},"Detayına şu adresten ulaşabilirsiniz; ",[77,78,79],"a",{"href":79,"rel":80},"https:\u002F\u002Fopenjdk.java.net\u002Fjeps\u002F320",[81],"nofollow","\nAyrıca Thread sınıfından destroy() ve stop(Throwable obj) metodları çıkarıldı.\nJDK 10 – ",[77,84,87],{"href":85,"rel":86},"https:\u002F\u002Fdocs.oracle.com\u002Fjavase\u002F10\u002Fdocs\u002Fapi\u002Fjava\u002Flang\u002FThread.html",[81],"Thread",[10,89,90,91,95,96,101],{},"JDK 11 – ",[77,92,87],{"href":93,"rel":94},"https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F11\u002Fdocs\u002Fapi\u002Fjava.base\u002Fjava\u002Flang\u002FThread.html",[81],"\nJavaFX jdk içerisinden çıkarılarak ayrı bir kütüphane haline getirildi, adı da ",[77,97,100],{"href":98,"rel":99},"https:\u002F\u002Fopenjfx.io\u002F",[81],"OpenJFX","oldu.",[33,103,105],{"id":104},"dil-ve-kütüphane-yenilikleri","Dil ve Kütüphane Yenilikleri",[10,107,108,109,114],{},"JDK 9 ve 10’da deneysel olarak bulunan HTTP isteği gönderip yanıtını almak için kullanılabilen HttpClient sınıfı artık canlıda. HTTP2 desteği sunduğundan dolayı çoğu yeni proje için Java 11’e geçiş sebebi 🙂 API’yi tanımak için aşağıya bağlantılarını ekledim.\n",[110,111],"img",{"alt":112,"src":113},"","\u002Fimages\u002Fjava-11-12-13-and-beyond-httpclient-1024x422.png",[77,115,118],{"href":116,"rel":117},"https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F11\u002Fdocs\u002Fapi\u002Fjava.net.http\u002Fjava\u002Fnet\u002Fhttp\u002FHttpClient.html",[81],"HttpClient API",[10,120,121],{},[77,122,125],{"href":123,"rel":124},"https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F11\u002Fdocs\u002Fapi\u002Fjava.net.http\u002Fjava\u002Fnet\u002Fhttp\u002FHttpRequest.html",[81],"HttpRequest API",[10,127,128],{},[77,129,132],{"href":130,"rel":131},"https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F11\u002Fdocs\u002Fapi\u002Fjava.net.http\u002Fjava\u002Fnet\u002Fhttp\u002FHttpResponse.html",[81],"HttpResponse API",[10,134,135,136,139,143],{},"String sınıfına yeni kullanışlı metodlar eklendi.\n",[110,137],{"alt":112,"src":138},"\u002Fimages\u002Fjava-11-12-13-and-beyond-string-246x300.png",[140,141,142],"strong",{},"repeat","() – herhangi bir string i tekrarlamak için",[10,145,146,149],{},[140,147,148],{},"isBlank","() – string in boş olup olmadığına bakar",[10,151,152,155],{},[140,153,154],{},"strip","() – string’in önü ve arkasındaki boşluk karakterlerini trim() metodundan farklı olarak unicode karakterleri ile temizler",[10,157,158,161,162,167],{},[140,159,160],{},"lines","() – string in içindeki satırları “\\r\\n” yani line feed ve carriage return karakterleri stream olarak almamızı sağlar\nAyrıca ",[77,163,166],{"href":164,"rel":165},"https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F11\u002Fdocs\u002Fapi\u002Fjava.base\u002Fjava\u002Fnio\u002Ffile\u002FFiles.html",[81],"Files","sınıfına aşağıdaki yeni metodlar gelmiş;",[10,169,170,173],{},[110,171],{"alt":112,"src":172},"\u002Fimages\u002Fjava-11-12-13-and-beyond-files.png","Unicode 10 desteği de yine JDK 11 ile geliyor.\nBen burada sadece en çok kullanabileceklerimi yazdım. Tam listeyi yazının en altına ekliyorum.",[33,175,177],{"id":176},"performans-ve-güvenlik-i̇yileştirmeleri","Performans ve Güvenlik İyileştirmeleri",[10,179,180],{},"G1 Garbage Collector ile Java 11, Java 8’e göre %60 daha iyi performans sergiliyor. Bu da yazdığımız kodda herhangi bir değişiklik yapmadan Java 11’e geçirsek bile daha iyi bir performans alabileceğimizin göstergesi.\nAyrıca Epsilon GC ve Z GC adında iki yeni GC eklendi. İkisi de henüz deneysel.\nEpsilon Garbage Collector, performans ölçüm amaçlı kullanılabilir, aşağıdaki parametrelerle açılabiliyor.",[10,182,183],{},"XX:+UnlockExperimentalVMOptions",[10,185,186],{},"XX:+UseEpsilonGC\nZ Garbage Collector, multi-terabytes heap e çıkmayı sağlıyor. Sadece 64 bit Linux makinelerde çalışıyor.",[10,188,183],{},[10,190,191],{},"XX:+UseZGC\nGüvenlik konusuna gelirsek, TLS 1.3 desteği sağlanmış ve eski güvenliğini kaybetmiş kriptografik algoritmalar çıkarılmış ve yeni daha güvenli algoritmalar eklenmiş. Handshake sırasındaki ilk mesaj hariç hepsi şifrelenmiş. Detaylarına aşağıdaki linkten erişilebilir.",[10,193,194,198,199],{},[77,195,196],{"href":196,"rel":197},"https:\u002F\u002Fopenjdk.java.net\u002Fjeps\u002F332",[81],"\nSon olarak Oracle’ın açıkladığı",[77,200,203],{"href":201,"rel":202},"https:\u002F\u002Fwww.oracle.com\u002Ftechnetwork\u002Fjava\u002Fjavase\u002F11-relnote-issues-5012449.html",[81],"Java 11 değişiklikler listesi bağlantıdadır.",{"title":112,"searchDepth":205,"depth":205,"links":206},2,[207,208,209,210],{"id":35,"depth":205,"text":36},{"id":51,"depth":205,"text":52},{"id":104,"depth":205,"text":105},{"id":176,"depth":205,"text":177},"2019-02-13","Java 11 ve sonrasındaki sürümlerde gelen yenilikler: yeni sürüm döngüsü ve dikkat çeken özellikler.","md",{},true,"\u002Ftr\u002Fblog\u002Fjava-11-12-13-and-beyond",{"title":5,"description":212},"tr\u002Fblog\u002Fjava-11-12-13-and-beyond",[220],"java","\u002Fen\u002Fblog\u002Fjava-11-12-13-and-beyond","jeVAu_8gMdI7V2-AEbJKnUoslxcG07M9PpwuHptBFgo",[224,231,238],{"path":225,"title":226,"description":227,"date":228,"tags":229},"\u002Ftr\u002Fblog\u002Fjava-21-features","Java 21 Yenilikleri: Virtual Threads, Records ve Pattern Matching","Java 21 LTS ile gelen ve günlük kodu en çok değiştiren özellikler — virtual threads, record'lar, switch pattern matching, record pattern'leri, sealed sınıflar ve sequenced collections.","2026-11-01",[220,230],"rehber",{"path":232,"title":233,"description":234,"date":235,"tags":236},"\u002Ftr\u002Fblog\u002Finstall-java-on-centos-7-rhel-7","CentOS 7 & Red Hat Enterprise Linux 7 Java Kurulumu","CentOS 7 ve RHEL 7 üzerine yum ile Java 11 (OpenJDK) kurulumu ve alternatif sürüm seçimi — adım adım kısa rehber.","2019-11-08",[220,237],"linux",{"path":239,"title":240,"description":241,"date":242,"tags":243},"\u002Ftr\u002Fblog\u002Fspring-security-primefaces-redirect-issue-fix","Spring Security + PrimeFaces Yönlendirme Problemi Çözümü","Spring Security ile PrimeFaces kullanılırken ortaya çıkan yönlendirme probleminin çözümü.","2015-05-15",[220,244,245,246],"jsf","primefaces","spring",1793491378877]