品优购商城项目第三阶段
1、springSecurity的基本用法与shiro类似。
2、BCrypt加密算法比MD5更加智能和安全,能自动加盐再加密,生成的密码是60位比md5的32位更占空间(可以忽略不计),由于密码长度增加安全系数更高,且盐不是明文由算法自动生成和解析,用户不需要关心。
3、set的使用,在下面这个引用类中用注解@[email protected]报错,后在类中用set方法成功
<!-- 认证类 -->
<beans:bean id="userDetailService" class="smallshop.shop.service.UserDetailsServiceImpl">
<beans:property name="sellerService" ref="sellerService"></beans:property>
</beans:bean>
<!-- 引用dubbo 服务 -->
<dubbo:application name="pinyougou-shop-web" />
<dubbo:registry address="zookeeper://192.168.25.135:2181"/>
<dubbo:reference id="sellerService" interface="sellergoods.service.SellerService"></dubbo:reference>
**
* 认证类
* @author Administrator
*
*/
public class UserDetailsServiceImpl implements UserDetailsService {
private SellerService sellerService;
//这里手动set,用注解注入会报错
public void setSellerService(SellerService sellerService) {
this.sellerService = sellerService;
}
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
System.out.println("经过了UserDetailsServiceImpl");
//构建角色列表
List<GrantedAuthority> grantAuths=new ArrayList();
grantAuths.add(new SimpleGrantedAuthority("ROLE_SELLER"));
//得到商家对象
TbSeller seller = sellerService.findOne(username);
if(seller!=null){
if(seller.getStatus().equals("1")){
return new User(username,seller.getPassword(),grantAuths);
}else{
return null;
}
}else{
return null;
}
}
}
原文地址:https://www.cnblogs.com/zeussbook/p/11087296.html