编写访问数据库表添加记录和无条件查询的SpringBoot应用程序,求得price的平均值使用类型转换保留整数部分)。
时间: 2024-03-25 20:40:23 浏览: 85
好的,首先需要在SpringBoot应用程序中配置数据库连接,以便访问数据库表。这里假设使用MySQL数据库,配置方式如下:
1. 在pom.xml文件中添加MySQL驱动依赖:
```
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
```
2. 在application.properties文件中配置数据库连接:
```
spring.datasource.url=jdbc:mysql://localhost:3306/test_db
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
```
其中,test_db是数据库名称,root和123456是数据库用户名和密码,需要根据实际情况修改。
3. 创建实体类和数据访问层接口:
实体类:
```
@Entity
@Table(name = "product")
public class Product {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private Integer price;
// 省略getter和setter方法
}
```
数据访问层接口:
```
public interface ProductRepository extends JpaRepository<Product, Long> {
}
```
4. 编写控制器类:
```
@RestController
@RequestMapping("/product")
public class ProductController {
@Autowired
private ProductRepository productRepository;
@PostMapping("/add")
public Product addProduct(@RequestBody Product product) {
return productRepository.save(product);
}
@GetMapping("/averagePrice")
public Integer getAveragePrice() {
List<Product> productList = productRepository.findAll();
if (productList.isEmpty()) {
return 0;
}
int sum = productList.stream().mapToInt(Product::getPrice).sum();
return sum / productList.size();
}
}
```
其中,addProduct方法用于添加记录,getAveragePrice方法用于查询价格的平均值(保留整数部分)。
5. 启动应用程序,在浏览器中访问http://localhost:8080/swagger-ui.html,可以看到Swagger UI界面,测试以上两个接口是否正常工作。
注意:这里没有使用类型转换保留整数部分,而是使用了整数除法,如果需要使用类型转换,请使用Math.round()方法。
阅读全文