Java mysql jsp Türkçe Karakter Problemi UTF-8 Bölüm 1
contentType, Encoding, UTF-8, mysql, string, java July 11th, 2007
Farkettim ki Türkçe karakter problemi hepimizin en az 1 kere karşılaştığı çözdüğü halde gene karşılaştığı bir problem. Bu yüzden bazı şeyleri hızlandırmak abi nasıl yapmıştık bunu diye fellik fellik internette dolanmamak eski kodlar nerdeydi neresinde nettiydik dememek ve siz sevgili okullarımızdan hayır duaları almak için javadaki,jspdeki,servletteki,mysqldeki Türkçe Karakter Problemine el koyuyorum.
Şimdi her olabilecek durumu inceleyeceğiz. Öncelikle form bazında oluşabilcek hataları inceleyeceğiz.
<%@page contentType=”text/html”%>
<%@page pageEncoding=”UTF-8″%><%=request.getParameter(”hede”)%>
<form method=”post” action=”test.jsp”> <input name=”hede” type=”text” /> <input value=”Gönder” type=”submit” /></form>
Şimdi bu koda türkçe karakter girip submit edince aynısnın sayfaya çıkmasını bekliyorsunuz di mi ? …. derler adama çıkmaz.
![]()
Bu kodun düzgün çalışması için yapmamız gereken çok basit hemen halledelim.
<%@page contentType=”text/html”%>
<%@page pageEncoding=”UTF-8″%><%request.setCharacterEncoding(”UTF-8″);%>
<%=request.getParameter(”hede”)%><form method=”post” action=”test.jsp”> <input name=”hede” type=”text” /> <input value=”Gönder” type=”submit” /> </form>
![]()
request.setCharacterEncoding(”UTF-8″); ile request objesinin UTF-8 şeklinde alınmasını sağladık. Artık her şekilde jsplerde gelenı aldığımız gibi goruntuleyebiliriz. Sağolasın UTF-8.
Aklıma gelmişken hemen bir şey daha anlatayım şurda.
Bir string içine Türkçe karakter atıp (String str=”üğıişçöÜĞIİŞÇÖ”;) bunu yazdırmaya kalkıştığınızda problem çıkıyorsa. Ilk seferinde yazıyor. Idenizi acıp kapadığınızda Türkçe karakterler kayboluyorsa dosyalarınızı UTF-8 olarak save etmeniz gerekmektedir.
Netbeans için
Tools>Options>Advanced Options>Editing>Java Sources>Default Encoding = UTF-8
şeklinde halledebilirsiniz.
Social Bookmarking
August 31st, 2007 at 13:15
Benim başka bir sorunum var aşağıdakiler yardım etmedi :(
Sorun şu: ORACLE veritabanından çektiğim veri türkçe karakteri düzgün geliyor fakat veriyi jsp:forward ile diğer sayfaya gönderdiğim zaman türkçe karakterleri almıyor…
Yardımlarınızı rica ediyorum
Şimdiden teşekkürler
September 18th, 2007 at 20:24
Selam,
URL’de Türkçe karakter kullanmak bir takım sorunlara neden olabiliyor. O yüzden çözüm mümkünse forward değil include kullanmak. Mutlaka kullanılması gerekiyorsa Türkçe karakterleri unicode karşılıkları ile değiştirebilirsin, mesela a.jsp?a=ş yerine a.jsp?a=%C5%9F kullanmak gibi.