springboot 前端传如demand_id的字段集合List<String>,sql查询集合里的字段名在数据库里的值
时间: 2024-09-10 18:23:38 浏览: 96
在Spring Boot中,如果你想要通过前端传入的`demand_id`字段集合(`List<String>`类型)来查询数据库中相应字段的值,你可以使用MyBatis或JPA等ORM框架来实现这一需求。
以下是一个使用Spring Data JPA的简单示例:
1. 首先,在你的实体类中定义一个与数据库字段对应的属性,例如`demandId`。
```java
@Entity
public class YourEntity {
@Id
private Long id;
// 其他字段...
// 对应前端传入的demand_id字段集合
@ElementCollection
private List<String> demandId;
// getter和setter方法...
}
```
2. 创建一个Repository接口来处理数据库操作:
```java
public interface YourEntityRepository extends JpaRepository<YourEntity, Long> {
List<YourEntity> findByIdIn(List<String> demandIds);
}
```
3. 在你的服务层中注入Repository,并调用相应的方法来根据`demand_id`集合查询数据:
```java
@Service
public class YourEntityService {
@Autowired
private YourEntityRepository repository;
public List<YourEntity> getEntitiesByDemandIds(List<String> demandIds) {
return repository.findByIdIn(demandIds);
}
}
```
4. 在你的控制器中,你可以接受前端传入的`demand_id`集合,并调用服务层的方法来获取数据:
```java
@RestController
@RequestMapping("/api")
public class YourEntityController {
@Autowired
private YourEntityService service;
@PostMapping("/getEntities")
public ResponseEntity<List<YourEntity>> getEntitiesByDemandIds(@RequestBody List<String> demandIds) {
List<YourEntity> entities = service.getEntitiesByDemandIds(demandIds);
return ResponseEntity.ok(entities);
}
}
```
这样,当你的前端应用向`/api/getEntities`发送一个包含`demand_id`集合的POST请求时,后端就会根据这些ID在数据库中查询对应的实体并返回结果。
阅读全文