Java görünümü teknolojileri ve çerçeveler - Java view technologies and frameworks
Java görünümü teknolojiler ve çerçeveler vardır web tabanlı yazılım kütüphaneleri sağlamak kullanıcı arabirimini veya " view-katmanı arasında", Java web uygulamaları . Bu tür uygulama yapıları tanımlamak için kullanılan web sayfaları ve taşıma HTTP isteğinde web sayfalarına tarafından üretilen (tıklama). Bir alt kategori olarak , web çerçeveler , görüntüleme tabaka çerçeveleri çoğunlukla Java web uygulamaları için diğer işlevsellik sağlayan web çerçeveler ile değişen derecelerde üst üste gelir.
Java görünüşüdür katmanlı çerçeveler genellikle bazı veya tüm destek İstem model görüntü kontrol tasarım örneği.
içindekiler
bir bakışta
| Eylem tabanlı çerçeveler: | Apache Struts , Spring MVC |
|---|---|
| Bileşen tabanlı çerçeveler: | Apache tıklayın , Apache Goblen , Apache Wicket , JavaServer Yüzler |
| Web şablon sistemleri: | Apache Fayans , SiteMesh , Thymeleaf |
- JavaServer Faces (JSF), Apache Goblen ve Apache Wicket abstracting bileşen tabanlı teknolojiler yarışıyor vatansız HTTP istek-yanıt döngüsü ve Java Servlet API bir arkasında nesne yönelimli , olay odaklı bileşen model.
- Bunun aksine, destek ve Spring MVC Çerçeve ince sağlayan eylem odaklı çerçevelerdir soyutlama katmanı sunucu uygulaması üzerinde API .
- Apache Fayans Struts ile çalışmak üzere tasarlanmış bir şablon çerçevesidir.
- Facelet'lerin JSF ile çalışmak üzere tasarlanmış bir görünüm tanımı ve şablon teknolojisidir.
- SiteMesh herhangi biriyle kullanılabilir JSP .
- Facelet'lerin, Goblen ve Wicket dayalı kendi şablon yaklaşımlara sahip bir HTML / XHTML .
- Apaçi tıklayın HTML tabanlı kullanan Apache Velocity şablonları ve Düz Eski Java Nesneleri ile, JavaServer Sayfaları isteğe bağlı.
Servlet API
Servlet API neredeyse tüm Java Web Görünümü teknolojilerinin temelidir. Servlet Java yazmak için temel mekanizma sağlar sınıfları web uygulamaları için. Servlet, HTTP isteklerine yanıt çerezleri oluşturup oturumları koruyabilirsiniz.
Java Server Pages (JSP)
- Servlet API üstüne inşa edilen JSP metin içerik birçok formları üretebilir bir belge tabanlı, etiket tabanlı şablonları, sunucu programlama modeli sağlar.
- Java kodu JSP dosyalarında gömülü olabilir ve derlenmiş ve bir istek alındığında yürütülür.
Apache Struts
- Struts bir sağlar ayırımı Kontrolörü ve View.
- İstekler gösterilecek görüntüle hangi karar verebilir bir Java sınıfı (Controller) tarafından alınır.
- Gerçek Görünüm vb JSP, ücretsiz işaretleyici şablonuna, hız şablon gibi, farklı bakış teknolojilerinde yazılabilir
- Bir XML yapılandırma dosyası "Sayfa Navigasyon" belirtmek için kullanılır, uygun Denetleyicisi için istek akışını ve hangi View Controller sonucuna dayalı olarak gösterilecek yani.
- Rakip : Spring MVC, Grails
Apache Goblen
- Bir bileşen tabanlı görünüşüdür çerçevesi.
- Sınıflar zamanında dönüştürülmüş POJOs ve bayt kodu olarak yazılır
- Ek açıklamalar ve adlandırma kuralları yerine XML ile Yapılandırılmış
- JSP'lerden ile karşılaştırıldığında, net bir ayrılmasını zorlar HTML işaretlemesi ve Java kodu.
- HTML şablonları doğrudan web tasarımcıları tarafından önceden görülebilir
- Değiştirilen bileşen sınıfları canlı yeniden hızlı gelişimi için uygulamayı çalıştıran içine bulunmaktadır.
- Kullanımları Post / redirect / Al Form gönderme işlemi için navigasyon desen.
- Rakip : Wicket, JSF, HybridJava
Apache Wicket
- Bir bileşen tabanlı görünüşüdür çerçevesi.
- Sayfalar doğrudan sunucu üzerinde durum bilgisi Java bileşenleri ile etkileşime girerler.
- Bileşenler ve bunların devlet durumunu yönetmek için doğrudan HttpSession kullanmak zorunda uygulama geliştirici kurtararak, Wicket çerçevesi tarafından yönetilir.
- yapılandırma için XML gerektirmez.
- JSP'lerden ile karşılaştırıldığında, net bir ayrılmasını zorlar HTML işaretlemesi ve Java kodu.
- Web sayfası bileşenleri kodundan HTML kodunuzun içine 'itilmiş' vardır.
- Rakip : Goblen, MTU, HybridJava
JavaSunucu Yüzler (MTU) ve Facelet'lerin
- bileşen tabanlı görünüşüdür çerçeveleri için bir belirtim.
- Mojarra Apache MyFaces uygulamalar mevcuttur
- Tipik haliyle, XML / XHTML tabanlı şablonu için Facelets kullanır.
- Sınıflar sayfası ve bileşen şablonları ile ilişkilendirmek için kullanılan ek açıklamalar veya XML yapılandırma dosyaları ile, POJOs olarak yazılır.
- Birleştirilmiş İfade Dil POJO fasulye özellikleri ve yöntemlere bileşen alanları ve olayları bağlayıcı sağlar.
- Dönüşüm ve doğrulama kısıtlamaları Facelets belirtilebilir ve otomatik normalde arıza durumunda hata bilgilerle aynı sayfanın yeniden paylaşılması sonuçlanan uygulanır.
- Navigasyon yapılandırma dosyası kuralları aracılığıyla olabilir ya doğrudan sayfaya belirtilen olabilir.
- Şeffaf destekleyebilir Ajax .
- Rakip : Wicket, Goblen
SiteMesh
- SiteMesh "Dekorasyon" modeline dayanan bir HTML şablon çerçevesidir.
- Daha sonra yeni bir HTML oluşturmak için başka HTML uygulanan bir 'dekorasyon' şablon oluşturulmasına olanak tanır.
- Yeni oluşturulan HTML şablonuna harmanlanmış orijinal HTML öğeler içeriyor.
- orijinal HTML çok basit ve herhangi bir biçimlendirme veya düzen şartnamenin yoksun olması için bu izin verir. Şablon, sırayla, herhangi bir gerçek bilgi yoksundur.
- İki harmanlayan tutarlı sağlayan görünüm ve his herkes için web sayfaları .
- Rakip : Fayans
Kıvılcım
- Basit bir yönlendirme sistemi etrafında inşa edilmiş bir mikro web çerçevesi Spark
- Bir gömülü üzerinde çalışan İskele varsayılan olarak web sunucusu, ancak diğer sunucular üzerinde çalışacak şekilde yapılandırılabilir.
- : Üç farklı şablonlar motorları destekler Hız , FreeMarker ve Bıyık
- Bu hızlı gelişimini kolaylaştırmayı amaçlayan ve ek açıklamalar veya tescilli çözümlerin kullanımı yapmaz.