SpringMVC简单入门 源码jar包下载和文件上传

1.Spring MVC简介


该项目的源码下载,springMVC和spring的jar包,请到 manyjar.com 下载。

下载方式1:点击下载

下载方式2:百度搜索manyjar(manyjar官网), 搜索springMVCUnit进行下载

Spring MVC基于java实现WEB MVC设计模式的的请求驱动类型的轻量级Web框架,将web层进行职责解耦,简化web开发。

SpringMVC框架通过实现Model-View-Controller模式来将数据、业务与展现进行分离。

Spring MVC和Struts、Struts2类似的框架。

SpringMVC 和天生和Spring框架可以无缝集成(IOC容器、AOP容器)。

Spring MVC的设计是围绕DispatcherServlet展开的,DispatcherServlet负责将请求派发到特定的handler。通过可配置的handler mappings、view resolution、locale以及theme resolution来处理请求并且转到对应的视图,提供了强大的约定大于配置的契约式编程。

如下Web MVC的标准架构

Spring MVC请求处理的整体流程如图:

2 SprinngMVC 开发简介


该项目的源码下载,springMVC和spring的jar包,请到 manyjar.com 下载。

下载方式1:点击下载

下载方式2:百度搜索manyjar(manyjar官网), 搜索springMVCUnit进行下载

2.1 Spring3.x中定义一个控制器类,必须以@Controller注解标记。

2.2 使用@RequestMapping注解将方法映射到一些请求上,以便让该方法处理那些请求。

2.3 视图可以拿到显示的数据。方法参数对于视图来说也是可以拿到的。比如说,如果处理方法以Map为参数,视图可以通过key拿到map对应的value。

3 SpringMVC版本的helloworld


该项目的源码下载,springMVC和spring的jar包,请到 manyjar.com 下载。

下载方式1:点击下载

下载方式2:百度搜索manyjar(manyjar官网), 搜索springMVCUnit进行下载

接下来我们用Spring MVC开发一个最最简单的Web应用。首先创建一个Dynamic Web Project。

我将Spring dist目录下的所有jar包放到WEB-INF/lib目录下。

3.1   springMVC和spring的jar包,下载地址 www.manyjar.com  或者  搜索springMVCUnit

3.2   在web.xml文件中添加如下片段:

配置DispatcherServlet,springMVC的配置文件名为:spring-mvc.xml

配置spring的ContextLoaderListener,spring的配置文件名 :beans.xml

3.3  开发一个简单的控制器类HelloController:

package springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class HelloController {

    @RequestMapping(value="/hello",method=RequestMethod.GET)
    public String sayHello(
         Model model,
         Map<Object, Object> resultMap,
         @RequestParam(value="sayHello",required=false)String  sayHello ){ 

         model.addAttribute("msg", "Hello, World!");
         resultMap.put("myKey", "This is  from resultMap");
         //前端传值过来
         System.out.println(sayHello);
         return "hello";
    }
}

首先通过@Controller注解标示这个类是一个控制器,接下来通过@RequestMapping注解为制定方法sayHello处理哪些请求,在这个例子中,sayHello方法仅仅处理GET类型的/hello请求。

sayHello方法接收一个org.springframework.ui.Model类型的参数model,SpringMVC会自动将请求参数封装进model中,我们可以简单的把model理解为一个Map。我们在方法中从model中取出参数person的值并且打印出来,接下来往model中添加一个属性msg,值为"Hello,World!",然后返回视图名称hello。

接下来我们需要在Spring MVC配置文件中配置一个视图解析器,配置在spring-mvc.xml中

<?xml version="1.0" encoding="UTF-8"?>
<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-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">

    <!-- 默认的注解映射的支持 -->
    <mvc:annotation-driven />
    <!--启用自动扫描  -->
    <context:component-scan base-package="springmvc.controller" />

     <!-- 内部资源视图解析器 prefix + logicName + suffix /WEB-INF/jsps/ + index + .jsp -->
     <bean id="internalResourceViewResolver"
     class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="/WEB-INF/jsps/" />
        <!-- 后缀 -->
        <property name="suffix" value=".jsp" />
     </bean>
</beans>

前面没什么好说的,但是注意添加了mvc名称空间,接下来启用了spring的自动扫描,并且设置了默认的注解映射支持。这里需要重点解释的是配置文件中的那个bean。它的类型是是Spring MVC中最常用的一种视图解析器,当然还有很多其他的类型,由于这篇博客的重点在于简单的介绍Spring MVC,因此不重点介绍,后续博文会补充。prefix属性是指视图前缀,suffix是视图后缀,这里配置的是.jsp,我们在控制器的方法sayHello中返回的是hello,再结合这里的配置,对应的完整的视图是:/WEB-INF/jsp/hello.jsp。接下来我们完成这个视图,我们只是简单的取出我们放的信息msg:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hello</title>
</head>
<body>
    1 : ${msg } <br>
    2 : ${myKey }
</body>
</html>

接下来部署应用,我们访问http://localhost:8080/springmvcnew/hello?sayHello=helloController  会显示视图的内容,并且取出了msg的内容:

控制台输出:helloController

浏览器输出:

4  springMVC的图片上传


该项目的源码下载,springMVC和spring的jar包,请到 manyjar.com 下载。

下载方式1:点击下载

下载方式2:百度搜索manyjar(manyjar官网), 搜索springMVCUnit进行下载

配置CommonsMultipartResolver处理类,spring-mvc.xml文件内容如下:

编写控制器PersonController.java

编写页面jPersonCreate.jsp

接下来部署应用,我们访问http://localhost:8080/springmvcnew/tocreate 
就可以访问添加用户信息页面。

浏览器展示如下

至此,springMVC的简单工程就做完了。基础简单的springMVC开发简介!希望一起学习进步...

参考了博客园http://www.cnblogs.com/wawlian/archive/2012/11/17/2775435.html

时间: 2025-01-07 02:57:00

SpringMVC简单入门 源码jar包下载和文件上传的相关文章

Java使用comms-net jar包完成ftp文件上传进度的检测功能

本文章只讲述大致的思路与本次功能对应的一些开发环境,具体实现请结合自己的开发情况,仅供参考,如果有不对的地方,欢迎大家指出! 准备环境:JDK1.7 OR 1.8.eclipse.ftp服务器(可自行搭建).comms-net jar包3.3版本的.其余的就不详细列举了. 1.在现实开发中ftp服务器和项目的部署服务器基本不会是同一台,所以基础springmvc的文件上传进度获取,只能获取到文件的二进制流到达项目后台的进度.对于真实的ftp文件上传进度,需要使用comms-net提供的监听器来实

spring 各个版本的源码、jar包和源码jar包下载地址

spring各个版本的源码jar包.文档jar包和spring的jar包 http://maven.springframework.org/release/org/springframework/spring/3.2.0.RELEASE/ spring的源码: http://repo.springsource.org/libs-release-local/org/springframework/spring/ 原文地址:https://www.cnblogs.com/kinome/p/84430

文件上传下载之文件上传

13.1  文件上传 13.1.1  概述 在开发基于Web的应用的时候,经常会碰到需要实现文件上传.下载的功能,比如编辑某个商品,需要给它上传一个图片等等. 不使用Struts2的话,可以有很多种方式来实现文件上传,比如使用Apache的Common-FileUpload等.但是这些传统的方式,实现起来非常麻烦,需要写很多代码来进行控制. 现在使用Struts2来实现文件上传的功能,会更加简单和方便,事实上,Struts2的文件上传功能,默认就是基于Common-FileUpload来实现的,

Java下载https文件上传到阿里云oss服务

今天做了一个从Https链接中下载音频并且上传到OSS服务器,记录一下希望大家也少走弯路. 一共两个类: 1 实现自己的证书信任管理器类 /** * @author mazhq * @Title: X509TrustUtiil * @ProjectName: zeus * @Description: 证书信任管理器类 * @date 2019/2/18 15:14 */ public class X509TrustUtil implements X509TrustManager { @Overr

自己引入jar包实现的图片上传

这个图片上传主要实现用户实名认证,截取字符串有点繁琐,有任何建议,欢迎评论提出. 1.首先引入一个jar包 org.springframework.web.multipart; 2.开始上传图片,以文件流接收 package com.qianmo.qmyj.controller; import com.qianmo.qmyj.bean.dto.UserInfo; import com.qianmo.qmyj.bean.request.FindMsgRequest; import com.qian

SpringMVC【参数绑定、数据回显、文件上传】

前言 本文主要讲解的知识点如下: 参数绑定 数据回显 文件上传 参数绑定 我们在Controller使用方法参数接收值,就是把web端的值给接收到Controller中处理,这个过程就叫做参数绑定... 默认支持的参数类型 从上面的用法我们可以发现,我们可以使用request对象.Model对象等等,其实是不是可以随便把参数写上去都行???其实并不是的... Controller方法默认支持的参数类型有4个,这4个足以支撑我们的日常开发了 HttpServletRequest HttpServl

SpringMVC常用配置(二),最简洁的配置实现文件上传

Spring.SpringMVC持续介绍中,基础配置前面已经介绍了很多,如果小伙伴们还不熟悉可以参考这几篇文章: 1.Spring基础配置 2.Spring常用配置 3.Spring常用配置(二) 4.SpringMVC基础配置(通过注解配置,非xml配置) 5.SpringMVC常用配置 OK ,那么这里我想说另外一个话题,那就是文件上传,我之前在做Android开发的时候,文件上传我们一般会有两种策略,一种是通过IO流上传,还有一种是通过表单上传,其实这两种在客户端实现起来都是很简单的,在服

使用commons-fileupload-1.2.1.jar等组件实现文件上传

使用的主要jar包:commons-io-1.3.2.jar包;commons-fileupload-1.2.1.jar包:commons-lang-2.3.jar,在使用组件实现文件上传时候要注意前后台的一致性,注意在后台定义File文件对象名要与jsp页面中的file标签name名字一致,前台form标签属性一定要设置为enctype="multipart/form-data",而且传输方式必须是post方式.不然后台不认为提交的是文件类型,而认为是普通表单的提交. 废话不多说看主

一个简单的blog系统(三) 增加文件上传功能

1. 一个完整的博客怎么能缺少图片呢,目前上传文件的方法有三种: (1)使用Express自带的文件上传功能,不涉及数据库. (2)使用Formidable外部模块,不涉及数据库. (3)上传到MongoDB,涉及到数据库. 可以看出,第一种方式最简单,Express通过bodyParser()解析请求体,因此我们可以使用bodyParser()来实现文件的上传功能. 2.实现过程 2.1 首先打开header.ejs,在<li><a href="/post" tit