Cara menggunakan objek Respons dalam Java Servlet
Antara muka
Servlet Response
ServletResponse
menyediakan satu siri kaedah untuk menetapkan dan mendapatkan maklumat respons HTTP. Contoh ServletResponse
mewakili respons HTTP, dan respons ini boleh mengandungi beberapa HTML dan kandungan lain serta beberapa maklumat status, seperti kod status HTTP dan maklumat pengepala.
Badan respons
Menggunakan antara muka ServletResponse
, anda boleh menghantar badan respons kepada pelanggan dengan mudah. Badan respons ialah kandungan utama respons HTTP dan boleh berupa HTML, CSS, JavaScript, teks atau jenis data lain. Berikut ialah beberapa kaedah yang biasa digunakan:
void setContentType(String type)
: Tetapkan jenis badan tindak balas. Contohnya, jika anda ingin mengembalikan kandungan HTML, anda boleh menggunakantext/html
sebagai nilaitype
.void setCharacterEncoding(String encoding)
: Tetapkan pengekodan aksara badan respons. Contohnya, jika anda ingin mengembalikan kandungan HTML yang dikodkan UTF-8, anda boleh menggunakanUTF-8
sebagai nilaiencoding
.PrintWriter getWriter()
: Dapatkan contohPrintWriter
untuk menghantar data aksara kepada pelanggan.ServletOutputStream getOutputStream()
: Mendapat contohServletOutputStream
untuk menghantar bait data kepada pelanggan.
Berikut ialah contoh kod yang akan menghantar respons dengan kandungan HTML kepada klien:
@WebServlet("/example") public class ExampleServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Example Servlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h2>Hello, world!</h2>"); out.println("</body>"); out.println("</html>"); } }
Dalam kod di atas, kami mula-mula menggunakan response.setContentType("text/html")
Kaedah menetapkan jenis badan respons kepada HTML. Kemudian, kami menggunakan kaedah response.setCharacterEncoding("UTF-8")
untuk menetapkan pengekodan aksara badan tindak balas kepada UTF-8. Seterusnya, kami menggunakan kaedah response.getWriter()
untuk mendapatkan contoh PrintWriter
, dan kemudian menggunakan kaedah out.println()
untuk menghantar kandungan HTML kepada klien.
Pengepala Respons
Selain badan respons, respons HTTP juga boleh mengandungi beberapa metadata, seperti maklumat pengepala respons. Maklumat pengepala respons menyediakan beberapa maklumat tambahan tentang respons, seperti jenis badan respons, pengekodan aksara, masa tamat tempoh, dsb. Menggunakan antara muka ServletResponse
, anda juga boleh menetapkan dan mendapatkan maklumat pengepala respons dengan mudah. Berikut ialah beberapa kaedah yang biasa digunakan:
void setHeader(String name, String value)
: Tetapkan maklumat pengepala respons. Contohnya, jika anda ingin menetapkan pengepalaContent-Disposition
, anda boleh menggunakanContent-Disposition
sebagai nilainame
danattachment; filename="example.txt"
sebagai nilaivalue
.void addHeader(String name, String value)
: Tambahkan maklumat pengepala respons. Contohnya, jika anda ingin menambah pengepalaCache-Control
, anda boleh menggunakanCache-Control
sebagai nilainame
danno-cache
sebagai nilaivalue
.void setIntHeader(String name, int value)
: Tetapkan maklumat pengepala respons, nilainya ialah integer. Contohnya, jika anda ingin menetapkan pengepalaContent-Length
, anda boleh menggunakanContent-Length
sebagai nilainame
dan saiz fail sebagai nilaivalue
.void addIntHeader(String name, int value)
: Tambahkan maklumat pengepala respons, nilainya ialah integer. Contohnya, jika anda ingin menambah pengepalaExpires
, anda boleh menggunakanExpires
sebagai nilainame
dan cap masa sebagai nilaivalue
.String getHeader(String name)
: Dapatkan maklumat pengepala respons bagi nama yang ditentukan. Contohnya, jika anda ingin mendapatkan maklumat pengepalaContent-Type
, anda boleh menggunakanContent-Type
sebagai nilainame
.Collection<String> getHeaders(String name)
: Dapatkan semua maklumat pengepala respons bagi nama yang ditentukan. Contohnya, jika anda ingin mendapatkan maklumat pengepalaSet-Cookie
, anda boleh menggunakanSet-Cookie
sebagai nilainame
.int getIntHeader(String name)
: Dapatkan maklumat pengepala respons integer bagi nama yang ditentukan. Contohnya, jika anda ingin mendapatkan maklumat pengepalaContent-Length
, anda boleh menggunakanContent-Length
sebagai nilainame
.
Status Respons
Status respons merujuk kepada kod status respons HTTP, yang menunjukkan hasil pemprosesan permintaan pelayan. Menggunakan antara muka ServletResponse
, anda juga boleh menetapkan kod status respons. Berikut ialah beberapa kod status yang biasa digunakan:
200
: Menunjukkan bahawa permintaan itu berjaya dan pelayan telah mengembalikan data yang diminta.302
: Menunjukkan bahawa sumber yang diminta telah dialihkan ke lokasi baharu dan lokasi baharu telah dikembalikan dalam maklumat pengepala respons.404
: Menunjukkan bahawa sumber yang diminta tidak wujud.500
: Menunjukkan bahawa ralat berlaku semasa pelayan sedang memproses permintaan.
设置响应状态码的方法如下:
void setStatus(int sc)
:设置响应状态码。例如,如果要设置状态码为 200
,则可以使用 setStatus(200)
。
示例代码
下面是一个示例代码,该代码会向客户端发送一个包含 HTML 内容的响应,并设置响应头信息和状态码:
@WebServlet("/example") public class ExampleServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); response.setStatus(HttpServletResponse.SC_OK); response.setHeader("Cache-Control", "no-cache"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Example Servlet</title>"); out.println("</head>"); out.println("<body>"); out.println("<h2>Hello, world!</h2>"); out.println("</body>"); out.println("</html>"); } }
在上面的代码中,我们使用 HttpServletResponse.SC_OK
设置响应状态码为 200
。然后,我们使用 response.setHeader("Cache-Control", "no-cache")
方法设置 Cache-Control
头信息为 no-cache
。最后,我们使用 out.println()
方法向客户端发送 HTML 内容。
Atas ialah kandungan terperinci Cara menggunakan objek Respons dalam Java Servlet. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Dalam artikel ini, kami telah menyimpan Soalan Temuduga Spring Java yang paling banyak ditanya dengan jawapan terperinci mereka. Supaya anda boleh memecahkan temuduga.

Java 8 memperkenalkan API Stream, menyediakan cara yang kuat dan ekspresif untuk memproses koleksi data. Walau bagaimanapun, soalan biasa apabila menggunakan aliran adalah: bagaimana untuk memecahkan atau kembali dari operasi foreach? Gelung tradisional membolehkan gangguan awal atau pulangan, tetapi kaedah Foreach Stream tidak menyokong secara langsung kaedah ini. Artikel ini akan menerangkan sebab -sebab dan meneroka kaedah alternatif untuk melaksanakan penamatan pramatang dalam sistem pemprosesan aliran. Bacaan Lanjut: Penambahbaikan API Java Stream Memahami aliran aliran Kaedah Foreach adalah operasi terminal yang melakukan satu operasi pada setiap elemen dalam aliran. Niat reka bentuknya adalah

Panduan untuk TimeStamp to Date di Java. Di sini kita juga membincangkan pengenalan dan cara menukar cap waktu kepada tarikh dalam java bersama-sama dengan contoh.

Kapsul adalah angka geometri tiga dimensi, terdiri daripada silinder dan hemisfera di kedua-dua hujungnya. Jumlah kapsul boleh dikira dengan menambahkan isipadu silinder dan jumlah hemisfera di kedua -dua hujungnya. Tutorial ini akan membincangkan cara mengira jumlah kapsul yang diberikan dalam Java menggunakan kaedah yang berbeza. Formula volum kapsul Formula untuk jumlah kapsul adalah seperti berikut: Kelantangan kapsul = isipadu isipadu silinder Dua jumlah hemisfera dalam, R: Radius hemisfera. H: Ketinggian silinder (tidak termasuk hemisfera). Contoh 1 masukkan Jejari = 5 unit Ketinggian = 10 unit Output Jilid = 1570.8 Unit padu menjelaskan Kirakan kelantangan menggunakan formula: Kelantangan = π × r2 × h (4

PHP dan Python masing -masing mempunyai kelebihan sendiri, dan pilihannya harus berdasarkan keperluan projek. 1.Php sesuai untuk pembangunan web, dengan sintaks mudah dan kecekapan pelaksanaan yang tinggi. 2. Python sesuai untuk sains data dan pembelajaran mesin, dengan sintaks ringkas dan perpustakaan yang kaya.

PHP adalah bahasa skrip yang digunakan secara meluas di sisi pelayan, terutamanya sesuai untuk pembangunan web. 1.PHP boleh membenamkan HTML, memproses permintaan dan respons HTTP, dan menyokong pelbagai pangkalan data. 2.PHP digunakan untuk menjana kandungan web dinamik, data borang proses, pangkalan data akses, dan lain -lain, dengan sokongan komuniti yang kuat dan sumber sumber terbuka. 3. PHP adalah bahasa yang ditafsirkan, dan proses pelaksanaan termasuk analisis leksikal, analisis tatabahasa, penyusunan dan pelaksanaan. 4.Php boleh digabungkan dengan MySQL untuk aplikasi lanjutan seperti sistem pendaftaran pengguna. 5. Apabila debugging php, anda boleh menggunakan fungsi seperti error_reporting () dan var_dump (). 6. Mengoptimumkan kod PHP untuk menggunakan mekanisme caching, mengoptimumkan pertanyaan pangkalan data dan menggunakan fungsi terbina dalam. 7

Java ialah bahasa pengaturcaraan popular yang boleh dipelajari oleh pembangun pemula dan berpengalaman. Tutorial ini bermula dengan konsep asas dan diteruskan melalui topik lanjutan. Selepas memasang Kit Pembangunan Java, anda boleh berlatih pengaturcaraan dengan mencipta program "Hello, World!" Selepas anda memahami kod, gunakan gesaan arahan untuk menyusun dan menjalankan program, dan "Hello, World!" Pembelajaran Java memulakan perjalanan pengaturcaraan anda, dan apabila penguasaan anda semakin mendalam, anda boleh mencipta aplikasi yang lebih kompleks.

Spring Boot memudahkan penciptaan aplikasi Java yang mantap, berskala, dan siap pengeluaran, merevolusi pembangunan Java. Pendekatan "Konvensyen Lebih Konfigurasi", yang wujud pada ekosistem musim bunga, meminimumkan persediaan manual, Allo
