返回介绍

示例代码约定

发布于 2025-04-26 13:16:40 字数 1652 浏览 0 评论 0 收藏

为了减少代码冗余和本书篇幅,书中的所有示例代码片段都省略了 package 和 import 部分,像下面这样:

    @Configuration
    public class SecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.authorizeRequests()
                    .anyRequest().authenticated()
                    .and()
                    .formLogin()
                    .loginPage("/login.html")
                    .loginProcessingUrl("/doLogin")
                    .defaultSuccessUrl("/index ")
                    .failureUrl("/login.html")
                    .usernameParameter("uname")
                    .passwordParameter("passwd")
                    .permitAll()
                    .and()
                    .csrf().disable();
        }
    }

有时候为了向读者演示代码的运行效果,一个案例可能会被反复修改多次,那么在后面展示代码时,将不再列出不变的部分,仅仅列出发生变化的代码片段,像下面这样:

    @Autowired
    TokenStore tokenStore;
    @Autowired
    JwtAccessTokenConverter jwtAccessTokenConverter;
    @Bean
    AuthorizationServerTokenServices tokenServices() {
        DefaultTokenServices services = new DefaultTokenServices();
        services.setClientDetailsService(clientDetailsService);
        services.setSupportRefreshToken(true);
        services.setTokenStore(tokenStore);
        TokenEnhancerChain tokenEnhancerChain = new TokenEnhancerChain();
        tokenEnhancerChain
                    .setTokenEnhancers(Arrays.asList(jwtAccessTokenConverter));
        services.setTokenEnhancer(tokenEnhancerChain);
        return services;
    }
    //省略其他

正常情况下,这样的代码片段并不会影响大家理解本书内容。如果读者想要看到完整的代码片段,可以下载本书提供的示例代码进行对照理解。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。