Cześć!
Tworzę aktualnie aplikację w Springu. Potrzebuję w aplikacji sporej liczby stałych tekstowych używanych w widoku. Zastanawiam się jaki jest najlepszy sposób zdefiniowana takich Stringów? Plik properties, konfiguracja, plik typu String var = "";?
nie wiem czy najlepszy.. ale ja robilam to za pomoca osobnej klasy w ktorej definiowalam stringi jako pola
public class SecurityProperties {
public static final String REALM = "MY REALM";
public static final String HEADER_NAME_REALM = "WWW-Authenticate";
public static final String HEADER_VALUE_REALM = "Basic realm=";
public static final String PATH_PATTERN_ROOT = "/";
public static final String PATH_PATTERN_CHECK = "/check/**";
public static final String PATH_PATTERN_DASHBOARD = "/dashboard/**";
}
W zwiazku z tym ze wszystkie elementy sa statyczne, nie musisz tworzyc instancji klasy, wywolujesz w ten sposob :
http.csrf().disable()
.authorizeRequests()
.antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
.antMatchers(SecurityProperties.PATH_PATTERN_ROOT).permitAll()
.antMatchers("/em/login/").authenticated()
.antMatchers(SecurityProperties.PATH_PATTERN_CHECK).access(getOrAuthorityExpression(RoleEnum.ADMIN, RoleEnum.WORKER))
.antMatchers(SecurityProperties.PATH_PATTERN_DASHBOARD).authenticated()
.and().httpBasic().realmName(SecurityProperties.REALM).authenticationEntryPoint(getBasicAuthEntryPoint())
.and().sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and().exceptionHandling().accessDeniedHandler(accessDeniedHandler);