22 Temmuz 2014 Salı

JSP İle Resource dosyasından değer okuma

Merhaba, bu yazımda JSP dosyası ile resource dizini altındaki ayar dosyalarının nasıl okunacağını anlatacağım.  ilk olarak spring tabanlı bir web projesi oluşturuyoruz.



Oluşturduğumuz projenin  son halinin dizin yapısı aşağıdaki gib olacaktır.  Sizde proje  oluştururken bu yapıda olmasına dikkat edin.

 Projeyi oluşturduktan sonra size zorluk çıkmasın ve kafanız karışmasın  diye  ayar dosyaları üzerinde herhangi bir değişiklik yapmadım.  Tüm dosyalar (web.xml , mvc-dispatcher-servlet.xml )  varsayılan şekliyledir. 

Şimdi hemen controller oluşturarak kodlamaya başlayalım
ReadController.java aşağıdaki şekliyle oluşturuyoruz.

example1\src\main\java\com\company\controller\ReadController.java
package com.company.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class ReadController {

    @RequestMapping(value = "/" , method = RequestMethod.GET)
    public String readResource(){
        return "read";
    }
}
Uygulama sunucusu üstteki kod sayesinde  localhost:8080 den sonra “/” işareti görülürse bizi read.jsp sayfasına yönlendirir.  


example1\src\main\webapp\WEB-INF\pages\read.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title></title>
</head>
<body>
Read.jsp sayfası..
<hr/>
</body>
</html>


Bu işlemlerden sonra projemizi tomcat üzerinden çalıştırdığımızda ekrana read.jsp sayfası .. mesajını  yazacaktır.

Şuana kadar yaptığımız işlemleri sıralarsak ;controller oluşturduk ve get metoduyla sayfaya gelen isteklerin tamamını read.jsp sayfasına yönlendirdik. Ve projeyi çalıştırarak ekranda read.jsp sayfası .. mesajını yazdırdık

Şimdi bu read.jsp sayfasından resource dizinindeki config.properties dosyasını okuyalım. Tabi öncelikle config.properties i oluşturmamız gerekmektedir.

example1\src\main\resources\config.properties
#db connection params
db.host = localhost
db.name = store
db.user = root
db.pass = 123456


Config dosyasını oluşturduktan sonra read.jsp dosyasını  aşağıdaki gibi düzenleyebiliriz.
Read.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title></title>
</head>
<body>
read.jsp sayfası ..
<hr/>

<%@ page import = "java.util.ResourceBundle" %>

<%
    //config.properties dosyasını oku
    ResourceBundle resource = ResourceBundle.getBundle("config");

    //config dosyasındaki değerleri değişkenlere ata
    String username = resource.getString("db.user");
    String password = resource.getString("db.pass");
    String hostame = resource.getString("db.host");
    String dbname = resource.getString("db.name");


%>


<%--değerleri ekrana buradan basıoyruz--%>
<b> Kullanıcı adı:</b> <%=username%> <br/>
<b> Şifre : </b> <%=password%>  <br/>
<b> Sunucu :  </b><%=hostame%>  <br/>
<b> Veritabnı: </b> <%=dbname%> <br/>

</body>
</html>
Bu işlemleri sırasıyla yaptıktan sonra config dosyasında ki değerler sırasıyla ekrana basılacaktır.



NOT: Normal şartlarda jsp dosyasından config dosyası okunmaz. Değrler controller(JAVA) aracılığıyla okunup view’a(JSP)  gönderilir. Burada adım adım işleyişi göstermek adına böyle bir örnek yaptım. Bir sonraki yazımda da controller aracılığıyla değerleri okuyup view edeceğiz

kaynak dosyalar : indirmek için tıklayın

Hiç yorum yok:

Yorum Gönder