博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
盘点springmvc的常用接口
阅读量:6068 次
发布时间:2019-06-20

本文共 2188 字,大约阅读时间需要 7 分钟。

hot3.png

盘点springmvc的常用接口###

springmvc是如今非常流行的web开发框架之一。我个人非常喜欢它约定优于配置的理念。它暴露出非常多的接口,可以让用户自定义自己的实现,从而可以满足大家的各种各样的需求。

而springmvc也不仅仅是一个“插板”。它也提供了非常多常用的接口实现,一般地,使用它自带的实现类也即可满足大部分的需求了。

看了周边好多开发者使用springmvc,真的让我非常哭笑不得。大家都把springmvc这么神奇的框架,当做servlet来使用,依然是

public void demo(HttpServletRequest request, HttpServletResponse response) {		String name = request.getParameter("name");  		if (StringUtils.hasText(name)) {			try {				InputStream is = request.getInputStream();				// do something				response.getWriter().write("content");			} catch (IOException e) {				e.printStackTrace();			}		}	}

有些人会说,这样写也没什么不对啊,业务照样可以正常跑啊。

这就涉及到代码侵入性的问题了,request、response这些对象都来自于web容器,使用这些对象紧紧和容器耦合在了一起,不便于单元测试。还有mvc的controller层,本来应该处理业务的逻辑转发工作,而不是这些数据获取、验证、数据输出等等繁琐的工作。而且重点是使用request、response对象来处理数据非常之麻烦,代码也不容易重复使用,造成代码冗余,使用这种代码的,往往controller方法冗长笨重,不易于阅读和维护。

说到底,我是一个追求高雅代码的人,绝对不能容忍这样烂大街的代码。springmvc已经提供给我们非常多好用的接口,我们可以利用接口,避免直接操作request、response。

本系列文章就来盘点一下springmvc中常用的一些接口:

  • 8.盘点springmvc的常用接口之HandlerInterceptor
  • (未完结)

每个接口都给出了几个使用示例,为了简单易懂,功能都不是很完整。

示例使用spring-boot 和 lombok

spring-boot配置:

package com.demo;import org.springframework.boot.SpringApplication;public class DemoApplication {	public static void main(String[] args) {		SpringApplication.run(WebMvcConfiguration.class, args);	}}

springmvc配置类:

package com.demo;import java.util.List;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.method.support.HandlerMethodReturnValueHandler;import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;import com.demo.mvc.component.PersonReturnValueHandler;@SpringBootApplicationpublic class WebMvcConfiguration extends WebMvcConfigurationSupport {}

实体类:

package com.demo.domain;import lombok.AllArgsConstructor;import lombok.Getter;import lombok.NoArgsConstructor;import lombok.Setter;@Getter@Setter@NoArgsConstructor@AllArgsConstructorpublic class Person {	private String firstName;	private String lastName;	@Override	public String toString() {		return firstName + " " + lastName;	}}

(其它文章不再赘述环境配置)

示例源码:

本人才疏学浅,难免会有错误,请springmvc的大神不要见笑。写此系列盘点文章,也是对自己多年学习java和spring框架的总结。

java技术交流QQ群:247276498

转载于:https://my.oschina.net/sugarZone/blog/704570

你可能感兴趣的文章
一点IT"边缘化"的人的思考
查看>>
Gallery循环滑动
查看>>
Sql与C#中日期格式转换总结
查看>>
iOS开发流程总结
查看>>
hadoop datanode 启动出错
查看>>
js颜色拾取器
查看>>
IDEA使用(1)intellIJ idea 配置 svn
查看>>
Thread Safety in Java(java中的线程安全)
查看>>
WPF 降低.net framework到4.0
查看>>
数据管理DMS 全量SQL诊断:你的SQL是健康的蓝色,还是危险的红色?
查看>>
搭建一个通用的脚手架
查看>>
开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
查看>>
开源磁盘加密软件VeraCrypt教程
查看>>
本地vs云:大数据厮杀的最终幸存者会是谁?
查看>>
阿里云公共镜像、自定义镜像、共享镜像和镜像市场的区别 ...
查看>>
shadowtunnel v1.7 发布:新增上级负载均衡支持独立密码
查看>>
IdleHandler,页面启动优化神器
查看>>
Java线程:什么是线程
查看>>
mysql5.7 创建一个超级管理员
查看>>
【框架整合】Maven-SpringMVC3.X+Spring3.X+MyBatis3-日志、JSON解析、表关联查询等均已配置好...
查看>>