1. 配置文件
获取配置文件中自定义的配置参数值
-
方法一
在java代码中获取配置文件的参数
-
方法二(建议使用)
minMoney: 0.01
maxMoney: 9999
description: 最少要发${limit.minMoney}元, 最多${limit.maxMoney}元
limit:
minMoney: 0.01
maxMoney: 9999
description: 最少要发${limit.minMoney}元, 最多${limit.maxMoney}元
在java代码中获取配置文件的参数
@Component
@ConfigurationProperties(prefix = "limit")
public class LimitConfig {
private BigDecimal minMoney;
private BigDecimal maxMoney;
private String description;
public BigDecimal getMinMoney() {
return minMoney;
}
public void setMinMoney(BigDecimal minMoney) {
this.minMoney = minMoney;
}
public BigDecimal getMaxMoney() {
return maxMoney;
}
public void setMaxMoney(BigDecimal maxMoney) {
this.maxMoney = maxMoney;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
使用
数据库配置
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.0.110:3306/luckymoney?characterEncoding=utf-8
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update
show-sql: true
SpringBoot项目启动的三种方式
- 使用IDEA 启动
需要事先编译(compile)好
使用java -jar 命令启动打包好的jar包
java -jar luckymoney-0.0.1-SNAPSHOT.jar
可以指定启动使用的配置文件
java -jar -Dspring.profiles.active=prod luckymoney-0.0.1-SNAPSHOT.jar
2. Controller的使用
- URL请求
- 获取请求的参数
required=true表示参数必传
- 数据库操作
- Spring-Data-Jpa
数据库
- 配置数据库
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.0.110:3306/luckymoney?characterEncoding=utf-8
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update
show-sql: true
- 新建数据数据的主题类
- 使用Jpa
springBoot使用Jpa非常简单只需要:新建接口,继承JpaRepository就可以了
数据库的事务@Transactional
事务特指数据库,他是数据库提供的功能,SpringBoot只是帮我们简化数据库事务的操作
事务:保证数据库操作的 一致性,防止出现脏数据
使用Navicat 查看修改数据库的引擎
@Service
public class LuckymoneyService {
@Autowired
private LuckmoneyRepository repository;
/**
* 事务 指数据库事务
* 扣库存 > 创建订单
*/
@Transactional
public void createTwo() {
Luckymoney luckymoney1 = new Luckymoney();
luckymoney1.setProducer("廖师兄");
luckymoney1.setMoney(new BigDecimal("520"));
repository.save(luckymoney1);
Luckymoney luckymoney2 = new Luckymoney();
luckymoney2.setProducer("廖师兄");
luckymoney2.setMoney(new BigDecimal("1314"));
repository.save(luckymoney2);
}
}