SpringMVC基础笔记(注解篇)

SpringMVC基础笔记(注解篇),第1张

SpringMVC基础笔记(注解篇) SpringMVC基础笔记(注解篇)

前言
MVC解释如下:
M是指业务模型(Model):通俗的讲就是我们之前用于封装数据传递的实体类。
V是指用户界面(View):一般指的是前端页面。
C则是控制器(Controller):控制器就相当于Servlet的基本功能,处理请求,返回响应

但是说实话,真正做项目的时候,就会因为需要编写的代码以及逻辑太多而崩溃,因为需要环环相扣,所以难免会出现顾此失彼的情况
为了简化我们的项目开发,我们采用SpringMVC编写代码

正文

导入依赖


    org.springframework
    spring-webmvc
    5.3.13


在这里我们需要写三个配置文件,两个主配置文件

MainConfig

//主配置文件
@Configuration
public class MainConfig {
}

WebConfig

//扫描controller
@ComponentScan("com.example.controller")
//主配置文件
@Configuration
//引入其他静态资源
@EnableWebMvc
public class WebConfig implements WebMvcConfigurer {

//    这三个方法是模板,直接复制就能用

    //我们需要使用ThymeleafViewResolver作为视图解析器,并解析我们的HTML页面
    @Bean
    public ThymeleafViewResolver thymeleafViewResolver(@Autowired SpringTemplateEngine springTemplateEngine){
        ThymeleafViewResolver resolver = new ThymeleafViewResolver();
        resolver.setOrder(1);   //可以存在多个视图解析器,并且可以为他们设定解析顺序
        resolver.setCharacterEncoding("UTF-8");   //编码格式是重中之重
        resolver.setTemplateEngine(springTemplateEngine);   //和之前JavaWeb阶段一样,需要使用模板引擎进行解析,所以这里也需要设定一下模板引擎
        return resolver;
    }

    //配置模板解析器
    @Bean
    public SpringResourceTemplateResolver templateResolver(){
        SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
        resolver.setSuffix(".html");   //需要解析的后缀名称
        resolver.setPrefix("/WEB-INF/");   //需要解析的HTML页面文件存放的位置
        return resolver;
    }

    //配置模板引擎Bean
    @Bean
    public SpringTemplateEngine springTemplateEngine(@Autowired ITemplateResolver resolver){
        SpringTemplateEngine engine = new SpringTemplateEngine();
        engine.setTemplateResolver(resolver);   //模板解析器,默认即可
        return engine;
    }

//    加载静态资源
    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();   //开启默认的Servlet
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static

    @RequestMapping(value = "/text",params = {"username"})
    public ModelAndView index() {
        return new ModelAndView("and");
    }

    @RequestMapping("/text2")
    public ModelAndView index2() {
        return new ModelAndView("band");
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5708045.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存