1
我需要一個存儲過程來比較我的數據庫表中的手機號碼列表。 示例我的表中包含100行,我通過java
字符串數組來存儲過程以獲取匹配的行值返回。Mysql用java字符串Array存儲過程
該數組包含多個手機號碼。
如果手機號碼匹配我的手機號碼列值,它返回行值。
有沒有可能的可能性?
如果可以請幫我..
我有它的工作在春季Jdbc
與mysql
其他的解決辦法。
private static final String GET_MATCHING_MOBILE_NUMBERS = "SELECT USER_ID, USER_NAME, REGISTRATION_ID, IMEI_CODE, MOBILE_NUMBER FROM USER WHERE MOBILE_NUMBER IN (";
@Override
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED)
public List<UserDO> getMatchingExistingUsers(final String[] mobileNumbers) throws UserDataException {
JdbcTemplate jd = this.getJdbctemplate();
Object[] params = mobileNumbers;
List<UserDO> userDOs = jd.query(getSqlQuery(GET_MATCHING_MOBILE_NUMBERS, mobileNumbers), params, new BeanPropertyRowMapper<UserDO>(UserDO.class));
return userDOs;
}
private String getSqlQuery(String query_string, String[] array_values) {
StringBuilder query_builder = new StringBuilder();
query_builder.append(query_string);
for (@SuppressWarnings("unused")
String values : array_values) {
query_builder.append("?,");
}
query_builder.append("*");
String formated_query = query_builder.toString().replace(",*", ")");
return formated_query;
}
我想如果可能的話上面的代碼.. 先感謝Mysql
存儲過程..