SpringMVC学习03:回顾Servlet

SpringMVC学习03:回顾Servlet

  • 回顾Servlet:

    • 1,新建Maven工程,删除src,导入父工程依赖:

      <!--导入依赖-->
      <dependencies>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
         </dependency>

         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-webmvc</artifactId>
             <version>5.2.0.RELEASE</version>
         </dependency>

         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>servlet-api</artifactId>
             <version>2.4</version>
         </dependency>

         <dependency>
             <groupId>javax.servlet.jsp</groupId>
             <artifactId>jsp-api</artifactId>
             <version>2.1</version>
         </dependency>

         <dependency>
             <groupId>javax.servlet.jsp.jstl</groupId>
             <artifactId>jstl-api</artifactId>
             <version>1.2</version>
         </dependency>
      </dependencies>
    • 2,新建Model,普通maven项目,创建后,右键Model项目,选择web框架支持;

    • 3,导入Model子工程依赖:如果父工程有了,可以不用导;

      <dependencies>
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>servlet-api</artifactId>
             <version>2.4</version>
         </dependency>

         <dependency>
             <groupId>javax.servlet.jsp</groupId>
             <artifactId>jsp-api</artifactId>
             <version>2.1</version>
         </dependency>
      </dependencies>
    • 4,编写一个Servlet类,用来处理用户的请求;

      public class HelloServlet extends HttpServlet {

         @Override
         protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
             //1,获取前端参数
             String method=req.getParameter("method");
             if(method.equals("add")){
                 req.getSession().setAttribute("msg","执行了add方法");
            }
             if(method.equals("delete")){
                 req.getSession().setAttribute("msg","执行了delete方法");
            }
             //2,调用业务层

             //3,视图转发
             req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,resp);//转发
             //resp.sendRedirect();//重定向


        }

         @Override
         protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
             doGet(req, resp);
        }
      }
    • 5,编写一个jsp页面,给servlet转发所用;

      <%@ page contentType="text/html;charset=UTF-8" language="java" %>
      <html>
      <head>
         <title>test</title>
      </head>
      <body>
        ${msg}
      </body>
      </html>
    • 6,配置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">


         <servlet>
             <servlet-name>helloServlet</servlet-name>
             <servlet-class>com.ljxdemo.servlet.HelloServlet</servlet-class>
         </servlet>

         <servlet-mapping>
             <servlet-name>helloServlet</servlet-name>
             <url-pattern>/hello</url-pattern>
         </servlet-mapping>


         <!--session超时时间-->
         <session-config>
             <session-timeout>15</session-timeout>
         </session-config>

         <!--欢迎页面-->
         <welcome-file-list>
             <welcome-file>index.jsp</welcome-file>
         </welcome-file-list>
      </web-app>
    • 7,配置Tomcat,并启动测试;

       

 

  • MVC框架要做哪些事情:

    • 将url映射到java类或者Java类的方法;

    • 封装用户提交的数据;

    • 处理请求--调用相关的业务处理--封装响应数据;

    • 将响应的数据进行渲染jsp/html等视图层数据;

 

 

  • 常见的服务器端MVC框架有:

    • Struts , SpringMVC , ASP.NET MVC , Zend Framework , JSF;

 

  • 常见的前端MVC框架有:

    • vue , angularjs , react , backbone ;

 

  • MVP , MVVM等

    • MVVM:

      • M :Model

      • V:view

      • VM:ViewModel:双向绑定

 

 

 

 

 

posted @   gzs1024  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示