본문 바로가기

java

(63)
[JAVA] OkHttp 사용법 + IllegalStateException 에러 원인/해결 방법 OkHttp는 REST API, HTTP 통신을 간편하게 사용할 수 있도록 만들어진 JAVA Library 이다. 오픈 소스로 공개된 소프트웨어 이기 때문에, 내부 동작이 궁금하면 코드를 열어볼 수 있다. https://github.com/square/okhttp GitHub - square/okhttp: Square’s meticulous HTTP client for the JVM, Android, and GraalVM. Square’s meticulous HTTP client for the JVM, Android, and GraalVM. - GitHub - square/okhttp: Square’s meticulous HTTP client for the JVM, Android, and GraalVM...
[JavaScript] 초 간단 유효성 체크 ( 이메일, IP, Port, 비밀번호, 글자 길이 제한 ) 1. 이메일 유효성 검사 let emailCheck = true; const ValidateEmail = (text) => { var emailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/ if (emailformat.test(text)) { return emailCheck = true; } else { return emailCheck = false; } } 2. IP 유효성 검사 let srvrIpCheck = true; const ValidateServerIp = (text) => { var ipformat = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-..
[JAVA] StreamAPI를 이용 한 List 값 중복 제거 가장 기초적인 방법은 반복문을 통해 중복을 제거하는 방법이 있다. Java 8 이상인 경우 Stream API 를 사용할 수 있다. stream.distinct() 를 이용해 간단하게 중복 된 데이터를 제거 해보자. public class Main { public static void main(String args[]) { List list = new ArrayList(); list.add("ABCD"); list.add("ABCD"); list.add("A"); list.add("ABC"); list.add("AC"); list.add("AB"); list.add("AB"); list = new ArrayList( list.stream().distinct().collect(Collectors.toLis..
[API] Swagger : Parser error missed comma between flow collection entries 원인 / 해결 방법 Errors Hide Parser error missed comma between flow collection entries Swagger 버전도 맞고, 모든 Api 경로가 일치 하는데 해당 에러가 계속 발생했다. comma 가 누락 됐다고 하는데 사용한 곳이 없다. 구글링 해보니 comma 뿐이 아니라 따옴표, 대괄호 등 어딘가에서 잘못 사용한 경우 해당 에러가 발생하는 것 같다. 내용은 comma 이지만 comma가 아닐 수도 있다는 것이다. @Column(name = "sample") @ApiModelProperty(notes = "예제", example = "[sample]'/test/api/sample/sampleId") @ApiParam(value="예제") private String samp..
[JAVA] object List to map using stream - Object List를 Map 으로 변환하기 Object 를 Map 으로 바꾸고 싶었다. stream.map().collect(Collectors.toList()) 를 사용하면 유연한 변화가 가능하지만, 타입 변환만 하면 되기에, ObjectMapper 를 사용해서 바꿔준다. public void sampleMapper(Object obj) { ObjectMapper mapper = new ObjectMapper(); Map objMap = mapper.convertValue(obj, new TypeReference Entity, List > Map 등 다양한 변환이 가능하다. stream 보단 간편하지만 자유도는 떨어진다. 그리고 mapper.converValue 로 변환 시 Map의 구현체가 LinkedHashMap 이다.
[JAVA] List를 comma(,)로 구분된 String(문자열)으로 변환하기 List 안의 내용을 , 로 구분을 줘서 하나의 문자열로 연결하고 싶었다. for문을 이용하여 하나씩 추가할 수도 있지만, 자바에서 제공하는 라이브러리 StringUtils에 간편한 메서드가 존재한다. 먼저 StringUtils 라이브러리를 추가해야 한다. lib 폴더에 직접 넣을 경우 https://commons.apache.org/proper/commons-lang/download_lang.cgi Lang – Download Apache Commons Lang Download Apache Commons Lang Using a Mirror We recommend you use a mirror to download our release builds, but you must verify the integr..
[JAVA] Java Stream - 두 개의 List 객체 비교하기 Stream. -Match Method allMatch() : 모든 요소들이 매개 값(Predicate)로 주어진 조건을 만족하는지 조사 anyMatch() : 최소한 한 개의 요소가 주어진 조건에 만족하는 지 조사 noneMatch() : 모든 요소들이 주어진 조건을 만족하지 않는지 조사 1. 중복 되는 값 찾기. List list = 값; List vaildList = 값; List noneEntityList = list.stream().filter(l -> vaildList.stream().anyMatch(n -> { return l.Id().equals(n.Id()); })).collect(Collectors.toList()); 2. 중복 되지 않는 값 찾기 List list = 값; List v..
[JAVA] querydsl Unrecognized token '': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false') at [Source: (String)""; line: 1, column: 9] - Error 원인/해결 Entity 연동 한 DB Table을 바꿨을 뿐인데, 해당 에러가 발생했다. querydsl Unrecognized token '': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false') at [Source: (String)""; line: 1, column: 9] 구글링을 해봤지만, 전부 Json parsing 과정에서 발생한 에러라고 한다. 나는 가져올 때 나는 에러인데? 한참을 삽질하다가, 문득 DB와 Entity를 보고 있는데 데이터 타입이 다른게 하나가 있다. 설마 타입 달라서 발생한 에러인가? 하고 수정했다. 바로 해결... 너무나도 허무한 에러. 왜 에러 내용은 id 값이 틀렸다고 하면서, ..
[JavaScript] QuerySelector(), QuerySelectorAll() , ClassList 추가/ 삭제 1. QuerySelector() DOM에서 원하는 element를 찾기 위해서 querySelector() 를 사용한다. 파라미터로 입력받은 CSS선택자를 사용해서 element를 찾아준다. 파라미터로 입력받은 CSS 선택자로 찾은 여러개의 element 중 첫번째 element를 리턴합니다. 2. QuerySelectorAll() 사용법은 QuerySelector()와 동일하다. 차이점은 CSS선택자로 찾은 모든 element 목록을 리턴합니다. 3. ClassList 1) ClassList 추가 해당 요소의 클래스 속성값을 추가한다. 동일 클래스명이 존재하면 무시한다. const rows = document.querySelector('.sample'); rows.classList.add('test'..
[JPA] NonUniqueResultException : query did not return a unique result: 2 NonUniqueResultException : query did not return a unique result: 2 조회 값이 2개 이상인데 1개만 조회 해서 발생한 에러이다. 나는 List 로 받아놓고 Class로 담으려고 해서 발생했다. List 로 담으면 된다.