본문 바로가기

전체 글

(94)
[JAVA] [Eclipse] project에 Dynamic Web Module 추가하는 방법 (Deployment Assembly) 프로젝트를 2개 이상 만들어서 하나로 build 및 deploy 하고 싶다면 이 기능이 필요하다. Properties > Project Facets > Dynamic Web Module 체크 후 Apply. 다시 프로젝트 마우스 우클릭 > Properties 를 들어가면, Deployment Assembly라는 메뉴가 생긴 걸 확인할 수 있다.
[JAVA] Map으로 전달 받은 JsonData List 목록(값) 추출하기 Map 형태로 클라이언트에서 전달 받은 값을 추출하고 싶은데, List 형태가 있다면? "name" : "test", "item" : [ { "x": 0, "y": 0, "w": 6, "h": 8, "i": 0 }, { "x": 0, "y": 0, "w": 3, "h": 2, "i": 0 } ] jsonData.get("name"); jsonData.get("item"); >> test >> Object Object get으로 값을 추출하면 해당 객체의 타입만 보여준다. 어떻게 불러와야 할까? List items = (List) jsonData.get("item"); for (Map item : items) { ... } item 을 List 변수에 담아주고 for문을 돌리면 된다.
[JAVA] Spring boot @Value 사용법과 java.lang.IllegalArgumentException: Could not resolve placeholder '' in value "${}" 에러 원인 / 해결 방법 @Value 로 application.yml 의 값을 가져오는데 해당 에러가 발생했다. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationProperty': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder '' in value "${}" BeanCreationException 말 그대로 스프링빈 객체 생성중에 특정 예외가 발생하여 빈 생성이 되지 못할 때 발생하는 예외이다. 특정 필드에 의존주입이 ..
[API] Spring boot + Swagger 3 (SpringDOC, OpenAPI) 적용 및 사용법 https://swagger.io/ API Documentation & Design Tools for Teams | Swagger Loved by all • Big & Small Thousands of teams worldwide trust Swagger to deliver better products, faster. swagger.io https://devel-log.tistory.com/43 [API] Spring boot Swagger 기본 사용법 https://swagger.io/ API Documentation & Design Tools for Teams | Swagger swagger.io Swagger UI 란 ? 별도의 코드 추가 없이 OpenAPI 규격에 맞게 자동으로 API를 시각화 시..
[Vue.js] 카드 테이블 (Card Table) 만들기 참고한 사이트 https://element-plus.org/en-US/component/space.html#basic-usage Space | Element Plus element-plus.org 카드 등록 / 수정 / 삭제 기능 구현 세부 기능은 보안 문제로 각설. 아래는 내가 응용해서 실사용한 테이블 템플릿이다. Sample 추가 test 명 수정 삭제 {{ slotData.row.id }} {{ slotData.row.nm }} 상세 목록 등록 / 수정 등록 / 수정 시 다른 메뉴 정보 조회 및 선택 체크 박스로 다중 선택 후 추가 추가 후 목록에 반영 삭제 버튼 클릭 시 등록 data에서 삭제 목록에서 상세 버튼 클릭 시 기본 틀이 잡혀있는 상태에 내가 살만 붙이면 되서 너무 편리하다.
[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 이다.