Kā izvēlēties doGet(), doPost() un service() metožu ignorēšanu?

0
10769

Atšķirības starp doGet() un doPost() metodes ir tādas, ka tās tiek sauktas HttpServlet ka jūsu servlets sniedzas par to service() metodi, kad tā saņem GET vai POST pieprasījumu no HTTP protokola pieprasījuma.

GET pieprasījums ir pieprasījums iegūt resursu no servera. Šis ir gadījums, kad pārlūkprogramma pieprasa tīmekļa lapu. Pieprasījumā ir iespējams norādīt arī parametrus, taču parametru garums kopumā ir ierobežots. Šis ir tīmekļa lapas veidlapas gadījums, kas HTML kodā ir deklarēts šādi: vai .

POST pieprasījums ir pieprasījums publicēt (nosūtīt) veidlapas datus servera resursā. Šis ir tīmekļa lapas veidlapas gadījums, kas HTML kodā ir deklarēts šādi: . Šajā gadījumā parametru lielums var būt daudz lielāks.

The GenericServlet ir service() metode, kas tiek izsaukta, kad tiek veikts klienta pieprasījums. Tas nozīmē, ka to izsauc gan ienākošie pieprasījumi, gan HTTP pieprasījumi tiek sniegti servletam tāda, kāda tā ir (parsēšana jāveic pašam).

The HttpServlet tā vietā ir doGet() un doPost() metodes, kas tiek izsauktas, kad klienta pieprasījums ir GET vai POST. Tas nozīmē, ka pieprasījuma parsēšanu veic servlet: jums ir izsaukta atbilstošā metode un ir ērtas metodes pieprasījuma parametru nolasīšanai.

PIEZĪME: doGet() un doPost() metodes (kā arī citas HttpServlet metodes) sauc par service() metode.

Nobeigumā, ja jums ir jāatbild uz HTTP protokola klienta (parasti pārlūkprogrammas) veiktajiem GET vai POST pieprasījumiem, nevilcinieties pagarināt HttpServlet un izmantojiet tās ērtās metodes.
Ja jums ir jāatbild uz klienta, kas neizmanto HTTP protokolu, pieprasījumiem, jums ir jāizmanto service().