JSP Servlet ile JSON Uygulamasi
- Sevdanur GENC

- May 8, 2012
- 2 min read
Bu makalemde JSon yapisindan biraz bahsettikten sonra hemen ardindan Oracle veri tabaninda ki verilerimi Java'da Bean siniflari kullanarak web ortaminda JSP formati ile kullaniciya verilerimizi sunucam.
Oncelikle JSon'dan bahsedecek olursak...
JSON, acilimi JavaScript Object Notation'dir. Yazilimlariniz ile internet ortamina aktaracagimiz verilerimizin alis-verisinde yani bilgi akisinda ki degiskenlerin ve dizilerin dogru aktarilmasinda kullanabildigimiz XML ile bicimlendirilmis bir veri kumesi olarak da dusunebiliriz. Kullandigi veri tipleri ise; Number, String, Boolean, Array, Object ve Null'dir...
Uygulama icin genellikle arastirmalariniz sonucunda diger dillerde kullanim sekillerini bulabilirsiniz, fakat bu uygulamamda yine java teknolojilerinden faydalanarak sizlere farkli bir uygulama aktaracagim.
Uygulamamiza gecmeden once Oracle veri tabaninda olusturmus oldugum Tbl_Doctors tablosunda ki kullanacagim alanlari asagida paylasmak istiyorum.
Veri tabaninda ki verilerimizi java ortamina aktarabilecegim bir pojo sinifi olusturuyorum. Hemen ardindan JSON'la ilgili gson kutuphaneleri internetten indirip projemize import ettikten sonra veri tabanina baglanti komutlarini ve json'la ilgili komutlari yazmaya baslayabilirsiniz.
Tbl_Doctors.Java Kaynak Kodlari ;
public class Tbl_Doctors {
private int Id;
private String Dr_Name;
private String Dr_Surname;
private String Branch;
public Tbl_Doctors() { }
public String getBranch() { return Branch; }
public void setBranch(String Branch) { this.Branch = Branch; }
public String getDr_Name() { return Dr_Name; }
public void setDr_Name(String Dr_Name) { this.Dr_Name = Dr_Name; }
public String getDr_Surname() { return Dr_Surname; }
public void setDr_Surname(String Dr_Surname) { this.Dr_Surname = Dr_Surname; }
public int getId() { return Id; }
public void setId(int Id) { this.Id = Id; }
}
Tbl_Doctors_Bean.Java Kaynak Kodlari ;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Tbl_Doctors_Bean {
Connection connection = null;
private PreparedStatement st;
private ResultSet rs;
public Tbl_Doctors_Bean() {
try
{
String drivername = "oracle.jdbc.driver.OracleDriver";
Class.forName(drivername);
String servername = "127.0.0.1";
String portnumber = "1521";
String sid = "XE";
String url = "jdbc:oracle:thin:@"+servername+":"+portnumber+":"+sid;
String username = "SYSTEM";
String password = "sys";
connection = DriverManager.getConnection(url,username,password);
}
catch (Exception ex)
{
Logger.getLogger(Tbl_Doctors_Bean.class.getName()).log(Level.SEVERE, null, ex);
System.out.println("error" + ex);
System.out.print("ok"); }
}
public List<Tbl_Doctors> List_Of_Doctors() throws SQLException
{
List<Tbl_Doctors> list_of_doctor = new ArrayList<Tbl_Doctors>();
st = connection.prepareStatement("SELECT ID, DR_NAME, DR_SURNAME, BRANCH"
+ " FROM TBL_DOCTORS ORDER BY ID ASC");
rs = st.executeQuery();
while(rs.next())
{
Tbl_Doctors dr = new Tbl_Doctors();
dr.setId(rs.getInt("id"));
dr.setDr_Name(rs.getString("dr_name"));
dr.setDr_Surname(rs.getString("dr_surname"));
dr.setBranch(rs.getString("branch"));
list_of_doctor.add(dr);
}
return list_of_doctor;
}
}
Tbl_Doctors_JSon_Servlet.Java Kaynak Kodlari ;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.google.gson.Gson;
import java.util.List;
public class Tbl_Doctors_JSon_Servlet extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
} finally {
out.close();
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
List<Tbl_Doctors> list = new Tbl_Doctors_Bean().List_Of_Doctors();
String json = new Gson().toJson(list);
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);
} catch (SQLException ex) {
Logger.getLogger(Tbl_Doctors_JSon_Servlet.class.getName()).log(Level.SEVERE, null, ex);
}
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
Index.Jsp Kaynak Kodlari ;
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1> <a href="/JSon_Denemeler/Tbl_Doctors_JSon_Servlet">Listele</a></h1>
</body>
</html>
Uygulamanin Ekran Goruntusu;
Listele linkine tiklanildiktan sonra icerisinde json komutlarini cagirabilecegimiz Servlet komutlarimiz gelmektedir.
Keyifli Calismalar Dilerim...
Comments