专栏首页一个会写诗的程序员的博客《Springboot极简教程》继承WebMvcConfigurerAdapter: 一行代码写Controller文章概要常用的写Controller类方法继承 WebMvcConfigurerAd

《Springboot极简教程》继承WebMvcConfigurerAdapter: 一行代码写Controller文章概要常用的写Controller类方法继承 WebMvcConfigurerAd

文章概要

registry.addViewController("/login").setViewName("login");

常用的写Controller类方法

我们通常这样写一个直接跳转view的Controller

package com.restfeel.controller;

import java.util.Map;

import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@EnableAutoConfiguration
@ComponentScan
public class LoginController {

    @RequestMapping("/login")
    public String login(Map<String, Object> model) {
        return "login";
    }
}

要添加一个新页面访问总是要新增一个Controller或者在已有的一个Controller中新增一个方法,然后再跳转到设置的页面上去。考虑到大部分应用场景中View和后台都会有数据交互,这样的处理也无可厚非,不过我们肯定也有只是想通过一个URL Mapping然后不经过Controller处理直接跳转到页面上的需求!

继承 WebMvcConfigurerAdapter的Controller写法

package com.restfeel.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.ViewResolverRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

/**
 * Created by jack on 2017/3/28.
 * WebMvcConfig配置总类
 *
 * @author jack
 * @date 2017/03/28
 */
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        //这一段等同于com.restfeel.controller.LoginController,静态资源的拦截处理在com.restfeel.config.security.SecurityConfig设置
        registry.addViewController("/login").setViewName("login");
    }

}

这一段等同于com.restfeel.controller.LoginController,静态资源的拦截处理在com.restfeel.config.security.SecurityConfig设置。

源码:https://github.com/Jason-Chen-2017/restfeel/blob/master/src/main/java/com/restfeel/config/WebMvcConfig.java

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • sqlSessionFactoryBean.setMapperLocations 通配符 在配置代码中怎样使用

    sqlSessionFactoryBean.setMapperLocations 通配符 在配置代码中怎样使用

    一个会写诗的程序员
  • 第10章 集合类与泛型

    10.1 Kotlin集合类 10.1.1 不可变集合类 10.1.1.1 List 10.1.1.2 Set 10.1.1.3 Map

    一个会写诗的程序员
  • 8.4 Spring Boot集成Kotlin混合Java开发

    本章介绍Spring Boot集成Kotlin混合Java开发一个完整的spring boot应用:Restfeel,一个企业级的Rest API接口测试平台(...

    一个会写诗的程序员
  • 机器学习的类别

    mwangblog
  • ActiveMQ入门

    Apache ActiveMQ是当前最流行的开源的,支持多协议的,基于Java的消息中间件,官网的原话是:Apache ActiveMQ™ is the mos...

    CodingDiray
  • Springboot集成Swagger操作步骤

      随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、先后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。 前端和后端的...

    ZhangXianSheng
  • orc文件格式对常用系统的支持

    YG
  • 一起来学SpringBoot | 第二十二篇:轻松搞定重复提交(一)

    在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发...

    battcn
  • CSS选择器笔记

    这几天拿出来看了一下,发现很多都忘记了。所以,我决定把它们贴在这里,方便以后查看。这对其他朋友应该也是有用的,毕竟选择器是制作网页效果的第一步。

    ruanyf
  • 使用Java 操作MinIO

    MinIO 是一款高性能、分布式的对象存储系统。它是一款软件产品, 可以100%的运行在标准硬件。即X86等低成本机器也能够很好的运行MinIO。MinIO与传...

    JAVA日知录

扫码关注云+社区

领取腾讯云代金券