什么是Springmvc以及如果编写第一个入门程序

Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来,如下图:

什么是Springmvc以及如果编写第一个入门程序_第1张图片

Springmvc处理流程

什么是Springmvc以及如果编写第一个入门程序_第2张图片

入门程序

创建web工程

springMVC是表现层框架,需要搭建web工程开发。

如下图创建动态web工程:

什么是Springmvc以及如果编写第一个入门程序_第3张图片

输入工程名,选择配置Tomcat(如果已有,则直接使用),如下图:

什么是Springmvc以及如果编写第一个入门程序_第4张图片

配置Tomcat,如下图

什么是Springmvc以及如果编写第一个入门程序_第5张图片

选择准备好的Tomcat,这里用的是Tomcat7,如下图:

什么是Springmvc以及如果编写第一个入门程序_第6张图片

选择成功,点击Finish,如下图:

什么是Springmvc以及如果编写第一个入门程序_第7张图片
什么是Springmvc以及如果编写第一个入门程序_第8张图片

如下图选择web的版本是2.5,可以自动生成web.xml配置文件

什么是Springmvc以及如果编写第一个入门程序_第9张图片

导入jar包

从课前资料中导入springMVC的jar包,位置如下图:
什么是Springmvc以及如果编写第一个入门程序_第10张图片

加入配置文件

创建config资源文件夹,存放配置文件,如下图:
什么是Springmvc以及如果编写第一个入门程序_第11张图片

创建springmvc.xml

创建SpringMVC的核心配置文件
SpringMVC本身就是Spring的子项目,对Spring兼容性很好,不需要做很多配置。
这里只配置一个Controller扫描就可以了,让Spring对页面控制层Controller进行管理。

创建springmvc.xml


<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">

    
    <context:component-scan base-package="cn.itcast.springmvc.controller" />

beans>

配置文件需要的约束文件,位置如下图:

什么是Springmvc以及如果编写第一个入门程序_第12张图片

创建包cn.itcast.springmvc.controller

效果如下图:
什么是Springmvc以及如果编写第一个入门程序_第13张图片

配置前端控制器

配置SpringMVC的前端控制器DispatcherServlet

在web.xml中


<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_2_5.xsd"
    id="WebApp_ID" version="2.5">
    <display-name>springmvc-firstdisplay-name>
    <welcome-file-list>
        <welcome-file>index.htmlwelcome-file>
        <welcome-file>index.htmwelcome-file>
        <welcome-file>index.jspwelcome-file>
        <welcome-file>default.htmlwelcome-file>
        <welcome-file>default.htmwelcome-file>
        <welcome-file>default.jspwelcome-file>
    welcome-file-list>

    
    <servlet>
        <servlet-name>springmvc-firstservlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
        
        
        <init-param>
            <param-name>contextConfigLocationparam-name>
            <param-value>classpath:springmvc.xmlparam-value>
        init-param>
    servlet>

    <servlet-mapping>
        <servlet-name>springmvc-firstservlet-name>
        
        <url-pattern>*.actionurl-pattern>
    servlet-mapping>
web-app>

加入jsp页面

把参考资料中的itemList.jsp复制到工程的/WEB-INF/jsp目录下,如下图:
什么是Springmvc以及如果编写第一个入门程序_第14张图片
什么是Springmvc以及如果编写第一个入门程序_第15张图片

实现显示商品列表页

创建pojo

分析页面,查看页面需要的数据,如下

<tr>
    <td>${item.name }td>
    <td>${item.price }td>
    <td><fmt:formatDate value="${item.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/>td>
    <td>${item.detail }td>

    <td><a href="${pageContext.request.contextPath }/itemEdit.action?id=${item.id}">修改a>td>

tr>

创建商品pojo(可以用逆向工程导入)

public class Item {
    // 商品id
    private int id;
    // 商品名称
    private String name;
    // 商品价格
    private double price;
    // 商品创建时间
    private Date createtime;
    // 商品描述
    private String detail;

创建带参数的构造器
set/get。。。
}

创建ItemController

ItemController是一个普通的java类,不需要实现任何接口。
需要在类上添加@Controller注解,把Controller交由Spring管理
在方法上面添加@RequestMapping注解,里面指定请求的url。其中“.action”可以加也可以不加。

@Controller
public class ItemController {

    // @RequestMapping:里面放的是请求的url,和用户请求的url进行匹配
    // action可以写也可以不写
    @RequestMapping("/itemList.action")
    public ModelAndView queryItemList() {
        // 创建页面需要显示的商品数据
        List<Item> list = new ArrayList<>();
        list.add(new Item(1, "1华为 荣耀8", 2399, new Date(), "质量好!1"));
        list.add(new Item(2, "2华为 荣耀8", 2399, new Date(), "质量好!2"));
        list.add(new Item(3, "3华为 荣耀8", 2399, new Date(), "质量好!3"));
        list.add(new Item(4, "4华为 荣耀8", 2399, new Date(), "质量好!4"));
        list.add(new Item(5, "5华为 荣耀8", 2399, new Date(), "质量好!5"));
        list.add(new Item(6, "6华为 荣耀8", 2399, new Date(), "质量好!6"));

        // 创建ModelAndView,用来存放数据和视图
        ModelAndView modelAndView = new ModelAndView();
        // 设置数据到模型中
        modelAndView.addObject("list", list);
        // 设置视图jsp,需要设置视图的物理地址
        modelAndView.setViewName("/WEB-INF/jsp/itemList.jsp");

        return modelAndView;
    }
}

启动项目测试

启动项目,浏览器访问地址
http://127.0.0.1:8080/springmvc-first/itemList.action

效果如下图:
什么是Springmvc以及如果编写第一个入门程序_第16张图片

你可能感兴趣的:(java框架SSM,javaSSM框架入门与实战)