1 springboot来临
1.1 使用注解还是xml问题
达成一个不成文的共识,对于MVC开发,控制器使用@Controller,业务层使用@Service,持久层使用@Repository;而对于公用的bean,例如数据库redis,第三方资源等则使用xml进行配置。
1.2 springboot的优点:
嵌入tomcat,jetty等服务器,不需要传统的war文件进行部署;
提供maven或者gradle依赖的starter, 这些starter可以直接获取开发所需的相关包,就能以java Application的形式运行spring boot项目,无须其他服务器配置;
主导思想:约定优于配置;意思就是大部分情况存在默认配置,例如spring-boot-starter-web捆绑了spring MVC所依赖的包,spring-boot-starter-tomcat绑定内嵌的tomcat;
1.3 传统springmvc 和 spring boot对比
springMVC项目:
第一种方式是在web.xml 中配置Dispatch而Servlet,spring IOC容器;
第二种方式是继承spring mvc提供的 AbstractAnnotationConfigDispatcherServletInitializer 来配置spring MVC,
第一步:写一个MyWebAppInitializer类继承AbstractAnnotationConfigDispatcherServletInitializer,进行spring IOC容器配置,DispatcherServlet拦截请求匹配等,这个类中用到了WebConfig.class, 是DispaterServlet的上下文;
第二步:配置DispatcherServlet的上下文,
而 spring boot直接配置pom.xml 即可
配置完pom.xml 再写一个类就可以启动了:
一般我们实际开发使用的是@SpringBootApplication 注解, 是 @Controller,@EnableAutoConfiguration,@ComponentScan的结合,作为这个项目的一个启动类,也就是spring MVC的控制器加载进来。
下面一章就会介绍基本的开会环境搭建和基本开发!
其实之前写项目时可能并不知道这些注解有什么作用,就只知道需要这么写,但是慢慢学习过程中还是对spring,以及spring boot的相关知识渐渐有了更多的了解,看来还是需要多学习一些框架的原理,思想,知识,才对以后的学习更有帮助,光会用还是不行的,最后感叹一句,spring框架提出者 Rod Johnson好厉害啊,而且还是音乐博士!!!