java_8_第一个API

2018-02-04  本文已影响138人  果芽软件

组成要素

  1. 客户端:生成报文,发送报文,接收报文,处理报文
  2. 服务端:接收报文,解析报文,调用服务代码
  3. 服务代码:处理代码、别名、注册、实现接口或者父类(保障有被调方法)

正式的API

  1. 客户端:浏览器、jmeter
  2. 服务端:tomcat
  3. 服务代码:Servlet规范

根据请求地址,找到调用代码

计算机做的:

  1. 根据IP找主机
  2. 根据端口找web服务器(tomcat)

tomcat做的:

  1. web服务器(tomcat)根据应用名到webapps下面找应用
  2. 根据应用下的WEB-INF下的web.xml找请求路径对应的代码
  3. 通过反射读取代码成Class,newInstance实例化,向上转型成HttpServlet,最后根据GET还是POST调用doGet或者doPost方法

我们写的:

  1. doGet或者doPost方法实现业务处理

根据代码,给我写出请求地址

  1. 先添加servlet的依赖包
  2. 写个java类
  3. 继承HttpServlet,根据需要选择性实现doGet或者doPost方法
  4. 在doGet或者doPost里面写业务代码
  5. 写好后,在web.xml里面,给改类取个名字,再把名字发布成uri路径
  6. 把应用编译、部署到tomcat的webapps下面
    (mvn clean package;复制war到tomcat的webapps;bin下面的startup.bat启动)
    (myeclipse添加tomcat路径,再server里面选择tomcat,add deployment编译部署到webapps,start按钮启动tomcat)
  7. 启动tomcat
  8. 根据ip、tomcat的端口、应用名、url请求路径调用服务

代码

package com.guoyasoft.api;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class FirstAPI extends HttpServlet{

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        System.out.println("do get method success");
//      super.doGet(req, resp);
        resp.getWriter().write("do get method success !");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        System.out.println("do post method success");
        resp.getWriter().write("do post method success !");
    }
    
}

<?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>my-app</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>firstAPI</servlet-name>
    <servlet-class>com.guoyasoft.api.FirstAPI</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>firstAPI</servlet-name>
    <url-pattern>/myFirstAPI</url-pattern>
  </servlet-mapping>
</web-app>
上一篇 下一篇

猜你喜欢

热点阅读