Jika Anda memiliki pemahaman yang baik tentang HTML, CSS, dan JavaScript, Anda memiliki kaki di banyak orang yang akhirnya melakukan pengembangan web. Konsep di balik JSP sangat mirip dengan PHP. Keunikannya berbeda. Servlet adalah nama untuk sepotong kode Java yang melayani permintaan. Itu benar-benar. Seluruh kerangka kerja Struts asli adalah servlet tunggal.
Saya akan menambahkan Tomcat atau Jetty ke daftar teknologi Anda untuk belajar. Tomcat adalah implementasi Java Servlet Container asli dan kebetulan juga merupakan server web berfitur lengkap dan agak populer. GlassFish dibangun di atasnya. Saya telah menggunakan Jetty daripada Tomcat dalam proyek-proyek baru saya karena lebih sederhana, lebih fleksibel, dan lebih cepat. Jetty dirancang untuk membuat layanan web yang bertentangan dengan aplikasi web. Tetapi aplikasi web hanyalah layanan web yang menyajikan HTML sebagai respons terhadap permintaan HTTP mentah, jadi jika Anda memahami HTTP (yang dapat Anda pelajari bagian-bagian penting dalam beberapa jam hingga sehari), ini sangat mudah untuk dikerjakan.
Anda dapat membuat situs web kecil dengan Tomcat dan JSP ( tutorial di sini atau JSF) mengetahui apa yang Anda ketahui dan menghabiskan beberapa jam melalui tutorial. Dengan begitu Anda bisa mulai di mana Anda merasa nyaman sebelum berbaring. Kemudian buat javax.servlet.http.HttpServlet yang menulis "<html> <head> <title> Hai </title> </head> <body> <h1> Hello World </h1> </body> </ html > "ke objek respons, daftarkan di Tomcat web.xml Anda dan kirim permintaan HTTP dari browser web. Itu bukan ilmu roket. Semua kerangka kerja Java adalah variasi dari dua aktivitas dasar tersebut.
Jika Anda pergi ke rute Dermaga, itu bahkan kurang terstruktur. Lihatlah contoh Hello Jetty ini .
Jika Anda hanya akan membuat blog atau situs e-commerce standar, saya akan mulai dengan SquareSpace atau Wordpress atau sesuatu. Anda mendapatkan begitu banyak dari rak, tidak ada cara untuk membenarkan pengkodean kustom semua itu lagi.
Kekuatan Java untuk aplikasi web adalah keandalannya, rawatannya, dan kinerjanya. PHP atau Ruby / Rails lebih sederhana, tetapi Java akan skala sebanyak yang Anda inginkan. Saya tidak terpesona oleh salah satu kerangka kerja web Java. Ketika Anda memiliki tim orang yang bekerja pada aplikasi web besar, atau Anda perlu menggunakan Hibernate, maka kerangka kerja seperti Spring benar-benar bersinar. Musim semi adalah yang paling populer. Ketika Anda memiliki sedikit pengetahuan tentang servlets dan JSP / JSF, maka pelajari bagaimana Spring mengikat mereka bersama dengan model data.
Jika Anda membuat blog atau sistem manajemen konten, mungkin Anda bisa lolos dengan database NoSQL. Tapi saya berpendapat bahwa database NoSQL pada dasarnya hanya lapisan caching pada sistem file, daripada mengganti database relasional. Saya pikir itu jarang bahwa proyek yang cocok untuk database NoSQL akan sesuai untuk dikembangkan di Jawa.
Hal-hal yang masih memerlukan kustom, kode kinerja tinggi (dalam Java, PHP, apa pun) mungkin akan memiliki basis data relasional / SQL yang mendukungnya. Saya akan merekomendasikan Anda untuk terbiasa dengan SQL dan JDBC (Java Database Connectivity) terlebih dahulu. Setelah Anda merasa nyaman dengan dunia objek Java, dan dunia database relasional dan SQL, maka Anda dapat mempelajari Ebean / JPA (Java Persistence API) / ORM (Object to Relational Mapping) yang menghubungkan dunia objek ke dunia relasional.
ORM rumit dan aneh. Sebagian besar akhirnya sepadan dengan perjuangan. Ebean adalah yang paling sederhana yang saya tahu. Saya lebih nyaman dengan itu setelah 8 bulan daripada saya dengan Hibernate setelah 12 tahun. Saya tahu banyak orang yang menggunakan Spring dengan Hibernate dan mereka tampaknya tidak memiliki masalah, atau bahkan sangat menyadari apa itu Hibernate, jadi saya akan mengatakan jika Anda akan menggunakan Hibernate, lakukan melalui Spring. Mungkin hanya karena saya sudah bekerja lebih lama, saya berhasil mematikan Hibernate dengan beberapa peta hash untuk pengujian, yang mengagumkan (tinjauan umum tersedia berdasarkan permintaan).
Anda sudah memiliki beberapa keterampilan paling penting. Ambil yang lain satu per satu dan cobalah untuk tidak kewalahan.