一、简介
1、Servlet:sun公司用于开发动态web的一门技术
2、Sun在这些API中提供一个接口:servlet
开发servlet程序步骤:
1、编写一个类,实现servlet接口
2、把开发好的java类部署到web服务器中
二、HelloServlet
1、 构建一个普通maven项目,删掉里面的src,就在这个项目创建model
(这空的工程,就叫maven的主工程)
并导入servlet、jsp依赖jar包
2、 创建一个javaweb model
3、 Maven父子工程的理解(父项目的jar包 子项目可以使用)
- 父项目pom.xml会新增
<modules>
<module>servlet-01</module>
</modules>
- 子项目pom.xml有
<parent>
<artifactId>javaweb-02-maven</artifactId>
<groupId>com.mily</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
4、 修改子项目中web.xml(修改为最新)
<?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"
metadata-complete="true">
</web-app>
5、子项目搭建好项目结构(java resources文件夹)
6、 编写一个servlet
a) 创建一个文件夹 (com.mily.servlet)
b) 编写一个类 (HelloServlet)
c) 继承HTTPServlet、重写doget和dopost方法
public class HelloServlet extends HttpServlet{
//由于get或者post知识请求实现的不同形式,可以相互调用,业务逻辑一样
//代码只需写在一个方法上,另外一个方法调用这个方法即可
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/*输入流*/
/*ServletInputStream inputStream = req.getInputStream();*/
/*两种输出流*/
/*ServletOutputStream outputStream = resp.getOutputStream();*/
PrintWriter writer = resp.getWriter();
writer.print("hello,world");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
}
}
补充:Servlet接口sun公司有两个默认的实现类:HttpServlet、GenericServlet
所以我们的servlet实现类直接继承HttpServlet即可
7、编写Servlet映射
为什么需要映射:
我们编写的是java程序,若想要通过浏览器访问项目,浏览器需要连接web服务器,所以我们需要再web服务中注册我们写的Servlet,并且给一个浏览器访问的路径
web.xml
<?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"
metadata-complete="true">
<!--注册Servlet-->
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.mily.servlet.HelloServlet</servlet-class> <!--注册哪个类-->
</servlet>
<!--servlet的请求路径(映射路径)-->
<servlet-mapping>
<servlet-name>hello</servlet-name><!--name值要对应-->
<url-pattern>/hello</url-pattern><!--访问路径-->
</servlet-mapping>
</web-app>
8、配置Tomcat
确保一下信息正确
9、启动测试
映射成功、成功输出内容