Ini adalah aplikasi sederhana yang bertujuan untuk membuat layanan web lengkap menggunakan tomcat dan jersey tertanam, untuk informasi konfigurasi menggunakan file yml. Aplikasi ini juga menggunakan Template JSP dan Freemarker yang diberikan melalui Panggilan API REST. Ini terutama berfokus untuk mendaftarkan instance objek ke ResourceConfig alih -alih mendaftarkan kelas.
Aplikasi membuat dua jalur konteks Tomcat. Satu untuk titik akhir API penuh IST adalah /api dan satu lagi untuk halaman web adalah /webapp yang langsung dimuat dari Tomcat Webapp Base Directory Location /src/main/webapp .
File base = new File("src/main/webapp");
Context context = tomcat.addContext("/api", base.getAbsolutePath());
tomcat.addWebapp(null, "/webapp", base.getAbsolutePath());
Aplikasi ini menggunakan file YML untuk konfigurasi aplikasi. Pertama baca konfigurasi.yml file dan lewati konfigurasi ke aplikasi.
#configuration.yml
#setting server configuration
server:
port: 9292
#configure user name
user: "eigenharsha"
ResourceConfig adalah perpanjangan dari kelas aplikasi JAX-RS tetapi menyediakan beberapa metode pendaftaran untuk membuat sumber daya pendaftaran dan penyedia lebih ramah. Sumber Daya Terdaftar Applciation Ini Melalui Contoh Kelas Menggunakan public ResourceConfig register(Object component) .
JSPMVCFeature dan freemarkermvcfeature yang digunakan untuk Template JSP dan Freemarker, HTML/Angular/JavaScript yang langsung dimuat di browser web.
final ResourceConfig config = new ResourceConfig()
.packages(Main.class.getPackage().getName())
.register(new Resource(new Core(), configuration)) // create instance of Resource and dynamically register
.register(JspMvcFeature.class) // register jspMVC
.register(FreemarkerMvcFeature.class) // register FreemarkerMVC
.property(ServletProperties.FILTER_FORWARD_ON_404, true);
return new ServletContainer(config);
Tutorial mendalam untuk API terprogram untuk sumber daya bangunan tersedia di sini.
Proyek ini membutuhkan Maven.
$ git clone https://github.com/eigenharsha/jersey-mvc-jsp-freemarker-with-embedded-tomcat.git
$ cd jersey-mvc-jsp-freemarker-with-embedded-tomcat
$ mvn clean install
Saya membuat Procfile untuk ditempatkan di Heroku. Tutorial mendalam untuk digunakan di Heroku tersedia di sini.
$ web: sh target/bin/webapp
Saat aplikasi ini digunakan maka kami akan dapat mengakses layanan istirahat ini
| Sumber | Titik akhir |
|---|---|
| Sumber daya yang dibuat secara dinamis dipanggil | http: // localhost: 9292/API/sumber daya |
| Ambil informasi pengguna dari file YML | http: // localhost: 9292/API/sumber daya/pengguna |
| Template Freemarker | http: // localhost: 9292/API/sumber daya/freemarker |
| Template JSP | http: // localhost: 9292/API/sumber daya/jsp |
| Halaman html | http: // localhost: 9292/webapp/index.html |
Pertanyaan atau saran? Tolong jangan ragu untuk mengirim email kepada saya di [email protected]