1.pom.xml文件
<!--springboot框架web项目起步依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--springboot框架测试起步依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--springboot项目编译打包插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
2.@SpringBootApplication注解类
springboot核心注解,主要用于开启springboot自动配置;
3.API接口语法
@RequestMapping(value = "/springboot2/say3")
public @ResponseBody String say3() {
return "hello啊ddddddddd";
}
4.核心配置文件
可以是application.properties
#修改tomcat默认端口号
server.port=8081
#配置url根路径
server.servlet.context-path=/ywxk
或者application.yml/application.yaml
server:
port: 8091
servlet:
context-path: /ywxk2
核心配置文件只能有一种,如果两个文件都存在,则.properties文件优先级更高;
5.多环境核心配置文件
properties:
实际开发中将核心配置文件分为:application-dev.properties,application-product.properties,application-ready.properties,application-test.properties,application.properties
其中application.properties是主核心配置文件;
application.properties文件
#主核心配置文件
spring.profiles.active=dev
application-dev.properties文件
#开发环境配置
server.port=10001
server.servlet.context-path=/dev
application-product.properties
#生产环境配置
server.port=10004
server.servlet.context-path=/pro
application-ready.properties
#准生产环境配置
server.port=10003
server.servlet.context-path=/ready
application-test.properties
#测试环境配置
server.port=10002
server.servlet.context-path=/test
yml:
application.yml文件
#主核心配置文件
spring:
profiles:
active: dev
application-dev.yml文件 -后面取a也可以,但是建议取名能够见名知义
#开发环境配置
server:
port: 20001
servlet:
context-path: /dev
application-test.yml文件
#测试环境配置
server:
port: 20002
servlet:
context-path: /test
application-pro.yml文件
#生产环境配置
server:
port: 20003
servlet:
context-path: /pro
6.获取配置文件的内容
#主核心配置文件
spring.profiles.active=dev
movie.name=天地英雄
year=2003
//类中
@Value("${movie.name}")
private String mName;
@Value("${year}")
protected int mYear;
7.自定义配置映射到对象
#主核心配置文件
spring.profiles.active=dev
m1.name=天地英雄
m1.year=2003
m2.name=agzz
m2.year=2013
//对象类
@Component
@ConfigurationProperties(prefix = "m2") //前缀必须匹配
public class MoConfig {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
private int year;
}
调用
@Controller
public class HelloController {
@Autowired
private MoConfig m2;
@RequestMapping("/test1")
@ResponseBody
public String test1() {
return m2.getName() + m2.getYear();
}
}
8.springboot内嵌jsp
参考
最强SpringBoot实战教程内容通俗易懂springboot微服务开发实战Spring Boot2全套完整版_哔哩哔哩_bilibili
9.springboot整合Mybatis
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--MyBatis整合springboot框架的起步依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
mybatis逆向工程-自动生成mapper与model文件:https://blog.csdn.net/y_w_x_k/article/details/124360695
mapper.xml文件解析:
<resultMap id="BaseResultMap" type="com.ywxk2.springboot.springboottest2.model.Movie">
<!--
resultMap作用:
1.当数据库中字段名称与实体类属性名不一致时,可以进行转换
2.当查询的结果没有对应一个表的时候,可以自定义一个结果集
id标签: 只能修饰主键字段
result标签: 修饰除了主键以外的字段
column: 数据库中的字段名称
property: 映射对象的属性名称,如果数据库的字段由多个单词组成,那么通过mabatis逆向工程会按照驼峰命名法生成属性,其中,数据库中的字段如果是多个单词构成的时候必须用下划线分隔
jdbcType: 数据库中字段的类型
-->
<id column="m_id" jdbcType="INTEGER" property="mId" />
<result column="m_name" jdbcType="VARCHAR" property="mName" />
<result column="m_up_year" jdbcType="INTEGER" property="mUpYear" />
<result column="m_director" jdbcType="VARCHAR" property="mDirector" />
<result column="m_adddate" jdbcType="TIMESTAMP" property="mAdddate" />
</resultMap>
<!--
sql语句片段,将sql语句的公共的部分抽取出来,通过include标签引用进去
-->
<sql id="Base_Column_List">
m_id, m_name, m_up_year, m_director, m_adddate
</sql>
10、数据库连接四要素设置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/movie?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=root