java – 如何使用NamedParameterJDBCTemplate中的字符串列表来获取结果

前端之家收集整理的这篇文章主要介绍了java – 如何使用NamedParameterJDBCTemplate中的字符串列表来获取结果前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
试用 Spring-JDBC.我使用 this作为参考.我正在尝试获得一个名称相同的演员.运行此代码给了我所需的结果:
  1. public List<String> getActorsWithSameLastName(String lastName,NamedParameterJdbcTemplate template) {
  2. String query = "SELECT FIRSTNAME FROM ACTORS WHERE LASTNAME=:LASTNAME";
  3. Map<String,String> paramMap = new HashMap<String,String>();
  4. paramMap.put("LASTNAME",lastName);
  5. return template.queryForList(query,paramMap,String.class);
  6. }

我有一个列表< String>的姓氏我如何获得一个列表的演员与我的列表?我是否迭代姓氏列表,并且每次调用getActorsWithSameLastName(),或者Spring提供了一种迭代方式,并为我获取结果?请指教.

解决方法

使用IN条款..

How to use SELECT IN clause in JDBCTemplates?

  1. List<String> lastnames= new ArrayList();
  2.  
  3. Map namedParameters = Collections.singletonMap("lastnamevalues",lastnames);
  4.  
  5. StringBuffer recordQueryString = new StringBuffer();
  6.  
  7. recordQueryString.append("select FIRSTNAME,LASTNAME from ACTORS where lastname in (:lastnamevalues) ");
  8.  
  9. List nameInvolments = this.namedparameterJdbcTemplate.query(recordQueryString.toString(),namedParameters,new MyMapper());

猜你在找的Java相关文章