spring怎么循环动态拼接sql
在Spring中,可以使用org.springframework.jdbc.core.JdbcTemplate来执行动态拼接的SQL语句。下面是一个示例:
import org.springframework.jdbc.core.JdbcTemplate;
...
@Autowired
private JdbcTemplate jdbcTemplate;
...
public List<String> getNames(List<Integer> ids) {
List<String> names = new ArrayList<>();
StringBuilder sql = new StringBuilder("SELECT name FROM users WHERE id IN (");
// 使用循环动态拼接SQL
for (int i = 0; i < ids.size(); i++) {
sql.append("?");
if (i < ids.size() - 1) {
sql.append(",");
}
}
sql.append(")");
Object[] params = ids.toArray();
// 执行SQL查询
names = jdbcTemplate.queryForList(sql.toString(), params, String.class);
return names;
}
在上述示例中,我们使用StringBuilder动态拼接了一个带有参数的SQL语句。然后,我们将参数数组传递给jdbcTemplate.queryForList()方法,该方法会执行SQL查询并返回结果列表
原文地址: http://www.cveoy.top/t/topic/hLsS 著作权归作者所有。请勿转载和采集!