Rumah >Java >javaTutorial >Menggunakan Jetty6 untuk pemprosesan pelayan Web dalam pembangunan API Java

Menggunakan Jetty6 untuk pemprosesan pelayan Web dalam pembangunan API Java

王林
王林asal
2023-06-18 08:09:06989semak imbas

Dalam pembangunan API Java, menggunakan pelayan web adalah langkah penting. Jetty 6 ialah pelayan web yang ringan dan boleh dibenamkan yang boleh menyediakan perkhidmatan HTTP yang cekap. Artikel ini akan memperkenalkan secara terperinci cara menggunakan Jetty6 untuk pemprosesan pelayan web dalam pembangunan API Java.

1. Persediaan persekitaran

Untuk menggunakan Jeti 6, anda perlu memuat turun pakej pemasangan Jeti 6 dahulu dan mengekstraknya ke mana-mana direktori. Kemudian, anda perlu menambah perpustakaan Jetty 6 pada Classpath projek anda. Ini boleh dilakukan melalui editor Eclipse, klik kanan projek, pilih Properties > Java Build Path >

2. Cipta projek Jetty 6 Servlet

Untuk menunjukkan cara menggunakan Jetty6 untuk pemprosesan pelayan Web dalam pembangunan API Java, kami akan mencipta HttpServlet yang mudah dan menggunakannya dalam Jetty 6 . Langkah-langkah khusus adalah seperti berikut:

  1. Buat projek baharu: Cipta projek Web Java baharu dalam Eclipse. Pilih Fail > Projek Baru > pilih Web >
  2. Tambah pergantungan Servlet: klik kanan projek, pilih Laluan Binaan Java Properties >, dalam tab Perpustakaan, klik butang Tambah Pustaka..., pilih Masa Jalan Pelayan, kemudian pilih Jeti 6, dan klik Selesai untuk melengkapkan penambahan.
  3. Menulis kelas Servlet: Cipta kelas Servlet baharu dalam direktori src, warisi HttpServlet dan laksanakan kaedah doGet. Kod khusus adalah seperti berikut:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet {
    
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        response.getWriter().println("<h1>Hello Jetty6!</h1>");
    }
}
  1. Konfigurasikan Servlet: Buat fail web.xml baharu dalam direktori /WEB-INF dan tambah maklumat konfigurasi Servlet. Kod khusus adalah seperti berikut:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
</web-app>
  1. Jalankan projek: klik kanan projek, pilih Jalankan Sebagai > klik Seterusnya, dan kemudian klik Selesai Tunggu Jeti 6 untuk dimulakan.
  2. Uji projek: Lawati http://localhost:8080/project name/hello dalam penyemak imbas untuk melihat halaman HelloWorld.

3. Penjelasan terperinci konfigurasi Jeti 6

Konfigurasi Jeti 6 sangat fleksibel dan boleh dikonfigurasikan melalui fail XML dan kod Java. Di bawah ini kami akan memperkenalkan beberapa item konfigurasi biasa Jeti 6.

  1. Port mula

Anda boleh menentukan port permulaan Jeti 6 dengan mengkonfigurasi fail start.ini, lalainya ialah port 8080. Nombor port boleh diubah suai dengan mengubah suai pembolehubah jetty.port dalam fail start.ini. Contohnya:

--exec
-exec ./bin/jetty.sh $ARGS

jetty.port=80
  1. Konfigurasi servlet

Konfigurasi Servlet Jeti 6 boleh dikonfigurasikan melalui fail web.xml. Tambahkan fail web.xml dalam direktori /WEB-INF, dan kemudian tambah item konfigurasi servlet dan servlet-mapping. Contohnya:

<servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/hello</url-pattern>
</servlet-mapping>
  1. Konfigurasi HTTPS

Jetty 6 menyokong protokol HTTPS dan HTTPS boleh didayakan dengan mengkonfigurasi fail jetty.xml. Mula-mula, tambah jetty-sslengine.jar ke perpustakaan Jetty 6, kemudian buat fail jetty.xml dalam direktori /etc dan tambah kandungan berikut:

<Configure id="Server" class="org.eclipse.jetty.server.Server">
    <Call name="addConnector">
        <Arg>
            <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
                <Arg><Ref id="Server"/></Arg>
                <Set name="port">8443</Set>
                <Set name="maxIdleTime">30000</Set>
                <Set name="keystore"><SystemProperty name="jetty.home" default="."/>/etc/keystore</Set>
                <Set name="password">OBF:1vv71ue910871we0v8123</Set>
                <Set name="keyPassword">OBF:1vv71ue910871we0v8123</Set>
                <Set name="truststore"><SystemProperty name="jetty.home" default="."/>/etc/truststore</Set>
                <Set name="trustPassword">OBF:1vv71ue910871we0v8123</Set>
            </New>
        </Arg>
    </Call>
</Configure>

Dalam konfigurasi di atas, port 443 digunakan untuk mengendalikan Permintaan HTTPS, stor kunci, kata laluan, stor amanah dan kata laluan amanah digunakan untuk pengurusan sijil dan kunci.

  1. Konfigurasi log

Konfigurasi log Jeti 6 boleh dikonfigurasikan dengan menambahkan parameter --log dalam fail start.ini. Contohnya:

--exec
-exec ./bin/jetty.sh $ARGS

jetty.port=80

--log logs/yyyy_mm_dd.request.log
--log logs/yyyy_mm_dd.info.log
--log logs/yyyy_mm_dd.debug.log

Dalam konfigurasi di atas, logs/yyyy_mm_dd.request.log, logs/yyyy_mm_dd.info.log dan logs/yyyy_mm_dd.debug.log digunakan untuk merekodkan log permintaan, log maklumat dan log nyahpepijat masing-masing.

Ringkasan

Artikel ini memperincikan cara menggunakan Jetty 6 untuk pemprosesan pelayan web dalam pembangunan API Java. Melalui mengkaji artikel ini, kami boleh mencipta projek Jetty 6 Servlet dalam Eclipse, menguasai item konfigurasi biasa Jeti 6 dan membangunkan perkhidmatan Web yang cekap dengan mudah.

Atas ialah kandungan terperinci Menggunakan Jetty6 untuk pemprosesan pelayan Web dalam pembangunan API Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn