package?servlet;
import?java.io.IOException;
import?java.io.PrintWriter;
import?javax.servlet.ServletException;
import?javax.servlet.http.HttpServlet;
import?javax.servlet.http.HttpServletRequest;
import?javax.servlet.http.HttpServletResponse;
//繼承于HttpServlet
public?class?HelloServlet?extends?HttpServlet?{
????@Override
????protected?void?doGet(HttpServletRequest?request,?HttpServletResponse?response)
????????????throws?ServletException,?IOException?{
????????
????????System.out.println("使用get()方式訪問servlet");
????????PrintWriter?out?=?response.getWriter();
????????response.setContentType("text/html;charset=utf-8");
????????out.println("<strong>使用get方式訪問servlet<strong/>");
????}
????@Override
????protected?void?doPost(HttpServletRequest?request,?HttpServletResponse?response)
????????????throws?ServletException,?IOException?{
????????
????????System.out.println("使用post()方式訪問servlet");
????????PrintWriter?out?=?response.getWriter();
????????response.setContentType("text/html;charset=utf-8");
????????out.println("<strong>使用post方式訪問servlet<strong/>");
????}
}
//index.jsp
<%@?page?language="java"?contentType="text/html;?charset=UTF-8"
????pageEncoding="UTF-8"%>
<!DOCTYPE?html?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN"?"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8">
<title>Insert?title?here</title>
</head>
<body>
<a?href="servlet/HelloServlet">使用get方式訪問servlet</a>
<form?action="servlet/HelloServlet"??method=“post”>
????<input?type="submit"??value="使用post方式訪問servlet"?/>
</form>
</body>
</html>
//web.xml
<?xml?version="1.0"?encoding="UTF-8"?>
<web-app?
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"?
xmlns="http://java.sun.com/xml/ns/javaee"?
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee?
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"?id="WebApp_ID"?
version="3.0">
??<display-name>MyFirstServletDemo</display-name>
??<welcome-file-list>
????<welcome-file>index.html</welcome-file>
????<welcome-file>index.htm</welcome-file>
????<welcome-file>index.jsp</welcome-file>
????<welcome-file>default.html</welcome-file>
????<welcome-file>default.htm</welcome-file>
????<welcome-file>default.jsp</welcome-file>
??</welcome-file-list>
??<servlet>
????<servlet-name>HelloServlet</servlet-name>
????<servlet-class>servlet.HelloServlet</servlet-class>
??</servlet>
??<servlet-mapping>
????<servlet-name>HelloServlet</servlet-name>
????<url-pattern>/servlet/HelloServlet</url-pattern>
??</servlet-mapping>
</web-app>
2016-12-15
剛看了你的代碼,覺得只會(huì)調(diào)用get方法那么就是說明表單設(shè)置的method屬性并沒有起作用。
仔細(xì)一看發(fā)現(xiàn)有個(gè)很細(xì)小的問題。
這里你使用的是中文引號
我試了一下,中文引號不會(huì)報(bào)錯(cuò),只會(huì)有黃色下劃線提醒
給個(gè)采納吧 ~~
2017-02-04
再次更正!??!媽蛋之前我說的第一個(gè)修改也是錯(cuò)的了。。。method="post"就對了?。ǚ凑蠹铱醋罴汛鸢赴?!是正確的?。?/p>
2017-02-04
錯(cuò)了錯(cuò)了,不好意思。上面的答案要更正一下。以免誤導(dǎo)后來的同學(xué)?。。?!第二點(diǎn)不用屏蔽的~~?。?!
2、改的應(yīng)該是這個(gè)~:
題主doGet和doPost方法中都寫錯(cuò)了。反標(biāo)簽的寫法。
2017-02-04
剛剛看了你的代碼,然后復(fù)制到我的demo里面測試了一下。發(fā)現(xiàn)有幾處小錯(cuò)誤:
1、應(yīng)該修改為,除了中文雙引號,方法名應(yīng)為,method="doPost",調(diào)用的是HelloServlet類中的doPost方法
2、doPost方法中,應(yīng)該把response.setContentType("text/html;charset=utf-8");屏蔽掉
運(yùn)行結(jié)果如下:
2016-12-15
也可以調(diào)用dopost