-
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");
}
}



