03springmvc入门

简介: 需求实现商品查询列表功能开发环境准备使用Eclipse+tomcat7开发数据库环境:mysql第一步:建立一个Web项目在eclipse下创建动态web工程springmvc_first(若导入myeclipse中改动如下)第二步:导入spring3.
  1. 需求

    • 实现商品查询列表功能
  2. 开发环境准备

    • 使用Eclipse+tomcat7开发
    • 数据库环境:mysql


  3. 第一步:建立一个Web项目

    • 在eclipse下创建动态web工程springmvc_first(若导入myeclipse中改动如下)


  4. 第二步:导入spring3.2.0的jar包

5.前端控制器配置(web.xml)

`<!-- springmvc前端控制器配置 -->
<servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- contextConfigLocation配置springmvc加载的配置文件(配置处理器映射器,适配器等等) 如果不配置contextConfigLocation, 
        则默认加载WEB-INF/[DispatcherServlet 的Servlet 名字]-servlet.xml -->
    <init-param>
        <!-- 参数名字 -->
        <param-name>contextConfigLocation</param-name>
        <!--参数内容 -->
        <param-value>classpath:springmvc.xml</param-value>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>*.action</url-pattern>
</servlet-mapping>`

6.配置处理器适配器

  • 在classpath下的springmvc.xml中配置处理器适配器


    • 查看源代码
  • 此适配器能执行实现 Controller接口的Handler


7.开发Handler

  • 需要实现controller接口 org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter适配器执行

`

 package com.helei.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 com.helei.ssm.po.Items;

/**
 * 实现controller接口的处理器
 * 
 * @author 贺雷
 *
 */
public class ItemsController1 implements Controller {

@Override
public ModelAndView handleRequest(HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    // 调用service查找数据库,查询商品列表,这里使用静态资源模拟
    List<Items> itemsList = new ArrayList<Items>();

    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("iphone5  苹果手机!");

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

    // 返回ModelAndView
    ModelAndView modelAndView = new ModelAndView();
    // 相当 于request的setAttribut,在jsp页面中通过itemsList取数据
    modelAndView.addObject("itemsList", itemsList);
    // 指定视图
    modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp");
    return modelAndView;
} }

`

8.视图编写

9.配置handler
将编写handler在spring容器进行加载


10.配置处理器映射器

  • 在classpath下的springmvc.xml中配置处理器映射器


11.配置视图解析器

`<bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>`

12.部署调试

  • 处理器映射器根据url找不到Handler,报下边的错误。说明url错误
  • 处理器映射器根据url找到了Handler,转发的jsp页面找到,报下边的错误,说明jsp页面地址错误了


  • 调试成功


相关文章
|
网络架构
直通和交叉电缆:网络连接的桥梁
【10月更文挑战第15天】
800 5
|
编解码
视频分辨率和帧率
【10月更文挑战第7天】视频分辨率和帧率
|
安全 搜索推荐 JavaScript
全员学习低代码,一汽大众领跑数智化转型背后的秘密|《102个开发者故事》第七期
500位低代码开发者,90%来自一线,低代码开发在一汽-大众百花齐放。
1542 1
全员学习低代码,一汽大众领跑数智化转型背后的秘密|《102个开发者故事》第七期
|
搜索推荐
介绍一下阿里云的企业财务管理功能
阿里云多账号的财务管理。
1143 0
介绍一下阿里云的企业财务管理功能
|
JavaScript 前端开发 开发工具
F12解决网页不能复制
很多人想要复制网页上的文字时,经常因为种种原因而无法复制,教你一招轻松解决。
1828 0
F12解决网页不能复制
|
安全 数据安全/隐私保护 iOS开发
iMazing官网下载安装教程 2023最新版兼容Win和Mac的iOS设备管理软件
iMazing是一款功能强大的iOS设备管理软件,它可以帮助用户备份和管理他们的iPhone、iPad或iPod Touch上的数据。除此之外,它还可以将备份数据转移到新的设备中、管理应用程序、导入和导出媒体文件等。本文将详细介绍iMazing的功能和安全性,并教大家如何使用iMazing来恢复备份数据。
955 0
|
人工智能 开发者
Z 检验基本原理 | 学习笔记
快速学习 Z 检验基本原理
Z 检验基本原理 | 学习笔记
|
存储 JavaScript 前端开发
『HarmonyOS』万物互联,分布式操作系统
2019年5月15日,美国商务部宣布,把华为及70家关联企业列入期所谓的“实体清单”,随后美国的“实体清单”不断扩容,体现了美国对中国高科技企业的限制升级,科技再次成为中美博弈的核心领域。 作为中国科技领域的头部企业,华为首当其冲。海思(华为旗下的芯片企业)受到严重限制。除此之外,软件技术也同样受到限制——谷歌已暂停与华为的部分合作,包括软件和技术服务的转让。华为在国外市场面临着升级Android版本、搭载谷歌服务等方面的困境。 因此,在这个背景下,除了加大海思的研发投入之外,华为也向世人公布了自己的秘密武器——HarmonyOS。正如“鸿蒙”的寓意,意味着HarmonyOS将会开启一个开
521 0
|
监控 Linux API
开源项目推荐:Hook技术之API拦截,Detours
开源项目推荐:Hook技术之API拦截,Detours
1208 0