springboot⽂献_springBoot优雅⼊门篇
SpringBoot是什么
简化各种配置,让你专注与你的业务逻辑。
使⽤start.spring,io构建项⽬
构建项⽬s tart.spring.io
下载后->解压->通过idea打开pom⽂件->以project的形式打开
解析结构
pom⽂件为基本的依赖管理⽂件(通过maven管理jar包)
resouces资源⽂件(web)
static静态资源
templates模板资源
application.properties配置⽂件
src/main/java下的程序⼊⼝
引⼊Web模块
注:其实是可以在构建项⽬的⽹站⾥添加的
当前已有的模块
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
spring-boot-starter:核⼼模块,包括⾃动配置⽀持、⽇志和YAML(其实不是很懂)
spring-boot-starter-test:测试模块
起步依赖spring-boot-starter-xx 提供了许多“开箱即⽤”的依赖模块,例如要实现web功能,引⼊spring-boot-starter-web这个依赖即可
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
编写hello world服务
src/main/ample.Chapter1下新建⼀个package hello然后新建controller类helloController
@RestController
public class HelloController {
springboot结构@RequestMapping("/")
public String index(){
return "hello world";
}
}
解释⼀下这⾥⾯的注解
RestController注解等价与@Controller+@ResponseBody结合,使⽤这个注解的类⾥⾯的⽅法都以json格式输出(returning data rather than a view)
启动应⽤,然后在浏览器中输⼊localhost:8080可以看到hello world。
是不是有点神奇,都没有进⾏任何配置就可以跑起来
没有做任务的l的配置(如果你有过java web的基础)
没有做过spring mvc的配置
没有配置tomcat(spring boot内嵌tomcat)
添加单元测试
注:⼀直以来都没有好好写过单元测试的代码
在pom⽂件下添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
在src/test/ample.Chapter1中新建package hello然后新建类HelloControllerTest
解释:MockMvc允许你通过⼀些便利的类,去发送http请求到DispatcherServlet,然后跟结果做⼀个判断。(模拟http)
使⽤MockServletContext来构建⼀个空的WebApplicationContext,使得HelloController可以在Before函数中创建并传递到MockMvcBuilders.standaloneSetup()函数中
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class HelloControllerTest {
@Autowired
private MockMvc mvc;
@Before
public void setUp() throws Exception{
mvc= MockMvcBuilders.standaloneSetup(new HelloController()).build();
}
@Test
public void getHello() throws Exception{
mvc.("/").accept(MediaType.APPLICATION_JSON))                .andExpect(status().isOk())
.andExpect(content().string(equalTo("hello world")));
}
}
参考⽂献
Building an Application with Spring Boot s pring.io

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。