最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring?Security用戶定義?

 更新時間:2022年02月18日 14:10:34   作者:周杰倫本人  
這篇文章主要介紹了Spring?Security用戶定義,大家都知道?Spring?Security的用戶定義有很多方式,其實主要有兩種,基于內(nèi)存的和基于數(shù)據(jù)庫的,下面我給大家簡單介紹一下這兩種方式,需要的朋友可以參考下

基于內(nèi)存的和基于數(shù)據(jù)庫的,下面我給大家簡單介紹一下這兩種方式。

一、基于內(nèi)存

Spring Security中的配置:

@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
? ? InMemoryUserDetailsManager manager = new InMemoryUserDetailsManager();
? ? manager.createUser(User.withUsername("admin").password("{noop}123").roles("admin").build());
? ? manager.createUser(User.withUsername("sang").password("{noop}123").roles("user").build());
? ? auth.userDetailsService(manager);
}

二、基于mybatis

MyUserDetailsService

@Service
public class MyUserDetailsService implements UserDetailsService {
? ? @Autowired
? ? UserMapper userMapper;
? ? @Override
? ? public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
? ? ? ? User user = userMapper.loadUserByUsername(username);
? ? ? ? if (user == null) {
? ? ? ? ? ? throw new UsernameNotFoundException("用戶不存在");
? ? ? ? }
? ? ? ? user.setRoles(userMapper.getRolesByUid(user.getId()));
? ? ? ? return user;
? ? }
}

User類:

public class User implements UserDetails {
? ? private Integer id;
? ? private String username;
? ? private String password;
? ? private Boolean enabled;
? ? private Boolean accountNonExpired;
? ? private Boolean accountNonLocked;
? ? private Boolean credentialsNonExpired;
? ? private List<Role> roles = new ArrayList<>();

? ? @Override
? ? public String toString() {
? ? ? ? return "User{" +
? ? ? ? ? ? ? ? "id=" + id +
? ? ? ? ? ? ? ? ", username='" + username + '\'' +
? ? ? ? ? ? ? ? ", password='" + password + '\'' +
? ? ? ? ? ? ? ? ", enabled=" + enabled +
? ? ? ? ? ? ? ? ", accountNonExpired=" + accountNonExpired +
? ? ? ? ? ? ? ? ", accountNonLocked=" + accountNonLocked +
? ? ? ? ? ? ? ? ", credentialsNonExpired=" + credentialsNonExpired +
? ? ? ? ? ? ? ? ", roles=" + roles +
? ? ? ? ? ? ? ? '}';
? ? }

? ? @Override
? ? public Collection<? extends GrantedAuthority> getAuthorities() {
? ? ? ? List<SimpleGrantedAuthority> authorities = new ArrayList<>();
? ? ? ? for (Role role : roles) {
? ? ? ? ? ? authorities.add(new SimpleGrantedAuthority(role.getName()));
? ? ? ? }
? ? ? ? return authorities;
? ? }

? ? @Override
? ? public String getPassword() {
? ? ? ? return password;
? ? }

? ? @Override
? ? public String getUsername() {
? ? ? ? return username;
? ? }

? ? @Override
? ? public boolean isAccountNonExpired() {
? ? ? ? return accountNonExpired;
? ? }

? ? @Override
? ? public boolean isAccountNonLocked() {
? ? ? ? return accountNonLocked;
? ? }

? ? @Override
? ? public boolean isCredentialsNonExpired() {
? ? ? ? return credentialsNonExpired;
? ? }

? ? @Override
? ? public boolean isEnabled() {
? ? ? ? return enabled;
? ? }

? ? public void setId(Integer id) {
? ? ? ? this.id = id;
? ? }

? ? public void setUsername(String username) {
? ? ? ? this.username = username;
? ? }

? ? public void setPassword(String password) {
? ? ? ? this.password = password;
? ? }

? ? public void setEnabled(Boolean enabled) {
? ? ? ? this.enabled = enabled;
? ? }

? ? public void setAccountNonExpired(Boolean accountNonExpired) {
? ? ? ? this.accountNonExpired = accountNonExpired;
? ? }

? ? public void setAccountNonLocked(Boolean accountNonLocked) {
? ? ? ? this.accountNonLocked = accountNonLocked;
? ? }

? ? public void setCredentialsNonExpired(Boolean credentialsNonExpired) {
? ? ? ? this.credentialsNonExpired = credentialsNonExpired;
? ? }

? ? public Integer getId() {
? ? ? ? return id;
? ? }

? ? public List<Role> getRoles() {
? ? ? ? return roles;
? ? }

? ? public void setRoles(List<Role> roles) {
? ? ? ? this.roles = roles;
? ? }
}

Spring Security中的配置:

@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
? ? auth.userDetailsService(myUserDetailsService);
}

到此這篇關(guān)于Spring Security用戶定義 的文章就介紹到這了,更多相關(guān)Spring Security用戶定義 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • spring中@ComponentScan自動掃描并指定掃描規(guī)則

    spring中@ComponentScan自動掃描并指定掃描規(guī)則

    本文主要介紹了spring中@ComponentScan自動掃描并指定掃描規(guī)則,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 教你如何把Eclipse創(chuàng)建的Web項目(非Maven)導入Idea

    教你如何把Eclipse創(chuàng)建的Web項目(非Maven)導入Idea

    這篇文章主要介紹了教你如何把Eclipse創(chuàng)建的Web項目(非Maven)導入Idea,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • WebUploader實現(xiàn)圖片上傳功能

    WebUploader實現(xiàn)圖片上傳功能

    這篇文章主要為大家詳細介紹了WebUploader實現(xiàn)圖片上傳功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Java消息隊列RabbitMQ入門詳解

    Java消息隊列RabbitMQ入門詳解

    這篇文章主要介紹了Java消息隊列RabbitMQ入門詳解,RabbitMQ是使用Erlang語言開發(fā)的開源消息隊列系統(tǒng),基于AMQP協(xié)議 來實現(xiàn),AMQP的主要特征是面向消息、隊列、路由(包括點對點和發(fā)布 /訂閱)、可靠性、安全,需要的朋友可以參考下
    2023-07-07
  • Spring實現(xiàn)在非controller中獲取request對象

    Spring實現(xiàn)在非controller中獲取request對象

    這篇文章主要介紹了Spring實現(xiàn)在非controller中獲取request對象方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java鏈表數(shù)據(jù)結(jié)構(gòu)及其簡單使用方法解析

    Java鏈表數(shù)據(jù)結(jié)構(gòu)及其簡單使用方法解析

    這篇文章主要介紹了Java鏈表數(shù)據(jù)結(jié)構(gòu)及其簡單使用方法解析,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-07-07
  • 詳解SpringBoot配置文件啟動時動態(tài)配置參數(shù)方法

    詳解SpringBoot配置文件啟動時動態(tài)配置參數(shù)方法

    這篇文章主要介紹了詳解SpringBoot配置文件啟動時動態(tài)配置參數(shù)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    CyclicBarrier和CountDownLatch這兩個工具都是在java.util.concurrent包下,并且平時很多場景都會使用到。本文將會對兩者進行分析,記錄他們的用法和區(qū)別,感興趣的可以了解一下
    2021-08-08
  • Springboot如何解決前端請求跨域的問題

    Springboot如何解決前端請求跨域的問題

    這篇文章主要介紹了Springboot如何解決前端請求跨域的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java實現(xiàn)XML與JSON秒級轉(zhuǎn)換示例詳解

    Java實現(xiàn)XML與JSON秒級轉(zhuǎn)換示例詳解

    這篇文章主要為大家介紹了Java實現(xiàn)XML與JSON秒級轉(zhuǎn)換示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09

最新評論

色达县| 芒康县| 堆龙德庆县| 安义县| 乌鲁木齐县| 沙湾县| 舟山市| 孝义市| 长阳| 义乌市| 宣恩县| 象州县| 乐陵市| 呼伦贝尔市| 和林格尔县| 肇庆市| 栾城县| 宜阳县| 平利县| 永德县| 兰西县| 若羌县| 台南县| 晋江市| 抚远县| 杭州市| 石台县| 铅山县| 霍林郭勒市| 徐州市| 珲春市| 玛纳斯县| 响水县| 衡阳县| 扶沟县| 衢州市| 南阳市| 武安市| 东方市| 土默特右旗| 宁德市|