SpringMVC日记01

MVC:模型(dao,service) 视图 (jsp) 控制器(Servlet)

dao(连接数据库)

service(调用dao层,执行一些业务(只关注业务))

servlet(接受前端的数据,交给service层去处理,service返回的结果由servlet去调用相应的前端页面(jsp/html))转发(url地址不会改变)和重定向(url地址会改变)

jsp/html(前端页面)

JSP:本质就是Servlet

MVC框架要做哪些事情

1.将url映射到java类或者java类的方法

2.封装用户提交的数据

3.处理请求---调用相关业务处理---封装相应数据

4.将响应的数据进行渲染,jsp/html等表现层数据

运行图

servlet运行代码

web.xml

<servlet>
    <servlet-name>hello</servlet-name>
    <servlet-class>com.kuang.servlet.HelloServlet</servlet-class>
</servlet>

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

<welcome-file-list>
    <welcome-file>from.jsp</welcome-file>
</welcome-file-list>

Servlet.class

package com.kuang.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class HelloServlet extends HttpServlet {

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

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

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.doGet(req, resp);
    }
}

indexl.jsp

<form action="/hello" method="get">
        <input type="text" name="method" value="add">
    <input type="submit" value="提交">
</form>

猜你喜欢

转载自blog.csdn.net/Shengzheng_Ning/article/details/114729616