- 创建一个maven 的mavenweb项目
- 添加依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.7</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.29</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>8.5.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<!-- fork:如果此处没有配置,这个devtools不会起作用,应用不会重启 -->
</configuration>
</plugin>
</plugins>
</build>
- 在src/main/resources下 创建一个 application.properties
其中添加视图解析
前缀:
spring.mvc.view.prefix=/WEB-INF/jsp/
后缀:
spring.mvc.view.suffix=.jsp - 创建controller
如果用 @Controller
@RequestMapping("/webTest")
返回一个页面,返回值是String
返回一个json,方法前面加上@ResponseBody。
如果用 @RestController = (@Controller+ @ResponseBody)
默认方法全部返回Json
如果要想返回视图,返回值不能是String,返回值的类型可以设置成 ModelAndView - 静态内容访问:(静态资源释放)
- 静态内容:例如,图片。Css,js
- 在src/mian/resources 下 创建一个文件夹 static
- 在static 下放置一些文件夹,文件,作为静态文件
- 在jsp页面引入,直接访问地址,是访问不了的,静态文件被拦截
- <%=basePath%>/static/js/jquery-1.8.3.min.js
- 在application.propertes 配置文件中,配置允许访问
Spring.mvc.static-path-pattern = /static/**
- application.properties 配置文件内容
a) 端口号配置
server.port = 8888; - 数据库连接
spring.datasource.url=jdbc\:mysql\://localhost\:3306/usertest?useUnicode\=true&characterEncoding\=gbk&zeroDateTimeBehavior\=convertToNull
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
spring.datasource.maxWait=60000
- Mybatis 别名和映射文件
mybatis.mapper-locations=classpath*:mapper/*Mapper.xml
mybatis.type-aliases-package=com.cwh.springbootMybatis.entity
- Jsp文件前后缀
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
- 基本注解的各个用法
- @SpringBootApplication:包含了@ComponentScan、@Configuration和
@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。
例子:
//关键启动配置
@SpringBootApplication(scanBasePackages={"com.cwh.springbootMybatis.controller","com.cwh.springbootMybatis.service.impl"})
//Spring Boot 启动默认配置
@EnableAutoConfiguration
//扫描mapper文件夹
@MapperScan(basePackages={"com.cwh.springbootMybatis.mapper"})
public class AppStart {
public static void main(String[] args) {
SpringApplication.run(AppStart.class, args);
}
}
- @ResponseBody:表示该方法的返回结果直接写入HTTP response body中,一般在异步获取数据时使用,用于构建RESTful的api。在使用@RequestMapping后,返回值通常解析为跳转路径,加上@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。比如异步获取json数据,加上@responsebody后,会直接返回json数据。该注解一般会配合@RequestMapping一起使用。示例代码:
@RequestMapping(“/test”)
@ResponseBody
public String test(){
return”ok”;
}