教程 - IDEA创建Servlet以及使用Html网页请求Servlet(零基础上手)
IntelliJ IDEA创建Servlet方法(idea 2020.2) 以及使用html网页请求servlet的方法
第一次使用intelliJ idea创建Servlet,这里就把我遇到的问题以及解决的办法分享给大家
创建Servlet步骤
文章目录
1.创建Java项目
File -> New -> Project…
Java -> Next
-> Next
设置项目名称和路径 -> Finish
得到了刚刚创建出来的Java项目
2.把Java项目设置成web项目
2.1在Servlet01上鼠标右键 -> Add Framework …
勾选Web Application
得到的Web项目先比之前多了web文件夹,如下
在WEB-INF文件夹下创建classes和lib文件夹,用于存放项目编译文件和jar包
创建出来就是下面的样子
之后设置classes文件夹为存放下面编译文件
下面的第4步为:当前classes文件路径
classes设置成功之后变为橙黄色
下面就是lib文件夹的设置
和之前一样点击加入Project Structure,安装下列步骤
点击加载Tomcat下的lib文件夹中的servlet.jar文件夹
lib文件夹设置成功
3.加载Tomcat
按照下列步骤
下面第4点尤为重要,否则回出现warming
再次点击进入Configurations,设置Application context,之后的演示都是以Application context为 / 进行的
Tomcat设置成功
4.编写web项目
4.1在src文件夹下右键新建class,命名为DemoServlet,继承Servlet,编写如下代码:
/**
* @Author: 彭德华
* @Description:
* @Date Created in 2021-01-11 16:37
* @Modified By:
*/
public class DemoServlet implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("初始化参数");
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("执行逻辑语句");
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
System.out.println("销毁Servlet");
}
}
4.2在web文件夹下编写Login.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>Login</h1>
<a href="/tologin"></a>
</body>
</html>
注意
这里不能把超链接写成
<a href="\tologin"></a>
的格式,使用 ‘\’ 符会导致错误:
war exploded: Error during artifact deployment
使得之后出现运行无法链接Tomcat
4.3.点开WEB-INF文件夹下的web.xml文件
在XML中配置好这个Servlet的映射关系:
<servlet>
<servlet-name>自定义名称</servlet-name>
<servlet-class>处理请求的类的完整路径</servlet-class>
</servlet>
<servlet-mapping><!-- mapping 表示映射 -->
<servlet-name>自定义名称</servlet-name>
<url-pattern>请求名</url-pattern>
</servlet-mapping>
实际代码如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>login</servlet-name>
<servlet-class>
com.web.DemoServlet
</servlet-class>
</servlet>
<servlet-mapping><!-- mapping 表示映射 -->
<servlet-name>login</servlet-name>
<url-pattern>/tologin</url-pattern>
</servlet-mapping>
</web-app>
4.4编写完成的目录
千万不能错
5.运行,使用html网页连接了DemoServlet了
点击运行
弹出网页
在输入如下地址
http://localhost:8080/login.html
进入我们编写好的html页面
接下来看看是否能成功响应
成功出现我们编写的执行语句
最后,若想直接连接DemoServlet程序,直接在DemoServlet代码里面加上
@WebServlet("/类名")
如下
@WebServlet("/DemoServlet")
public class DemoServlet implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("初始化参数");
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("执行逻辑语句");
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
System.out.println("销毁servlet");
}
}
在浏览器里面输入
http://localhost:8080/DemoServlet
即可访问!
6.结语
过程工作量巨大,希望能帮到大家,有疑问欢迎评论交流!
更多推荐
所有评论(0)