본문 바로가기

Language

(132)
[javascript] 배열 배열 병합 / 평평하게하기 다음과 같은 JavaScript 배열이 있습니다. [["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"]] 별도의 내부 배열을 다음과 같이 병합하는 방법은 무엇입니까? ["$6", "$12", "$25", ...] 답변 concat배열을 병합 하는 데 사용할 수 있습니다 . var arrays = [ ["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"] ]; var merged = [].concat.apply([], arrays); console.log(merged); [출처] http://daplus.net/javascript-%EB%B0%B0%EC%97%B4-%EB%B0%B0%EC%97%B4..
자바 [JAVA] - 스캐너(Scanner) 클래스와 입력 자바를 처음 배울 때 아마 대부분은 키보드로 입력받기 위해 Scanner 라는 클래스를 썼을 것이다. 자바 외에도 다양한 언어들은 각각의 입력방식이 있고, 각 언어별로 대표하는 대중적인 입력방식이 하나씩 있다. 예로 들면 C언어의 경우 scanf() 가 있을 것이고 파이썬의 경우 input(), C++ 은 cin, C# 은 Console.readLine() 등이 있다. 자바에서도 여러가지 입력방법이 입력방법이 있는데, 그중 가장 쉬우면서도 대중적인 입력 중 대표적인 것이 바로 Scanner 클래스를 이용한 입력이다. 이번 포스팅에서는 Scanner 의 사용 방법에 대해 자세하게 알아보자. Scanner 클래스의 특징 Scanner 사용해보기 Step 1. import 문 앞서 Scanner 의 특징에서 ..
자바 특수문자, 괄호, 백슬래시, 따옴표 출력하기 (백준 10171, 10172번) 자바에서 백슬래시와 따옴표는 문자 그 자체만으로는 출력되지 않는 특수문자이다. 따옴표가 그 자체만으로 출력되지 않는 이유는, 출력문에서는 첫 쌍따옴표부터 그 다음 쌍따옴표가 나올 때 까지 그 사이에 있는 것들만 출력하기 때문에 출력문 중간에 따옴표를 넣게 되면 거기서 출력 내용이 끝나는 것으로 인식되기 때문이다. 이를 출력하고 싶은 경우에는 \' 또는 \" 처럼 따옴표 바로 앞에 백슬래시를 넣어주어야 한다. 마찬가지로, 만약 백슬래시 자체를 출력하고 싶다면 \\로 백슬래시를 두 번 입력해야 한다. 이처럼 자바에서는 출력문에서 백슬래시가 등장하는 순간 그 바로 다음 문자를 인식해 상황에 맞게 처리하는데, 이를 이스케이프 시퀀스(Escape Sequence)라고 한다. 이스케이프 시퀀스에는 몇 가지 특수한 ..
Elasticsearch Java Client !(엘라스틱서치 자바 클라이언트,High-Level Rest Client) 자바 언어를 위해 제공되는 클라이언트에는 두 가지 종류가 있다. 내부적으로 HTTP REST API를 사용해 통신하는 방식과 네티(Netty)모듈을 이용해 네이티브 클라이언트를 통해 통신하는 방식이다. REST Client Transport Client(Netty) Java High Level REST Client라고 불린다. HTTP방식을 이용해 엘라스틱서치와 통신한다. 내부적으로는 HttpClient 모듈을 사용한다. HTTPS 사용이 가능하다. Java Client라고도 불린다. 초기부터 제공되던 클라이언트 방식으로, 상대적으로 빠른 속도를 보장한다. 소켓을 이용해 엘라스틱서치와 통신한다. 내부적으로는 Netty모듈을 사용한다. 초기버전의 엘라스틱서치에서는 소켓을 이용하는 Transport 클라이언..
[MacOS 개발환경 #9] DynamoDB 로컬(Local) 환경 설치 - Java 맥(MacOS) 개발환경 - M1 Apple Silicon - 다이나모디비(DynamoDB) 로컬(Local) 환경 설치 및 실행 - Java 다운로드 > 압축해제 > Java로 실행 > 테이블 확인 > 포트변경 실행 확인 다운로드 https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html zip 파일 다운로드 압축해제 및 파일 이동 터미널 java 실행 1 java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb 테이블 확인 - 다른 터미널로 DynamoDB 실행 포트번호로 접속 확인 1 aw..
[JPA] 양방향 관계에서 infinite recursion 해결법 ​ nested exception is com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion (StackOverflowError) ​ JPA에서 대표적인 문제가 몇개 있는데 그 중 하나가 infinite recursion이다. @OneToMany, @ManyToOne 어노테이션으로 양방향 관계를 맺어주면 서로가 서로를 무한 참조하면서 발생한다. ​ ​ 이 문제를 다루려고 저번 포스팅에서 조회를 빼고 데이터 삽입만 진행했다. [JPA] JPA 시작하기(3) - @OneToMany, @ManyToOne 양방향 ​JPA에서 @OneToOne, @OneToMany, @ManyToOne, @ManyToMany 어노테이션을 이용해 테이블간...
[Java, JPA] 도메인 객체간 연관관계에서 즉시로딩과 지연로딩 and 프록시 객체 특정 게시글을 클릭 할 때, 게시글과, 각 게시글에 딸린 첨부파일들을 데이터베이스에서 로딩하여 엔티티객체에 저장하여야하는데, 구현한 로직해서 게시글을 누르면 org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: kr.com.test.jpa.domain.Board.board_files, could not initialize proxy - no Session 위와 같이 LazyInitializationException이 발생하였다. 에러를 구글링해보니 엔티티 간 연관관계 설정시에 즉시로딩, 지연로딩에 관한 설정이 필요했다. 보통 엔티티를 설계할 때, 엔티티와 연관된 또다른 엔티티들이 같이 포함되어..
[JPA] @OneToOne, 일대일[1:1] 관계 일대일 [1:1] 일대일 관계는 그 반대도 일대일이다. 일대일 관계는 특이하게 주 테이블이나 대상 테이블 중에 외래 키를 넣을 테이블을 선택 가능하다. 주 테이블에 외래 키 저장 대상 테이블에 외래 키 저장 외래 키에 데이터베이스 유니크 제약조건 추가되어야 일대일 관계가 된다. 일대일 - 주 테이블에 외래 키 단방향 회원이 딱 하나의 락커를 가지고 있는 상황이다. 반대로 락커도 회원 한명만 할당 받을 수 있는 비즈니스 적인 룰이 있고, 이때, 둘의 관계는 일대일 관계이다. 이 경우 멤버를 주 테이블로 보고 주 테이블 또는 대상 테이블에 외래 키를 저장할 수 있다. 단, 유니크 제약조건을 추가한 상태에서만. 다대일[N:1] 단방향 관계 매핑과 JPA 어노테이션만 달라지고, 거의 유사하다. 일대일 - 주 테..