springMVC入门截图

----------------------------------------------------

在web.xml中配置前端控制器(系统提供的一个servlet类  只需配置即可  无需程序员开发 )

--------------------------------------------------------------

------------------------

非注解适配器

使用A适配器能够执行实现Controller接口的handler

package org.ssm.controller;

import java.util.ArrayList;
import java.util.List;

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

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import org.ssm.po.Items;

//实现controller接口的处理器
public class ItemsController1 implements Controller{

    public ModelAndView handleRequest(HttpServletRequest arg0,
            HttpServletResponse arg1) throws Exception {
        // TODO Auto-generated method stub
        //调用service查找 数据库,查询商品列表,这里使用静态数据模拟
        List<Items> itemsList = new ArrayList<Items>();
        //向list中填充静态数据

        Items items_1 = new Items();
        items_1.setName("联想笔记本");
        items_1.setPrice(6000f);
        items_1.setDetail("ThinkPad T430 联想笔记本电脑!");

        Items items_2 = new Items();
        items_2.setName("苹果手机");
        items_2.setPrice(5000f);
        items_2.setDetail("iphone6苹果手机!");

        itemsList.add(items_1);
        itemsList.add(items_2);

        //这个方法需要返回modelAndView  所以创建
        ModelAndView modelAndView=new ModelAndView();
        //这个方法九相当于request.setAttribute
        modelAndView.addObject("itemsList", itemsList);
        //指定视图
        modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp");

        return modelAndView;
    }

}

使用B适配器能够执行 实现HttpRequestHandler接口的handler

package org.ssm.controller;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

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

import org.springframework.web.HttpRequestHandler;
import org.ssm.po.Items;

public class ItemsController2 implements HttpRequestHandler{
    //这个handler对应的适配器类是 org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter
    public void handleRequest(HttpServletRequest arg0, HttpServletResponse arg1)
            throws ServletException, IOException {
        // TODO Auto-generated method stub
        //调用service查找 数据库,查询商品列表,这里使用静态数据模拟
        List<Items> itemsList = new ArrayList<Items>();
        //向list中填充静态数据

        Items items_1 = new Items();
        items_1.setName("联想笔记本");
        items_1.setPrice(6000f);
        items_1.setDetail("ThinkPad T430 联想笔记本电脑!");

        Items items_2 = new Items();
        items_2.setName("苹果手机");
        items_2.setPrice(5000f);
        items_2.setDetail("iphone6苹果手机!");

        itemsList.add(items_1);
        itemsList.add(items_2);
        arg0.setAttribute("itemsList", itemsList);
        //早期servlet程序转发操作
        arg0.getRequestDispatcher("/WEB-INF/jsp/items/itemsList.jsp").forward(arg0, arg1);

        //使用哪个适配器都可以  但是这个适配器 可以通过response对象 来设置响应数据的格式

    }

}

----------

jsp页面

--------------------

非注解映射器

-----------------------------

视图解析器

-f---------------------

注解映射器、适配器

------------------------------------

使用注解方式开发的handler

package org.ssm.controller;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.ssm.po.Items;

//使用注解开发的handler 不需要实现接口  这个注解和spring阶段 把action对象注入bean容器时使用的注解一样  导入的包也一样
//要明白  这里就是把该headler注入进spring容器中
@Controller
//使用注解标识这是一个handler
public class ItemsController3 {
    //这里边可以编写任意多个方法  没有之前实现指定的接口时  只能覆写指定接口的局限性
    //使用注解标识映射路径 即将来访问的路径  建议映射路径和类名一样  action写不写都行
    //@RequestMapping实现对query1方法的一个映射   一个方法对应一个url
    @RequestMapping("/query1.action")
    public ModelAndView query1()throws Exception{
        //调用service查找 数据库,查询商品列表,这里使用静态数据模拟
        List<Items> itemsList = new ArrayList<Items>();
        //向list中填充静态数据

        Items items_1 = new Items();
        items_1.setName("联想笔记本");
        items_1.setPrice(6000f);
        items_1.setDetail("ThinkPad T430 联想笔记本电脑!");

        Items items_2 = new Items();
        items_2.setName("苹果手机");
        items_2.setPrice(5000f);
        items_2.setDetail("iphone6苹果手机!");

        itemsList.add(items_1);
        itemsList.add(items_2);
        //创建modelAndView
        ModelAndView modelAndView=new ModelAndView();
        modelAndView.addObject(itemsList);
        //指定视图
        modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp");
        return modelAndView;
    }

}

然后再配置文件中配置该handler   推荐使用注解扫描方式(对标记@Controller类中标识有@RequestMapping的方法进行映射  在@RequestMapping里边定义映射的url)

否则 一个handler类就需要配置一个bean

--------------------------------

视图解析器的前缀和后缀配置

注意:如果配置了前缀和后缀  那么 在handler设置视图路径的时候 就不能在指定完整的路径了  但是有一个handler除外

不能指定完整路径的handler:1.实现Controller接口 以及2.注解方式实现的handler

1.

2.

路径为:

在配置了前缀和后缀之后  仍然需要指定完整路径的handler:实现了HttpRequesstHandler接口的handler

路径仍然为:

----------------------------

时间: 2024-08-06 11:35:49

springMVC入门截图的相关文章

SpringMVC入门

介绍 SpringMVC是一款Web MVC框架. 它跟Struts框架类似,是目前主流的Web MVC框架之一. 本文通过实例来介绍SpringMVC的入门知识. 实例 本文所写的实例是一个员工的CRUD demo. 用idea编写,基于maven, Web框架使用SpringMVC,视图采取Freemarker技术,数据库使用MySQL,用Hibernate4存储数据. 本文关于其他一些内容 如maven的pom文件内容,spring常规bean,事务,数据源的配置等不会详细描述,可自行下载

springmvc入门之HelloWorld篇

springmvc是一个基于spring的mvc框架,各种优点啥的用过就知道了.下面开始讲HelloWorldController的实现. 1.开发环境搭建<导jar包+配置文件> 1.1 新建web工程springmvc,导入springmvc所需的jar包,因为springmvc是基于spring的,所以必须包含spring的jar包,我用的版本是spring3.1.0.导入以下jar包: 1.2 配置web.xml <!-- spring mvc配置 处理*.action和*.do

2017-5-23 SpringMVC入门(一)

2017-5-23 SpringMVC入门(一) SpringMVC Maven Java 1.依赖引入 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.ap

Spring-MVC入门实例 (一)

Spring MVC是非常优秀的MVC框架,由其是在3.0版本发布后,现在有越来越多的团队选择了Spring3 MVC了.Spring MVC结构简单,应了那句话简单就是美,而且他强大不失灵活,性能也很优秀. Struts2 VS  Spring MVC Struts2  特点 也是比较优秀的MVC构架,优点非常多比如良好的结构.但这里想说的是缺点,Struts2由于采用了值栈.OGNL表达式.struts2标签库等,会导致应用的性能下降.Struts2的多层拦截器.多实例action性能都很好

SpringMVC入门之注解式控制器

上面一篇写的是配置式的控制器现在已经不推荐使用了,其实注解式控制器和它的差不多只不过 更简洁而已! 1.还是在web.xml中进行配置DispatcherServlet <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-para

框架 day68 SpringMVC入门(框架原理,springmvc和mybatis整合)

第一天:注解开发基础(springmvc入门) springmvc框架原理(掌握) DispatcherServlet前端控制器.HandlerMapping处理器映射器.HandlerAdapter处理器适配器.ViewResolver视图解析器 springmvc入门程序 目标:加深对springmvc三大组件的认识 查询商品信息 重点掌握注解的HandlerMapping处理器映射器.HandlerAdapter处理器适配器(掌握) springmvc和mybatis整合(掌握) 通过一个

SpringMVC 入门教程知识

SpringMVC 入门知识 一.SpringMVC入门介绍 springMVC代替struts2去整合hibernate实现功能的框架.使用springMVC有两个配置文件需要配置,一 个是applicationContext.xml.另一个是web.xml,在applicationContext.xml里面配置事务管理器以及属性注入等.web.xml里面要添加一个springMVC的servlet的注册和映射(DispatcherServlet),这个servlet是 springMVC的核

SpringMVC入门配置和简单实现

web.xml的配置 <!-- springmvc中央控制器 --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <servlet-n

SpringMVC入门(一)

一. SpringMVC入门 1.1 Springmvc是什么 Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来,如下图: 1.2  Springmvc处理流程 二. 入门程序2.1 导包 2.2 创建springmvc.xml SpringMVC本身就是Spring的子项目,对Spring兼容性很好,不需要做很多配置. 这里只配置一个Controller扫描就可以了,让Spring对页面控制层Control