BE

· BE/Java
이 포스팅에서 작성하는 내용은 더 자바, 애플리케이션을 테스트하는 다양한 방법 에서 발췌하였습니다.https://inf.run/CpvH 더 자바, 애플리케이션을 테스트하는 다양한 방법 - 인프런 | 강의자바 프로그래밍 언어를 사용하고 있거나 공부하고 있는 학생 또는 개발자라면 반드시 알아야 하는 애플리케이션을 테스트하는 다양한 방법을 학습합니다., - 강의 소개 | 인프런...www.inflearn.comJMeter?성능, 부하 테스트를 지원하는 자바 오픈 소스 애플리케이션다양한 형태의 애플리케이션도 지원한다.HTTPS/HTTPSMTP, POP3, IMAPFTPJDBCSOAP, REST...GUI 프로그램이 아닌 CLI 환경에서도 테스트가 가능하다.즉, JMeter가 서버에 많은 요청을 보냈을 때, 서버..
· BE/Java
스트림 스트림은 어떤 소스로부터 어떤 스트림을 얻고, 하나 이상의 중간 작업을 수행한 후, 마지막으로 하나의 최종 작업을 수행한다. 중간 작업 : filter, map, flatMap, peel, distinct, sorted, limit, substream 최종 종료 작업 : forEach, toArray, reduce, collect, min, max, count, anyMatch, allMatch, noneMatch, findFirst, findArray 를 포함한다. Java8 부터 추가된 컬렉션의 저장 요소를 하나씩 참조해서 람다식으로 처리할 수 있도록 처리해주는 반복자이다. Reduction 대량의 데이터를 가공해 축소하는 것 데이터의 합계, 평균값, 카운팅, 최댓값, 최소값 필터링, 매핑, ..
· BE/Java
Java 8의 특징 Interface에 default 메서드, static 메서드 사용 가능 자바 8 이전까지 Interface의 abstract 메서드는 반드시 클래스에서 구현했어야 함. 인터페이스에 absrtact 메서드를 추가했다면, 그 인터페이스를 사용한 모든 클래스에서 그 메서드를 구현했어야 함 (바이너리 호환성 이슈) 자바 8이후로 default, static 메서드 사용이 가능 람다식 사용 가능, 람다를 이용해서 스트림API 사용 가능(람다는 Java8 기능 중 큰 변화) Time, Date 관련한 API 추가 함수형 프로그래밍(Functional Programming) 계산을 수학적 함수의 평가로 취급하고, 변경 불가능한 값을 이용 함수형 프로그래밍은 순수 함수들로만 작성된다. 순수함수 :..
· BE/Java
Reflection(리플렉션) 클래스의 실체가 아닌 반사된 모습을 이용한 기능. Class 를 이용 리플렉션 기능을 지원하지 않는 언어 : C, C++. Pascal 사용되는 기술 : JPA, Jackson, Mockito, Junit ... 장점 외부, 사용자 정의 클래스들을 사용할 수 있게 함 접근제어자에 관계없이 접근이 가능하도록 함 단점 컴파일 시점이 아닌, 런타임 시점에 클래스를 분석 JVM을 최적화할 수 없어 성능저하 마찬가지로, 컴파일 에러 확인 불가 코드 가독성 저하 내부가 노출되어 추상화 파괴 Class 실행중인 자바 어플리케이션의 클래스와 인터페이스의 정보를 가진 클래스 클래스와 인터페이스의 정보를 가지고 있기 때문에, Class는 클래스의 내용을 모두 확인 가능 (ex, 어노테이션, ..
· BE/Spring
환경) H2 DB 1. INSERT(UPDATE) update(query, ...) 를 사용하는 경우 추가된 행의 갯수를 반환받을 수 있다. @Override public int insert(ReviewDto dto) { int result = jdbcTemplate.update( "INSERT INTO REVIEWS (SEQ, USER_SEQ, PRODUCT_SEQ, CONTENT, CREATE_AT) VALUES (null, ?, ?, ?, null)", dto.getUserSeq(), dto.getProductId(), dto.getContent() ); return result; } 2. SELECT 쿼리를 통해 얻은 데이터 결과값을 dto, vo로 변환해주는 작업이 필요하다. 이 작업을 RowM..
· BE/Spring
안녕하세요. 이번 포스팅에서는 Spring Security에서 JSON 형식으로 로그인하는 방법에 대해서 알아보겠습니다. 아래의 내용에서 자신의 개발 방향에 맞게 커스텀하시면 될 듯 합니다. 1. UsernamePasswordAuthenticationFilter 살펴보기 로그인 요청이 들어오면, 인증 필터를 거쳐 UsernamePasswordAuthenticationFilter에서 ID와 PW를 처리합니다. - SPRING_SECURITY_FORM_UESRNAME_KEY, SPRING_SECURITY_FORM_PASSWORD_KEY : username과 password 인자 값 설정 - DEFAULT_ANT_PATH_REQUEST_MATCHER : 로그인 요청 URL 설정 위의 소스는 UsernamePa..
· BE/JPA
김영한님의 JPA 강의를 보다가 좋은 내용이 있어서 기록해둡니다. https://inf.run/Codk 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 - 인프런 | 강의 실무에 가까운 예제로, 스프링 부트와 JPA를 활용해서 웹 애플리케이션을 설계하고 개발합니다. 이 과정을 통해 스프링 부트와 JPA를 실무에서 어떻게 활용해야 하는지 이해할 수 있습니다., - 강 www.inflearn.com JPA에서 데이터를 수정할 때 병합을 사용하거나 변경 감지를 사용하는 데, 이 두 방식의 차이를 알아보자. 우선, 수정을 하기 전에 '준영속 엔티티'라는 개념을 정확히 알고 있어야 한다. 준영속 엔티티 영속성 컨텍스트가 관리하지 않는 엔티티 즉, JPA 기능을 통해서 가져오지 않은 엔티티를 의미한다...
· BE/Java
MapStruct는 객체끼리 매핑을 해주는 유용한 기능이다. 간단하게 아래의 예로 사용법을 알아보자. 준비사항 MapStruct는 Getter, Setter or builder 를 사용하기 때문에 lombok이 있으면 더욱 편리하게 사용할 수 있다. dependency 설정 시, Lombok 뒤에 MapStruct를 넣어줘야 정상적으로 실행 가능하다. 매핑에 진행하기 앞서, 반드시 매핑을 진행하는 두 객체는 아래와 같은 설정을 해야 한다. 반환 타입의 객체: Builder or Setter 필요 (반환 타입의 객체에 데이터를 설정해야 하기 때문) 파라미터 타입의 객체: Getter 필요(파라미터 객체의 데이터를 읽어야 하기 때문) Category.java (Entity) import jakarta.per..
멍목
'BE' 카테고리의 글 목록