Bilgisayar 3 temel birimden oluşur.Ve bu birimler bir birleri içerisinde sürekli bir iletişim halindedir.
1)Merkezi İşlem Birimi
MİB,bilgisayardan beklenen hesap yapma ve karar verme işlemlerinin gerçeklendiği birimdir.Bu birim aynı zamanda,tüm bilgisayarların çalışmasını da yönetir.Bu nedenle çoğu kez MİB'e bilgisayarın beyni olarak bakılır.
2-Bellek
Bellek,veri ve programların saklanması amacıyla kullanlmaktadır.Bazı bilgisayarlarda,veri ve program aynı bellek içinde saklanırken,bazılarında veriler için ayrı programlar için ayrı bellek tasarlanır.Veri ve programın aynı bellekte olmasını Von Neumann yapısındaki bilgisayarlar sağlar.
3-Giriş-Çıkış
Giriş-çıkış arabirimi bilgisayarın,çevre birimlerle bağlantı kurmasını sağlar.Bilgisayarın çevre birimler arasında veri iletişimi için önemli rol oynar.
Bilgisayarların bu bölümleri arasındaki bağlantıyı sağlamak için tasarlanmış çok sayıda yol bulunur.Bunlar Veri Yolu ,Adres Yolu ve Denetim Yolu'dur.
Şimdi biraz daha ayrıntılı bakalım..
.
Merkezi İşlem Birimi
5 alt birimi vardır.Bu alt birimler;
1-Bellek Adres Register'ı
2-Bellek Veri Registeri'i
3-Akümülatör
4-Aritmelik Lojik Birim (ALU)
Bellek Adres Register'i MİB'ten ve G/Ç tan gelen adresin nereye gideceğini belirler.Bellekten okuma veya yazma yapacağımızda AR'yi kullanmamız gerekir.AR adres yoluna bağlıdır.
Bellek Veri Register'i MİB'den belleğe veya giriş-çıkış arabirimine giden veya buralardan MİB'e gelen verilen alınıp verildiği bir iskele olarak görev yapar.DR üzerinden MİB'e gelen veriler ACC (Akümülatöre) alınır.ALU tarafında da yürütülür.
Denetçi,tüm bilgisayarların yönetimi ile ilgili bilgileri toplamak ve üretmekle görevlidir.
Bellek
Bellek birbirinin aynı ve çok sayıda bellek birimlerinin üst üste yığılması ile oluşmaktadır.
Bellek birimlerine bellek gözü her bellek gözüne ise göze adı verilen birimler bulunur.Veri yolundaki hat sayısı bir bellek gözündeki göze sayısı kadardır.Bu gözelere erişmek için ise adres yolu kullanır.Giriş-çıkış elemanlarıda birer bellek gözü gibi düşünülebilir.Aralarındaki fark,bu gözlerin birer ucunun bilgisayarın dış dünyasına açılmasıdır.
8 bitlik mikroişlemcilerin çoğunda veri yolu 8,adres yolu 16 hattan oluşur.Denetim yolundaki hatların sayısı MİB'in yapısına göre değişmektedir.16 bitlik mikroişlemcilerde veri yolu 8 ya da 16 bit olabilir.
BİLGİSAYARIN TEMEL BİRİMLERİ
MİKROİŞLEMCİLERE GİRİŞ
Günümüzde mikroişlemciler iki alanda kullanılmaktadır.Birinci kullanım alanı,genel amaçlı bilgisayar üretimi ikinci alanı ise atanmış bilgisayar uygulamalarıdır.Günümüzde,yaygın olarak kullanılan bireysel bilgisayarların temel taşı mikroişlemcilerdir.Bireysel bilgisayarlara göre daha yetenekli olan iş istasyonları sunucular ve orta boy bilgisayarların teme öğereleri de mikroişlemcilerdir.
Bilgisayar Yapısı
Bellek Yetenegi
Veri ve programlar,bellekte saklanabilmelidir.Saklanan veri ve programlar istediğinde geri alınabilmeli veya yeniden saklanabilmelidir.
Hesaplama Yeteneği
Bilgisayar kendisine verilen veriler üzerinde,yine kendisine verilen programa uygun olarak aritmetik ve mantıksal işlemler yapabilmelidir.
Karar Verme Yeteneği
İşlemler sonunda veya kendisine verilen verilere bakarak programın akışı ve/veya verilen değerlendirilmesi konusunda karar verebilmelidir.Yüksek seviyeli dillerdeki if else yapısı bu duruma örnek olarak verilebilir.
Giriş-Çıkış Yeteneği
Bilgisayara dışarıdan veri ve program verilebilmeli ve sonuçlar bilgisayardan dışarı alınabilmelidir.Kısaca,bilgisayar ile çevresi arasında veri iletişimi olmalıdır.
Bilgisayar Yapısı
Bellek Yetenegi
Veri ve programlar,bellekte saklanabilmelidir.Saklanan veri ve programlar istediğinde geri alınabilmeli veya yeniden saklanabilmelidir.
Hesaplama Yeteneği
Bilgisayar kendisine verilen veriler üzerinde,yine kendisine verilen programa uygun olarak aritmetik ve mantıksal işlemler yapabilmelidir.
Karar Verme Yeteneği
İşlemler sonunda veya kendisine verilen verilere bakarak programın akışı ve/veya verilen değerlendirilmesi konusunda karar verebilmelidir.Yüksek seviyeli dillerdeki if else yapısı bu duruma örnek olarak verilebilir.
Giriş-Çıkış Yeteneği
Bilgisayara dışarıdan veri ve program verilebilmeli ve sonuçlar bilgisayardan dışarı alınabilmelidir.Kısaca,bilgisayar ile çevresi arasında veri iletişimi olmalıdır.
IMPLICIT OBJECTS
1-out (javax.servlet.jsp.JspWriter) nesnesidir.JSP'de ekrana yazı basmak için kullanılır..
2-request (javax.servlet.http.HttpServletRequest) nesnesidir.İstemcinin istekleri yapılır.
3-response (javax.servlet.http.HttpServlet.Response) nesnesidir.İstemcinin isteklerine yanıt verir.
4-session (javax.servlet.HttpSession) nesnesidir.Nesneleri global olarak gezidirmek için kullanılır.
5-application (javax.servlet.ServletContext) Servletteki uygulamaların metotları arayüzler ile yapılır.
6-pageContext (javax.servlet.jsp.PageContext) nesnesidir.JSP sayfaları hakkında bilgi verir.
7-config (javax.servlet.ServletConfig) nesnesidir.Servletin ayar işlemleri buradadır.
8-exception (java.lang.Throwable) nesnesidir.JSP'de oluşan hatalar için kullanılır.
2-request (javax.servlet.http.HttpServletRequest) nesnesidir.İstemcinin istekleri yapılır.
3-response (javax.servlet.http.HttpServlet.Response) nesnesidir.İstemcinin isteklerine yanıt verir.
4-session (javax.servlet.HttpSession) nesnesidir.Nesneleri global olarak gezidirmek için kullanılır.
5-application (javax.servlet.ServletContext) Servletteki uygulamaların metotları arayüzler ile yapılır.
6-pageContext (javax.servlet.jsp.PageContext) nesnesidir.JSP sayfaları hakkında bilgi verir.
7-config (javax.servlet.ServletConfig) nesnesidir.Servletin ayar işlemleri buradadır.
8-exception (java.lang.Throwable) nesnesidir.JSP'de oluşan hatalar için kullanılır.
JSP İLE FONKSİYON YAZIP ÇAĞIRMAK
<%--
Document : Ornek
Created on : 15.Şub.2018, 23:00:03
Author : Gökhan
--%>
<%@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>
<%!
String ex="";
public String TerstenYaz(){
for(int i=6;i>0;i--)
ex=ex+"<h" +i+ ">" +"CODINGISLIFE"+ "</h" +i+ ">";
return ex;
}
%>
<%= TerstenYaz() %>
</body>
</html>
SCRIPTLET TAG & ACTION TAG
4-SCRIPTLET TAG(Bilinen kodlama)
Bu tag'lar <% %> arasına yazılır.Bir değişken tanımlayıp onu jsp sayfamızda yazdırmak isteseydik.
<%
String sehir="Hatay";
out.println("sehir");
int yas=21;
out.println(yas);
%>
5-ACTION TAG
Bu tag'ımızı 3 ayrı şekilde kullanabiliriz..
1-Sunucu tarafında Javabeans kullanımına olanak sağlar
2-JSP sayfaları arasındaki bilgi aktarımını denetler
3-Appletler için hangi web tarayıcı olursa olsun fark etmez.Sağlıklı çalışır ve destekler..
Sonraki yazımızda bu tagları uygulamalı bir şekilde kodlar ile göreceğiz
Bu tag'lar <% %> arasına yazılır.Bir değişken tanımlayıp onu jsp sayfamızda yazdırmak isteseydik.
<%
String sehir="Hatay";
out.println("sehir");
int yas=21;
out.println(yas);
%>
5-ACTION TAG
Bu tag'ımızı 3 ayrı şekilde kullanabiliriz..
1-Sunucu tarafında Javabeans kullanımına olanak sağlar
2-JSP sayfaları arasındaki bilgi aktarımını denetler
3-Appletler için hangi web tarayıcı olursa olsun fark etmez.Sağlıklı çalışır ve destekler..
Sonraki yazımızda bu tagları uygulamalı bir şekilde kodlar ile göreceğiz
DIRECTIVE TAG (2)Include Directive & (3)Tag Library Directive
2-INCLUDE DIRECTIVE
JSP sayfalarında dışarıdan başka dosya,kod parçası veya herhangi bir JSP sayfasının bir başka JSP sayfasında kullanılmasını istediğimizde kullanırız.
<%@ include file="footer.html" %>
<%@ include file="takim/Galatasaray.jsp"%>
3-TAG LIBRARY DIRECTIVE
Eğer ki koleksiyondan bir Taglib kullabacak isek oba istediğimiz bir ön isimle veya lakapla çağırmalarda bulunabiliriz.Ön isim veya lakap kullanım tekniği JSP sayfalarında Taglib kodların kullanımını kolaylaştırır..
<%@ taglib uri="tag library URI" prefix="tagimiz" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" %>
Bir sonraki yazımızda Tag'larımıza devam edeceğiz.Bir sonraki tag çeşidimiz 4-Scriptlet tag---
JSP sayfalarında dışarıdan başka dosya,kod parçası veya herhangi bir JSP sayfasının bir başka JSP sayfasında kullanılmasını istediğimizde kullanırız.
<%@ include file="footer.html" %>
<%@ include file="takim/Galatasaray.jsp"%>
3-TAG LIBRARY DIRECTIVE
Eğer ki koleksiyondan bir Taglib kullabacak isek oba istediğimiz bir ön isimle veya lakapla çağırmalarda bulunabiliriz.Ön isim veya lakap kullanım tekniği JSP sayfalarında Taglib kodların kullanımını kolaylaştırır..
<%@ taglib uri="tag library URI" prefix="tagimiz" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" %>
Bir sonraki yazımızda Tag'larımıza devam edeceğiz.Bir sonraki tag çeşidimiz 4-Scriptlet tag---
DIRECTIVE TAG (1)Page Directive
3-DIRECTIVE TAG
Bu taglar sayfaya özel bilgiler ekler.3'ayrı directive tag'ı vardır.Bunlar çok önemli taglardır.Bu örnekleri çözdükçe kendi kendinize küçük küçük uygulamalar yazmaya çalışın.Ben toplama kısmını yazarsam siz çıkarma kısmını yazın.Unutmayın bir dili geliştirmek için o dilde sürekli kod yazmanız gerekiyor.Biraz sabır ile daha zor daha eğlenceli konulara geleceğiz..
3.1)Page Directive
Çalışan JSP sayfasında işlenecek bilgileri tanımlar.
3.2)Include Directive
Dışarıdan harici dosya,web sayfalarını ve kod parçalarını JSP sayfalarımıza dahil etmede kullanılır.Aynı yapı PHP'de de bulunur.2 veya daha fazla PHP sayfasını birleştirmeye yarar.Bu kod kalabalığını önler.Şöyle ki bir web sitesi tasarlıyorsunuz ve bu web sitesinin header footer gibi parçaları var.Ve her pakette ayrı ayrı bu kodları yazdığınızı düşünün.Header'da yaptığınız bir değişikliği tüm sayfalarda yapmak zorundasınızdır.Fakat header.jsp'yi include ederseniz,yaptığınız değişikliği tek seferde tüm jsp sayfalarına aktarabilirsiniz...
3.3)Tag Library Directive
Özel tag kütüphaneleri kullanırken yazılır..
Şimdi de taglarımız tek tek ayrıntılı inceleyelim..
-Page Directive-
1)Language
Sayfamızda kullandığımı dili yazmak için kullanılır..
<%@ page language="java"%>
2)Extends
Java SE'dan da bildiğiniz gibi kalıtım özelliğini kullanmak için kullanırız.
<%@page extends="guzelkokar496.blogspot.com"; %>
3)Import
Java'da yararlanacağımız sınıf ve paketleri import page ile yaparız..
<%@page import="java.swing.*,java.awt.*,java.awt.event.*" %> gibi kütüphaneleri import ettik
4)Session
JSP sayfaları arasında eğer oturum nesnelerinden yararlanacaksak page session'u yardımımıza
koşacaktır.
Session çok önemlidir.Büyük projelerin vazgeçilmezidir.
Session iç nesnesi kullanılarak scriptlerler aracılığı ile erişirler.Session kullanıcılar tarafından tekrar tekrar kullanılan Java Beans bazı nesneleri saklamak için gayet elverişlidir..
<%
String nesne=request.getParameter("KullaniciAdi");
session.setAttribute("MerhabaNesne",ortamNesnesi);
%>
5)Buffer
Buffer (tampon) kontolünü sağlamak amacıyla kullanılıyor..Varsayılan deger 8kb.
<%@ page buffer="16kb" %>
6)AutoFlush
JSP sayfalarındaki bufferlar dolduklarında otomatik boşaltılmaları için kullanılır.
<%@page autoFlush="true" %>
7)isThreadSafe
JSP'de çok kanallı çalışan bir uygulama geliştirdiğimizde Servlet tarafında bu çoklu istekleri
tutup eş zamanlı yönetmek için bu tagımızı kullanırız.
<%@page isThreadSafe="true" %>
8)Info
Geliştirilen JSP sayfasının hakkında programcı,versiyon,sahiplik hakkı gibi bilgiler yazılır..
<%@page info="guzelkokar496.blogspot.com,copyright 2018" %>
9)ErrorPage
Herhangi bir hata anından sayfasının bulunduğu URL adresine yönlendirme yapar.Bu tag gerçekten kullanışlıdır.
<%@page errorPage ="/hata/hataBuyuk.jsp"%>
10)IsErrorPage
Bu tag hata sayfasının kendisinde kullanılarak hata meydana geldiğinde gereken bilgileri web tarayıcısında gösterecektir.
<%@ page isErrorPage="true" %>
11)ContentType
Bu tag'ta ülkelerin karakter kodlarını içeriyor..
Bunları ezberlemeye gerek yoktur.Sadece ne yapabileceklerinizi öğrenseniz yeter..
<%@ page contenType="text/html" pageEncoding="UTF-8" %>
Bir sonraki yazımızda 2.Directivi'miz Include 'ye bakacağız...Görüşmek üzere..
Bu taglar sayfaya özel bilgiler ekler.3'ayrı directive tag'ı vardır.Bunlar çok önemli taglardır.Bu örnekleri çözdükçe kendi kendinize küçük küçük uygulamalar yazmaya çalışın.Ben toplama kısmını yazarsam siz çıkarma kısmını yazın.Unutmayın bir dili geliştirmek için o dilde sürekli kod yazmanız gerekiyor.Biraz sabır ile daha zor daha eğlenceli konulara geleceğiz..
3.1)Page Directive
Çalışan JSP sayfasında işlenecek bilgileri tanımlar.
3.2)Include Directive
Dışarıdan harici dosya,web sayfalarını ve kod parçalarını JSP sayfalarımıza dahil etmede kullanılır.Aynı yapı PHP'de de bulunur.2 veya daha fazla PHP sayfasını birleştirmeye yarar.Bu kod kalabalığını önler.Şöyle ki bir web sitesi tasarlıyorsunuz ve bu web sitesinin header footer gibi parçaları var.Ve her pakette ayrı ayrı bu kodları yazdığınızı düşünün.Header'da yaptığınız bir değişikliği tüm sayfalarda yapmak zorundasınızdır.Fakat header.jsp'yi include ederseniz,yaptığınız değişikliği tek seferde tüm jsp sayfalarına aktarabilirsiniz...
3.3)Tag Library Directive
Özel tag kütüphaneleri kullanırken yazılır..
Şimdi de taglarımız tek tek ayrıntılı inceleyelim..
-Page Directive-
1)Language
Sayfamızda kullandığımı dili yazmak için kullanılır..
<%@ page language="java"%>
2)Extends
Java SE'dan da bildiğiniz gibi kalıtım özelliğini kullanmak için kullanırız.
<%@page extends="guzelkokar496.blogspot.com"; %>
3)Import
Java'da yararlanacağımız sınıf ve paketleri import page ile yaparız..
<%@page import="java.swing.*,java.awt.*,java.awt.event.*" %> gibi kütüphaneleri import ettik
4)Session
JSP sayfaları arasında eğer oturum nesnelerinden yararlanacaksak page session'u yardımımıza
koşacaktır.
Session çok önemlidir.Büyük projelerin vazgeçilmezidir.
Session iç nesnesi kullanılarak scriptlerler aracılığı ile erişirler.Session kullanıcılar tarafından tekrar tekrar kullanılan Java Beans bazı nesneleri saklamak için gayet elverişlidir..
<%
String nesne=request.getParameter("KullaniciAdi");
session.setAttribute("MerhabaNesne",ortamNesnesi);
%>
5)Buffer
Buffer (tampon) kontolünü sağlamak amacıyla kullanılıyor..Varsayılan deger 8kb.
<%@ page buffer="16kb" %>
6)AutoFlush
JSP sayfalarındaki bufferlar dolduklarında otomatik boşaltılmaları için kullanılır.
<%@page autoFlush="true" %>
7)isThreadSafe
JSP'de çok kanallı çalışan bir uygulama geliştirdiğimizde Servlet tarafında bu çoklu istekleri
tutup eş zamanlı yönetmek için bu tagımızı kullanırız.
<%@page isThreadSafe="true" %>
8)Info
Geliştirilen JSP sayfasının hakkında programcı,versiyon,sahiplik hakkı gibi bilgiler yazılır..
<%@page info="guzelkokar496.blogspot.com,copyright 2018" %>
9)ErrorPage
Herhangi bir hata anından sayfasının bulunduğu URL adresine yönlendirme yapar.Bu tag gerçekten kullanışlıdır.
<%@page errorPage ="/hata/hataBuyuk.jsp"%>
10)IsErrorPage
Bu tag hata sayfasının kendisinde kullanılarak hata meydana geldiğinde gereken bilgileri web tarayıcısında gösterecektir.
<%@ page isErrorPage="true" %>
11)ContentType
Bu tag'ta ülkelerin karakter kodlarını içeriyor..
Bunları ezberlemeye gerek yoktur.Sadece ne yapabileceklerinizi öğrenseniz yeter..
<%@ page contenType="text/html" pageEncoding="UTF-8" %>
Bir sonraki yazımızda 2.Directivi'miz Include 'ye bakacağız...Görüşmek üzere..
JSP-EXPRESSION TAG
2-EXPRESSION TAG
Bu tagımız JSP'de java kodları yazmamızı sağlıyor.<% %> veya <%= %> şeklinde yazılıyor..
"=" olanında yazarsak sonuna noktalı virgül koymamıza gerek kalmaz..Düz şekilde yazarsak sonuna noktalı virgül eklememiz gerekiyor.Kodumuza göz atalım.
<%--
Document : JspTags
Created on : 15.Şub.2018, 14:04:49
Author : Gökhan
--%>
<%@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>
<%--DECLARATION TAG--%>
<%!
public double sayi=10;
public String Takim="Galatasaray";
%>
<%-- EXPRESSION TAG --%>
<% out.println("Merhaba"); %>
<%= out.println("Merhaba..") %>
<%= new java.util.Date() %>
</body>
</html>
Bu tagımız JSP'de java kodları yazmamızı sağlıyor.<% %> veya <%= %> şeklinde yazılıyor..
"=" olanında yazarsak sonuna noktalı virgül koymamıza gerek kalmaz..Düz şekilde yazarsak sonuna noktalı virgül eklememiz gerekiyor.Kodumuza göz atalım.
<%--
Document : JspTags
Created on : 15.Şub.2018, 14:04:49
Author : Gökhan
--%>
<%@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>
<%--DECLARATION TAG--%>
<%!
public double sayi=10;
public String Takim="Galatasaray";
%>
<%-- EXPRESSION TAG --%>
<% out.println("Merhaba"); %>
<%= out.println("Merhaba..") %>
<%= new java.util.Date() %>
</body>
</html>
JSP-DECLARATION TAG
1-DECLARATION TAG
Declaration tag'lar değişken ve metotları tanımlarken kullanılır.."<%! %>" arasına yazılır.
Bildiğiniz java kodları işte.Yani int sayi; String yazi; Örneğimize bakalım..
<%--
Document : JspTags
Created on : 15.Şub.2018, 14:04:49
Author : Gökhan
--%>
<%@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>
<%--Declaration Tag--%>
<%!
public double sayi=10;
public int a=4;
public String Takim="Galatasaray";
%>
</body>
</html>
Declaration tag'lar değişken ve metotları tanımlarken kullanılır.."<%! %>" arasına yazılır.
Bildiğiniz java kodları işte.Yani int sayi; String yazi; Örneğimize bakalım..
<%--
Document : JspTags
Created on : 15.Şub.2018, 14:04:49
Author : Gökhan
--%>
<%@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>
<%--Declaration Tag--%>
<%!
public double sayi=10;
public int a=4;
public String Takim="Galatasaray";
%>
</body>
</html>
Java Server Page ' GİRİŞ
JSP dinamik web sayfaları hazırlayabileceğimiz,java tabanlı bir web teknolojisidir..
JSP yazmak için ECLİPSE veya NETBEANS'i kurmanız gerekiyor.Daha sonra local bir server'i daha kurmanız gerekiyor.NETBEANS'te bunları plugins edebiliyorsunuz.Ben başlangıç olarak Apachenin TOMCAT'ini kurdum.GlassFish Tomcat gibi bir sürü sunucu var.Herhangi birini kurup işe atılabilirsiniz.Kariyerinizi java üzerine kurmayı düşünüyorsanız.Paylaşacam örnekleri anlayıp kendinizde değişik kaynaklardan çalışmaya başlayın..Java SE'den başlayıp Java EE' ile devam edin..Java çok geniştir.Bende bu yazım ile Java EE'ye geçiş yapmış bulundum.Fakat
Java SE'örnekleri paylaşmaya devam edeceğim.Swing olsun OOP olsun.Zamanım yettiğince paylaşmaya çalışacağım.İyi çalışmalar.
İLK JSP ÖRNEĞİMİZ
İlk örneğimizi kodlarken dikkat edeceğimiz noktalar var.JSP taglarla yazılır.HTML kodları ile birlikte çalışır.Ve bunu yaparken bir sunucuya ihtiyaç duyar.Tıpkı PHP,ASP.NET gibi..Java'da yazdığınız çoğu kodu çalıştırmanız mümkün.Evet şimdi örneğimize bakalım..
<%--
Document : newjsp
Created on : 15.Şub.2018, 13:39:20
Author : Gökhan
--%>
<%@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>Hello World!</h1>
<%@page language="java" %>
<% out.println("Bu benim"); %>
<% out.println("ilk JSP sayfam"); %>
</body>
</html>
JSP yazmak için ECLİPSE veya NETBEANS'i kurmanız gerekiyor.Daha sonra local bir server'i daha kurmanız gerekiyor.NETBEANS'te bunları plugins edebiliyorsunuz.Ben başlangıç olarak Apachenin TOMCAT'ini kurdum.GlassFish Tomcat gibi bir sürü sunucu var.Herhangi birini kurup işe atılabilirsiniz.Kariyerinizi java üzerine kurmayı düşünüyorsanız.Paylaşacam örnekleri anlayıp kendinizde değişik kaynaklardan çalışmaya başlayın..Java SE'den başlayıp Java EE' ile devam edin..Java çok geniştir.Bende bu yazım ile Java EE'ye geçiş yapmış bulundum.Fakat
Java SE'örnekleri paylaşmaya devam edeceğim.Swing olsun OOP olsun.Zamanım yettiğince paylaşmaya çalışacağım.İyi çalışmalar.
İLK JSP ÖRNEĞİMİZ
İlk örneğimizi kodlarken dikkat edeceğimiz noktalar var.JSP taglarla yazılır.HTML kodları ile birlikte çalışır.Ve bunu yaparken bir sunucuya ihtiyaç duyar.Tıpkı PHP,ASP.NET gibi..Java'da yazdığınız çoğu kodu çalıştırmanız mümkün.Evet şimdi örneğimize bakalım..
<%--
Document : newjsp
Created on : 15.Şub.2018, 13:39:20
Author : Gökhan
--%>
<%@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>Hello World!</h1>
<%@page language="java" %>
<% out.println("Bu benim"); %>
<% out.println("ilk JSP sayfam"); %>
</body>
</html>
Bu örneği NETBEANS IDE 8.2 de yazdım.Örnekte JSP taglarının <% ile başlayıp %> ile bittiğini görüyorsunuz..Onun dışında page tag'ı kullanılmış ona daha sonra ayrıntılı bakacağız..
JAVA-OOP BASİT KOMUTLARI GERÇEKLEŞTİREBİLEN BİR ROBOT YAPIMI (ÇOK DAHA FAZLA GELİŞTİRİLEBİLİR)
package robot;
import javax.swing.*;
public class ROBOT {
public String name;
public double R;
public double theta;
public ROBOT(String is){R=0;theta=0;name=is;}
public ROBOT(String is,double Ri){name=is;R=Ri;theta=0;}
public ROBOT(String is,double Ri,double theta_angle){name=is;R=Ri;theta=theta_angle*Math.PI/180.0;}
public ROBOT(ROBOT r1){name=r1.name;R=r1.R;theta=r1.theta;}
public void Turn_North(){theta=Math.PI/2.0;}
public void Turn_South(){theta=3.0*Math.PI/2.0;}
public void Turn_West(){theta=Math.PI;}
public void Turn_East(){theta=Math.PI;}
public void Turn(double angle){theta+=angle*Math.PI/180.0;}
public void Scroll(){R+=1;}
public void Scroll(double Ri){R+=Ri;}
public void go_back(){R-=1;}
public void go_back(double Ri){R-=Ri;}
public String output(){
String s="------------"+name+"---------------\n";
s+="Cartesian coordinates x = "+R*Math.sin(theta)+" y = "+R*Math.cos(theta)+" \n";
s+="Polar coordinates R = "+R+" Theta angle = "+theta*180/Math.PI+" \n";
return s;
}
public static void main(String[] args) {
ROBOT R2D2=new ROBOT("aRtuDitu");
ROBOT z2=new ROBOT("GOKHAN",1.0,90.0);
ROBOT z3=new ROBOT(R2D2);
String s="";
R2D2.Turn_North();R2D2.Scroll();s+=R2D2.output();
R2D2.Turn_West();R2D2.Scroll(2.0);s+=R2D2.output();
z2.Turn_East();z2.Scroll(3.0);s+=z2.output();
z2.Turn_South();z2.Scroll();s+=z2.output();
s+="Copy Robot z3 : "+z3.output();
JOptionPane.showMessageDialog(null,s, "Robot class test",JOptionPane.PLAIN_MESSAGE);
}
}
Kaydol:
Kayıtlar (Atom)
Spring Boot Uygulamasını Heroku üzerinde Deploy Etme
Bu yazımızda sizlere spring boot ile yazılmış basit bir Rest api'nin heroku üzerinde nasıl deploy edebileceğimizi göstereceğim. Önce ...
-
Bu yazımda hobi olarak ilgilendiğim bug bounty'i anlatmaya çalışacağım. Daha sonra bu konu üzerinde kendimizi geliştirmek için neler yap...
-
Flip-Flop doğruluk tabloları girişlerin durumuna bağlı olarak çıkışların ne olması gerektiğini anlatan tablolardır. Kısaca bir doğruluk tabl...