zoukankan      html  css  js  c++  java
  • 2.Servlet基础.md



    1.定义

    Servlet:用Java编写的动态资源开发技术

    2.特点

    • Servlet类是一个普通的Java类,只是继承了HttpServlet类
    • Servlet只能交给tomcat服务器运行,不能自己运行

    3.手动编写一个Servlet

    3.1创建一个Servlet类

    package per.liyue.code.serverlet;
    import java.io.IOException;
    import java.util.Date;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    public class HelloServerlet extends HttpServlet{
        
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //解决中文
            resp.setContentType("test/html;charset=utf-8");
            
            resp.getWriter().write("This is the first serverlet, currenttime:" + new Date());
        }
        
        public static void main(String[] args) {
            // TODO Auto-generated method stub
        }
    }
    

    3.2找到编写类的class文件,将这个类的整个包拷贝到一个web应用中的WEB-INF/classes目录下。 注意要整个包拷贝,且路径不要错

    3.3在当前web应用下的web.xml中配置这个Servlet类

    <?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的内部名称,可以自定义,最好是对应的类名-->
        <servlet-name>HelloServerlet</servlet-name>
        <!--servlet类名:包名+简单类名-->
        <servlet-class>per.liyue.code.serverlet.HelloServerlet</servlet-class>
      </servlet>
      
      <servlet-mapping>
      <!--servlet内部名称,和上面的名称保持一致-->
        <servlet-name>HelloServerlet</servlet-name>
        <!--访问名称: /名称-->
        <url-pattern>/hello</url-pattern>
      </servlet-mapping>
    
    
    </web-app>
    
    
    

    访问中,查找对应类的逻辑:

    3.4启动服务器,访问servlet:

    http://localhost:8080/myweb/hello

    4.IDE开发

    4.1新建项目

    • 切换到Myeclipse新建WebProject
    • 在src上新建Servlet,修改对应的代码输出
    • 在WebRoot目录上新建html
    • 修改WEB-INF下的web.xml修改对应关系
    • 在Preferences中MyeclipseServers中配置tomcat服务器
    • 配置完成后在Servers标签页中右键对应的服务器,找到发布。
    • 将对应项目添加,完成后还是对应服务器右键,点击发布

    4.Web应用目录的简单层次

    • Web
      • WebRoot根目录
        • 静态资源:html...可以直接被浏览器访问到
        • WEB-INF: 不可以直接被浏览器访问,通过服务器tomcat
          • classes:存放class文件字节码(也就是动态网页的实现代码)
          • lib:各种jar包文件
          • web.xml:配置文件-配置servlet
  • 相关阅读:
    (剑指offer)斐波那契数列
    手写Vue源码 watch的实现
    Vue源码之异步批量任务更新
    手写Vue源码之 依赖收集
    C# 测试代码#if DEBUG使用
    shell脚本编程相关7
    C#中关于ref和out的认识
    shell脚本编程相关6
    shell脚本编程相关5
    shell脚本编程相关4
  • 原文地址:https://www.cnblogs.com/bugstar/p/8512620.html
Copyright © 2011-2022 走看看