前段时间写下了一篇文章: idea 如何新建一个Maven项目并且写第一个servlet 地址如下:
https://mp.csdn.net/postedit/85029145
因为本人刚开始使用idea,对于idea的知识还不是很熟练,那篇文章本身没有问题,但是我在将用那种方法新建的工程要打成war包的时候出问题了,所以使用同事的方法重新新建了一遍maven工程之后就好了,接下来,我就讲这种方法写下来,记录一下,方便日后查看。
一。
1.首先new --> Project
选择maven 工程,并且勾选 Create from archetype ,并且选择骨架进行创建: 如图选择: maven-archetype-webapp 骨架
点击下一步
2.填写GroupId 和 ArtifactedId
3.点击下一步,填写maven相关设置,这里就不多说了
4.点击下一步,继续填写相关,这里不再赘述,点击finish 然后使用新窗口打开
二。打开新工程之后:
看结构,main下面只有一个webapp文件夹,webapp下面有web.xml,并且这个工程也有pom文件,这就是一个新的Maven工程,接下来我们写一个servlet.
2.接下来,新建java文件夹和respurces文件夹
在main 上 新建一个Directory (java)
3.然后右键 Mark Directory as Source Root
4.接下来我们会看到 java文件夹会变为 绿色
5.同理 新建resources 文件夹,然后右键 Mark Directory as Resource Root
6.之后再java下面新写一个Servlet
package com.tingyun.demo.servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
try {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=utf-8");
response.setCharacterEncoding("UTF-8");
String userId = request.getParameter("userId");
String pwd = request.getParameter("pwd");
if("admin".equals(userId) && "password".equals(pwd)){
out.println("success");
}else{
out.println("fail");
}
out.println("<br/>");
String servletPath = this.getServletContext().getRealPath("/");
out.println(servletPath);
out.close();
} catch (Exception e) {
// TODO: handle exception
}
}
}
注意在写这个Servlet之前,首先要在pom文件中引入对servlet的依赖
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
然后再web.xml中配置这个Servlet
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.tingyun.demo.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
之后配置tomcat ,启动
启动后,访问:http://localhost:8080/httpdemo/
这是一个HelloWorld页面,访问的是 index.jsp页面
如何访问: http://localhost:8080/httpdemo/hello
这个路径就是访问HelloServlet,至此简单的Servlet写完了,方便日后查看