房产中介做网站,广州cms建站系统,汽车配件外贸出口公司,百度下载并安装到桌面目录
1 Spring MVC 零配置创建与部署
1.1 创建Spring MVC Web⼯程
1.2 pom.xml 添加坐标相关配置
1.3 添加源代码
1.4 添加视图
1.5 SpringMVC 配置类添加
1.6 入口文件代码添加
1.7 部署与测试
2 Spring Boot 概念特点
2.1 框架概念
2.2 框架特点
2.3 Spring…目录
1 Spring MVC 零配置创建与部署
1.1 创建Spring MVC Web⼯程
1.2 pom.xml 添加坐标相关配置
1.3 添加源代码
1.4 添加视图
1.5 SpringMVC 配置类添加
1.6 入口文件代码添加
1.7 部署与测试
2 Spring Boot 概念特点
2.1 框架概念
2.2 框架特点
2.3 Spring Boot 快速⼊⻔
2.3.1 环境准备Idea、Maven、Jdk 1.8 、Spring Boot 2.x
2.3.2 创建项目
2.3.3 添加依赖坐标
2.3.4 导⼊Spring Boot的web坐标与相关插件
2.3.5 添加源代码
2.3.6 创建启动程序
2.3.7 启动Spring Boot应⽤并测试 1 Spring MVC 零配置创建与部署
1.1 创建Spring MVC Web⼯程 创建 Maven 的 web 项⽬
1.2 pom.xml 添加坐标相关配置
!-- spring web --
dependencygroupIdorg.springframework/groupIdartifactIdspring-web/artifactIdversion5.2.4.RELEASE/version
/dependency
!-- spring mvc --
dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.2.4.RELEASE/version
/dependency
!-- web servlet --
dependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.0.1/version
/dependency
buildfinalNamespringmvc/finalNameplugins!-- 指定Maven编译的JDK版本和编码 --plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion2.3.2/versionconfigurationsource1.8/sourcetarget1.8/targetencodingutf-8/encoding/configuration/plugin
/plugins
/build1.3 添加源代码
Controller
public class HelloController {RequestMapping(/index)public String index(){return index;}
}
1.4 添加视图
在 WEB-INF/views ⽬录下创建 index.jsp这⾥以jsp为模板
htmlbodyh2Hello mvc/h2/body
/html
1.5 SpringMVC 配置类添加 Spring Mvc 配置信息 MvcConfig ⽂件添加作为 Mvc 框架环境原来是通过 xml 来进⾏配置 (视图 解析器、Json转换器、⽂件上传解析器等)这⾥基于注解通过继承 WebMvcConfigurerAdapter 类并 重写相关⽅法来进⾏配置 (注意通过 EnableWebMvc 注解来启动 MVC 环境)。
/**
* MVC 基本配置
*/
// 配置类
Configuration
// 在Configuration注解的配置类中添加⽤于为该应⽤添加SpringMVC的功能
EnableWebMvc
// 扫描包范围
ComponentScan(com.xxxx.springboot)
public class MvcConfig {/*** 配置 JSP视图解析器* return*/Bean // 将⽅法返回的结果交给IOC容器维护public InternalResourceViewResolver viewResolver(){// 获取视图解析器InternalResourceViewResolver viewResolver new
InternalResourceViewResolver();// 设置前缀viewResolver.setPrefix(/WEB-INF/views/);// 设置后缀viewResolver.setSuffix(.jsp);// 返回解析器对象 交给IOC容器进⾏维护return viewResolver;}
} MvcConfig 类定义好了那么问题来了怎么加载 MvcConfig 类呢原来在构建 Mvc 应⽤时是通过容器启动应⽤时加载 web.xml ⽂件实现配置⽂件加载现在的环境 web.xml ⽂件不存在此时基于注 解⽅式构建的 Mvc 应⽤定义 WebInitializer 实现 WebApplicationInitializer 接⼝ (该接⼝⽤来配置 Servlet3.0 配置的接⼝⽤于替代 web.xml 配置)当 servlet 容器启动Mvc应⽤时会通过 SpringServletContainerInitializer 接⼝进⾏加载从⽽加载 Mvc 应⽤信息配置。实现该接⼝ onStartup ⽅法 加载应⽤信息配置。
1.6 入口文件代码添加
/**
* 实现 WebApplicationinitializer 接⼝的类都可以在web应⽤程序启动时被加载
*/
public class WebInitializer implements WebApplicationInitializer {Overridepublic void onStartup(ServletContext servletContext) throws
ServletException {// 基于Java的配置类加载Spring的应⽤上下⽂AnnotationConfigWebApplicationContext ctx new
AnnotationConfigWebApplicationContext();// 注册 Mvc 配置信息ctx.register(MvcConfig.class);// 设置 ServletContext 上下⽂信息ctx.setServletContext(servletContext);// 配置转发器 DispatcherServletRegistration.Dynamic servlet
servletContext.addServlet(dispatcher,new DispatcherServlet(ctx));// 设置映射路径servlet.addMapping(/);// 启动时即实例化 Beanservlet.setLoadOnStartup(1);}
}1.7 部署与测试 通过 Tomcat 启动项⽬并访问 此时地址访问成功。 当项⽬访问成功后那么问题来了如果项⽬中存在静态资源⽂件Handler 放⾏处理该如何配置 定义的拦截器怎么应⽤此时关注 WebMvcConfigurationSupport ⽗类⽅法重写相关⽅法即可。
// 静态资源 handler不进⾏处理 直接响应到客户端
Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer
configurer) {configurer.enable();
}
// 配置拦截器
Bean
public LoginInterceptor loginInterceptor(){return new LoginInterceptor();
}
// 添加拦截器到mvc 环境
Override
public void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor());
}2 Spring Boot 概念特点
2.1 框架概念 随着动态语⾔流⾏(Ruby、Scala、NodeJs等)Java 开发变得相对笨重配置繁琐开发效率低下 部署流程复杂以及第三⽅集成难度也相对较⼤针对该环境Spring Boot 被开发出来其使⽤“习惯 ⼤于配置⽬标”,借助Spring Boot 能够让项⽬快速运⾏起来同时借助 Spring Boot 可以快速创建 web 应⽤并独⽴进⾏部署(jar包 war 包⽅式内嵌 servlet 容器)同时借助 Spring Boot 在开发应⽤时可以 不⽤或很少去进⾏相关 xml 环境配置简化了开发⼤⼤提⾼项⽬开发效率。 Spring Boot 是由 Pivotal 团队提供的全新框架其设计⽬的是⽤来简化 Spring 应⽤的初始搭建以及开发过程。该框架使⽤了特定的⽅式来进⾏配置从⽽使开发⼈员不再需要定义样板化的配置。通过这 种⽅式让 Spring Boot在蓬勃发展的快速应⽤开发领域 (rapid application development) 成为领导者。
2.2 框架特点 创建独⽴ Spring 应⽤程序、嵌⼊式 Tomcat、Jetty 容器、⽆需部署 WAR 包、简化 Maven 及 Gradle 配置、尽可能⾃动化配置 Spring、直接植⼊产品环境下的实⽤功能⽐如度量指标、健康检查及扩展配 置、⽆需代码⽣成及 XML 配置等同时 Spring Boot 不仅对 web 应⽤程序做了简化还提供⼀系列的 依赖包来把其它⼀些⼯作做成开箱即⽤。
2.3 Spring Boot 快速⼊⻔
2.3.1 环境准备Idea、Maven、Jdk 1.8 、Spring Boot 2.x
2.3.2 创建项目 通过 Maven 创建⼀个普通的 java 项⽬
2.3.3 添加依赖坐标
parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.2.2.RELEASE/version
/parent
dependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency
/dependenciesSpring Boot 的项⽬必须要将 parent 设置为 Spring Boot 的 parent该 parent 包含了⼤量默认的配 置简化程序的开发。
2.3.4 导⼊Spring Boot的web坐标与相关插件
plugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId
/plugin
2.3.5 添加源代码
Controller
public class HelloController {RequestMapping(hello)ResponseBodypublic String hello(){return Hello SpringBoot;}
}
2.3.6 创建启动程序 在 HelloController.java 所在包下创建 StarterApplication.java
SpringBootApplication
public class Starter{public static void main(String[] args) {SpringApplication.run(Starter.class);}
}2.3.7 启动Spring Boot应⽤并测试
这⾥运⾏main ⽅法即可通过浏览器访问 http://localhost:8080/hello 效果如下: