1条回答 默认 最新
- weixin_43191436 2019-04-24 21:21关注
新版的io.spring.platform集成的jar包是没有spring social的自动配置类的(SocialAutoConfigurerAdapter),可以直接使用其父类进行配置
```package com.zxx.security.core.social; import com.zxx.security.core.properties.QQProperties; import com.zxx.security.core.properties.SecurityProperties; import com.zxx.security.core.social.qq.SpringSocialConfig; import com.zxx.security.core.social.qq.connect.QQConnectionFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.env.Environment; import org.springframework.security.crypto.encrypt.Encryptors; import org.springframework.social.UserIdSource; import org.springframework.social.config.annotation.ConnectionFactoryConfigurer; import org.springframework.social.config.annotation.EnableSocial; import org.springframework.social.config.annotation.SocialConfigurerAdapter; import org.springframework.social.connect.ConnectionFactory; import org.springframework.social.connect.ConnectionFactoryLocator; import org.springframework.social.connect.UsersConnectionRepository; import org.springframework.social.connect.jdbc.JdbcUsersConnectionRepository; import org.springframework.social.security.SpringSocialConfigurer; import javax.sql.DataSource; /** * @Auther: zxx * @Date: 2019/4/17 23:17 * @Description: */ @Configuration @EnableSocial public class SocialConfig extends SocialConfigurerAdapter { @Autowired private DataSource dataSource; @Autowired private SecurityProperties securityProperties; @Override public UserIdSource getUserIdSource() { return new UserIdSource() { public String getUserId() { return "zxx"; } }; } @Override public void addConnectionFactories(ConnectionFactoryConfigurer connectionFactoryConfigurer, Environment environment) { connectionFactoryConfigurer.addConnectionFactory(createConnectionFactory()); } public ConnectionFactory<?> createConnectionFactory() { QQProperties qqProperties = securityProperties.getSocialProperties().getQqProperties(); return new QQConnectionFactory("qq", qqProperties.getAppId(), qqProperties.getAppSecret()); } @Override public UsersConnectionRepository getUsersConnectionRepository(ConnectionFactoryLocator connectionFactoryLocator) { return new JdbcUsersConnectionRepository(dataSource,connectionFactoryLocator, Encryptors.noOpText()); } @Bean public SpringSocialConfigurer zxxspringSocialConfigurer(){ SpringSocialConfig config=new SpringSocialConfig("/auth"); return config; } }
解决 无用评论 打赏 举报
悬赏问题
- ¥20 idea运行测试代码报错问题
- ¥15 网络监控:网络故障告警通知
- ¥15 django项目运行报编码错误
- ¥15 请问这个是什么意思?
- ¥15 STM32驱动继电器
- ¥15 Windows server update services
- ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
- ¥15 模糊pid与pid仿真结果几乎一样
- ¥15 java的GUI的运用
- ¥15 我想付费需要AKM公司DSP开发资料及相关开发。