IDEA創建Servlet


使用了MVC框架之后,就再沒用過Servlet,導致很多基礎的東西都忘得差不多了。
但是MVC框架的底層實現是基於servlet,通過實現Servlet接口的DispatcherServlet來封裝其核心功能實現,將請求分派給處理程序。

今天就來回顧了一些Servlet,在IDEA中創建Servlet項目。

1、創建項目

image_1cd9k8ujc182315ig18jm10js9fqm.png-98.9kB

2、創建Servlet

image_1cd9kcn93157m1bt51if10251vb123.png-247.2kB

image_1cd9kemlfrsa66abs14gq1osj2g.png-27.7kB

勾選Create Java EE 6 annotated class這個選項就是在Servlet類中添加注解,就不用手動在web.xml配置<servlet><servlet-mapping>了,通過注解當然更方便。

接下來,在創建好的Servlet類里的doGet()方法中添加如下代碼,方便之后的測試:

response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("Hello Servlet!");

如下圖:

image_1cd9kndn3oum16s31fu0ldl1j7k2t.png-105.9kB

3、配置Tomcat

配置Tomcat就不用說了。

Tomcat配置好之后,這個時候Servlet類還在報錯:
Httpservlet cannot be resolved to a type
顯然是因為找不到相應的包,即javax.servlet.

jdk里不包括servlet-api.jar這個包,此包在Tomcat中存在。
其實直接引入Tomcat依賴就可以了,如下圖:

image_1cd9l9e031v5hpfa30h1san1hp04n.png-90kB

image_1cd9la8gvg8q129f949jksu8l54.png-27.3kB

上圖為修改Tomcat libs的過程,其實就是修改了servlet-api.

4、啟動,測試

映射地址為:

@WebServlet(name = "servletDemo")

啟動Tomcat,訪問:http://localhost:8080/servletDemo

image_1cd9mdcq01eb8gio1h6h43scre5h.png-30.7kB

成功。

5、不使用注解,在web.xml中定義映射

<servlet>
    <servlet-name>servlet-demo</servlet-name>
    <servlet-class>com.vito.servlet.ServletDemo</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>servlet-demo</servlet-name>
    <url-pattern>/servletDemo</url-pattern>
</servlet-mapping>

<web-app>標簽里有個屬性:metadata-complete值為true表示容器在部署時將只依賴部署描述文件,忽略所有的注解(同時也會跳過 web-fragment.xml 的掃描,亦即禁用可插性支持);
如果不配置該屬性,或者將其設置為false,則表示啟用注解支持(和可插性支持)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM