반응형

Back/Spring Java 28

No 'Access-Control-Allow-Origin' header is present on the requested resource. (CORS policy)

frontend(Vue.js), backend(Spring boot-Java)로 나눠진 환경에서 frontend쪽에서는 backend환경 에 rest api 형태로 값을 주고 받는 환경에서 아래와 같은 에러가 발생. 현재 다른 도메인의 서버에 url요청을 할 경우 XMLHttpRequest는 보안상의 이유로 자신과 동일한 도메인으로만 HTTP요청을 보내도록 제한하고 있어 에러가 발생한다. 결론은 XMLHttpRequest가 cross-domain을 요청할 수 있도록하는 방법인 CORS를 활용한다. CORS(Cross-origin resource sharing)이란, - 웹 페이지의 제한된 자원을 외부 도메인에서 접근을 허용해주는 메커니즘이다. Spring에서 설정 스프링 RESTful Service에서 ..

Back/Spring Java 2020.03.02

JPA findAll Specification

JPA에서 다중 파라미터 처리를 진행 할 때 아래의 예제 처럼 작성하면 기능 구현이 가능하다. Page adminUsers = null; if(adminUserApiRequest.getAccount() == null && adminUserApiRequest.getRole() == null) { adminUsers = adminUserRepository.findAll(pageable); } else if(adminUserApiRequest.getAccount() != null && adminUserApiRequest.getRole() == null) { adminUsers = adminUserRepository.findAllByAccount(pageable, adminUserApiRequest.getAcc..

Back/Spring Java 2020.01.14

BeanUtils.copyProperties

Class간 property를 복사해야 할 경우. 각 프로퍼티 별 setter를 나열하는 코드 보단. BeanUtils.copyProperties를 사용하면 훨씬 깔끔 하게 구현이 가능하다. 예를들어, @Data @AllArgsConstructor @NoArgsConstructor class Person { private String name; private Integer id; private String address; private String phone; } Person person1 = new Person("test1", 1, "Seoul", "010-1234-1234"); Person person2 = new Person("test2", 2, "Incheon", "010-1234-1234"); ..

Back/Spring Java 2019.12.23

Spring Security Login

Spring Security를 사용하기 전에 로그인 로직을 만드려면 이래저래 고려해야하고 예외처리 해 야할 부부들에 대해서 고민해야 할 내용이 많았다. 하지만 Spring Security를 사용하여 구성하게 되면 비교적 간단히 개발이 가능하다. Security Config @Configuration @EnableWebSecurity @EnableGlobalAuthentication @ComponentScan(basePackages = {"com.example.study.*"}) public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired AuthProvider authProvider; @Autowired AuthFailureH..

Back/Spring Java 2019.12.18

가변인자 Varargs

* 자바 1.5 이상 부터 가변 인자 메서드(Variable arity method)라고 부르는 varargs 메서드가 추가되었다. 이 메서드는 지정된 자료형의 인자를 0개 이상 받을 수 있다. 아래의 내용처럼 기존에는 다수의 매개변수를 인자로 받을때 배열 혹은 컬렉션을 사용 했다. public final class Test { public static void display(List list) { for(String s: list) { System.out.println(s); } } public static void main(String[] args) { List list = new ArrayList(); list.add("Apple"); list.add("Banana"); list.add("Orang..

Back/Spring Java 2019.12.18
반응형