Skip to content

Commit 12e695e

Browse files
committed
Add userDetailsMapper as a class member
Signed-off-by: dae won <[email protected]>
1 parent 9fdfcc5 commit 12e695e

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

core/src/main/java/org/springframework/security/provisioning/JdbcUserDetailsManager.java

+9-1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import org.springframework.core.log.LogMessage;
3131
import org.springframework.dao.IncorrectResultSizeDataAccessException;
3232
import org.springframework.jdbc.core.PreparedStatementSetter;
33+
import org.springframework.jdbc.core.RowMapper;
3334
import org.springframework.security.access.AccessDeniedException;
3435
import org.springframework.security.authentication.AuthenticationManager;
3536
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
@@ -156,13 +157,20 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
156157

157158
private UserCache userCache = new NullUserCache();
158159

160+
private RowMapper<UserDetails> userDetailsMapper = this::mapToUser;
161+
159162
public JdbcUserDetailsManager() {
160163
}
161164

162165
public JdbcUserDetailsManager(DataSource dataSource) {
163166
setDataSource(dataSource);
164167
}
165168

169+
public void setUserDetailsMapper(RowMapper<UserDetails> mapper) {
170+
Assert.notNull(mapper, "userDetailsMapper cannot be null");
171+
this.userDetailsMapper = mapper;
172+
}
173+
166174
@Override
167175
protected void initDao() throws ApplicationContextException {
168176
if (this.authenticationManager == null) {
@@ -178,7 +186,7 @@ protected void initDao() throws ApplicationContextException {
178186
*/
179187
@Override
180188
protected List<UserDetails> loadUsersByUsername(String username) {
181-
return getJdbcTemplate().query(getUsersByUsernameQuery(), this::mapToUser, username);
189+
return getJdbcTemplate().query(getUsersByUsernameQuery(), userDetailsMapper, username);
182190
}
183191

184192
protected UserDetails mapToUser(ResultSet rs, int rowNum) throws SQLException {

0 commit comments

Comments
 (0)