三种好用的controller跳转thmleaf页面的方法总结!!

一、直接在Controller中写跳转方法,最简单也是最普通的方法【不推荐使用】

@Controller//页面跳转是直接用Controller:ResponstController他会默认给页面所有的方法加上ResponstBoring,他会返回对象,而不是页面跳转
@Slf4j
public class LoginController {

    @RequestMapping(value = "/toLogin")
    public String toLogin(){
        System.out.println("toLogin");
        return "login";
    }
}

 二,在第一种方法的基础上改进的方法,直接将名字映射到html文件(只用写一个跳转方法即可)【重点推荐使用这个方法】

@Controller
@Slf4j
public class ToHtmlController {
    @RequestMapping("/{target}")
    public String forward(@PathVariable("target") String target){
        return target;
    }
}

 三、写一个视图映射器:不需要单独写映射到thmleaf的方法(个人觉得没有第二种方法简单)

@Configuration
public class ManagerWebConfig implements WebMvcConfigurer {

    /**
     * 视图映射
     * @param registry
     */
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        System.out.println("------视图映射--------");
        //registry相当于viewcontroller的注册中心,想让哪些请求跳到哪些页面,在这里注册就行了
        registry.addViewController("/login.html").setViewName("/login/toLogin");//添加视图控制器,第一个参数urlPath是请求地址等同于requestMapping的地址。第二个参数viewName是视图名,也就是原来controller中return的页面的名。
    }
}

  

posted @ 2024-06-23 17:10  仙女无可奈何  阅读(4)  评论(0编辑  收藏  举报