- AWS
- db
- ์ฐจ์ด์
- Iteration๋ฐ๋ณต๋ฌธ
- rabbitmq์ค์น๋ช ๋ น์ด
- ์ด๋ ธํ ์ด์
- CloudFormation
- map
- ์๋ฃ๊ตฌ์กฐ
- yumpackage
- cloudfront
- Heap
- java
- redis
- jpa
- ELB
- javamap๋ฐ๋ณต
- Cognito
- REST
- dynamodb
- rabbitmq์ค์น๋ฐฉ๋ฒ
- instance
- Amazon
- ์ธ์คํด์ค
- list
- spring
- S3
- ๋ฆฌ๋ ์คrabbitmq์ค์น
- AWS CloudFormation
- javaIteration
- Today
- Total
๋ชฉ๋กjava (8)
You are a developer, not a coder.
1. JAVA Collection Framework JAVA์์ ๊ธฐ๋ณธ์ ์ธ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํ๊ธฐ ์ํ ํ๊ฒฝ JAVA Collection Framework์ ์์ ๊ธฐ๋ณธ ๊ตฌ์กฐ 2. ๊ฐ ์ธํฐํ์ด์ค์ ํน์ง ์ธํฐํ์ด์ค ๊ตฌํ ํด๋์ค ํน์ง List LinkedList Stack Vector ArrayList ์์๊ฐ ์๋ ๋ฐ์ดํฐ์ ์งํฉ, ๋ฐ์ดํฐ์ ์ค๋ณต์ ํ์ฉํจ Set HashSet TreeSet ์์๋ฅผ ์ ์งํ์ง ์๋ ๋ฐ์ดํฐ์ ์งํฉ, ๋ฐ์ดํฐ์ ์ค๋ณต์ ํ์ฉํ์ง ์์ Map HashMap TreeMap HashTable Properties ํค(key)์ ๊ฐ(value)์ ์์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐ์ดํฐ์ ์งํฉ ์์๋ ์ ์ง๋์ง ์๊ณ , ํค๋ ์ค๋ณต์ ํ์ฉํ์ง ์์ผ๋ฉฐ ๊ฐ์ ์ค๋ณต์ ํ์ฉํจ 3. Collection ์ธํฐํ์ด์ค๋ค์ ํน์ง Collec..
String, StringBuffer, StringBuilder์ ์ฅ๋จ์ ๋ฐ ์ฐจ์ด์ ์๋ฐ์์ String๊ณผ StringBuffer, StringBuilder์ ์ฐจ์ด์ ์ ์์๋ณธ๋ค. ์์ ์ด ํด๋์ค๋ค์ ๊ณตํต์ ์ ๋ชจ๋๋ค String(๋ฌธ์์ด)์ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ํด๋์ค๋ค์ด ๋ผ๋ ๊ฒ์ด๋ค.(๊ฐ๋จํ ์ฐธ๊ณ ) String vs StringBuffer, StringBuilder String์ immutable(๋ถ๋ณ)ํ๊ณ StringBuffer, StringBuilder๋ mutable(๊ฐ๋ณ)ํ๋ค. ๋ค์ ๋งํด์, String ํด๋์ค๋ StringBuffer ํด๋์ค๋ StringBuilder ํด๋์ค์ ๋ค๋ฅด๊ฒ ๋ฆฌํฐ๋ด์ ํตํด ์์ฑ๋๋ฉด ๊ทธ ์ธ์คํด์ค์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ ๋ ๋ณํ์ง ์๋๋ค. String literalString = "l..
package com.tistory.stove99; import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class MapIterationSample { public static void main(String[] agrs) { Map map = new HashMap(); map.put("ํค1", "๊ฐ1"); map.put("ํค2", "๊ฐ2"); map.put("ํค3", "๊ฐ3"); map.put("ํค4", "๊ฐ4"); map.put("ํค5", "๊ฐ5"); map.put("ํค6", "๊ฐ6"); // ๋ฐฉ๋ฒ1 Iterator keys = map.keySet().iterator(); while( keys.hasNext(..
๋๊ท๋ชจํ๋ก์ธ์ค ๊ฐ๋ฐ์, ์๋ฒ๊ฐ๋ฐ์๋ค์ด ์๋ง ๋ง์ด ๋ง์ง๋ ์ฝ๋์ค์ ํ๊ฐ๋ ๋ฆฌ์คํธํ์์ ํฌ๊ธฐ๋๋ก ์๋ฅด๊ธฐ์ํด subList๋ฅผ ์ฌ์ฉํ ๊ฒ์ด๋ค. ์ด๋ฒ ํฌ์คํ ์ subList๋ฅผ ์ ์ฌ์ฉํ๊ธฐ ์ํด์ ๋ํ, ์คํ์ค๋ฒํ๋ก์ฐ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํ ๋ด์ฉ์ ๋ด๊ณ ์ถ์ด์ ์์ฑํ๊ฒ ๋์๋ค. // 0~2๊น์ง์ ์ธ๋ฑ์ค๋ง ๋ฝ์์ค๊ธฐ์ํด ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๋ฅผ ์ธ๊ฒ์ด๋ค. cateContTuple.setCateContBbsTupleList(items.subList(0, 3)); ๋ง์ ๊ฐ๋ฐ์๋ค์ ์์๊ฐ์ด subList๋ฅผ ์ฌ์ฉํ ๊ฒ์ด๋ค. ์ด๋ ์คํ์ค๋ฒํ๋ก์ฐ ๋ฐ ๋ถ๋ชจ๋ฆฌ์คํธ์ธ items์ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ด ์์๋ ์ต์ ์ ์ด ์ผ์ด๋ ์์๋ ์ํํ ์ฝ๋์ด๋ค. ์ ์คํ์ค๋ฒํ๋ก์ฐ๊ฐ ๋๋์ง, ์ด๋ ํ ์ต์ ์ ์ด ์ผ์ด๋๋์ง ๋ค์๊ณผ ๊ฐ์ ์์๋ฅผ ๋ณด๋ฉด ์ดํดํ ์ ์๋ค. /* *..
์ฐ๋ฆฌ๊ฐ ํํ ์ ์ง๋ฅด๋ ์ค๋ฅ๋ฅผ ์ ๋ฐํ๋ ํ์์ค ์ฒซ๋ฒ์งธ๋ null์ ๋ฐํํ๋ ์ต๊ด์ด๋ค. ํ์ค ๊ฑด๋ ํ๋์ฉ null์ ํ์ธํ๋ ์ฝ๋๋ก ๊ฐ๋ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง๊ธ๊น์ง ์๋ ์์ด ๋ดค๋ค. ๋๊ตฌ ํ๋๋ผ๋ null ํ์ธ์ ๋นผ๋จน๋๋ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ด ํต์ ๋ถ๋ฅ์ ๋น ์ง์ง๋ ๋ชจ๋ฅธ๋ค. ๊ทธ๋ฌ๋ฏ๋ก, ์ด ํ์๋ ๋์์ฝ๋์ ์ํ๋ค. ๋ค์๊ณผ ๊ฐ์ด Collections.emptyList() ๋ฅผ ์ฌ์ฉํ๋ค๋ฉด, ๋น๊ฐ์ผ๋ก ์ ๋ฌํด ์ค ์๊ฐ ์๋ค. public List findAllUsers(){ List userList = userService.findAll(); if(userList == null){ return Collections.emptyList(); } return userList; } List์ ๊ฐ์ด ๋น์ด์์ผ๋ฉด, ๋น๊ฐ์ ๋ฆฌ์คํธ๋ฅผ ์ ๋ฌํด..
"result" : { "groupeds": { "790": [ { "index": 1, "rank": 1, "score": 0.5, "catId": "050", "itId": "633", "product": {} } } ๋ค์๊ณผ ๊ฐ์ด ๋ณต์กํ ๊ตฌ์กฐ์ JSON์ด ์๋ค. ๋ฐฐ์ด -> ๋ฐฐ์ด -> ๋ฆฌ์คํธ ํ์์ด๋ค. ์ด๋ด๋์๋ Map์ ์ ๋ค๋ฆญ์ ์ด์ฉํ์ฌ Object ๋ฌถ์์ผ๋ก Pasing ํ์ง๋ง, ๊บผ๋ด์ฐ๋๊ฑธ ์ ๋ชฐ๋ผ์ ํ์ฐธ ์จ์นญ์ ํ๊ณ ํด๊ฒฐ์ ํ๋ค. ๊บผ๋ด ์ฐ๋ ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ๋ค. for (Entry entry : apiTuple.getRankingResults().entrySet()) { System.out.println("Cities: " + entry.getKey() + ", " + entry.getValue()..
1. Heap์ ๊ธฐ๋ณธ๊ฐ๋ ์ฐธ์กฐํ์ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ๋ ์ธ์คํด์ค, ๋ฐฐ์ด, Object๋ฅผ ์์ํ๋ String ๋ฑ์ด ์ ์ฅ๋๋ ์์ญ์ด๋ค. ์ด๋ ์ง์ญ๋ณ์, ๋งค๊ฐ๋ณ์๋ Stack ์์ญ์ ๊ณต๊ฐ์์ ์ค์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ Heap ์์ญ์ ์ฐธ์กฐ๊ฐ์ new์ฐ์ฐ์๋ฅผ ํตํด ๋ฆฌํด ๋ฐ๋๋ค. ์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณ ์๋ Heap์์ญ์ ์ฐธ์กฐ ๊ฐ์ Stack ์์ญ์ ๊ฐ์ฒด๊ฐ ๊ฐ๊ณ ์๋ค. ์ด๋ ๊ฒ, ๋ฆฌํด ๋ฐ์ ์ฐธ์กฐ๊ฐ์ ๊ฐ๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ํตํด์๋ง ํด๋น ์ธ์คํด์ค๋ฅผ ํธ๋ค๋ง ํ ์๊ฐ ์๋ค. Heap์์ญ์ ์ฌ์ฉ์์ ์ํด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ๋์ ์ผ๋ก ํ ๋น๋๊ณ ํด์ ๊ฐ ๋๋ค.
1. UUID๋ ๋คํธ์ํฌ ์์์ ๊ณ ์ ์ฑ์ด ๋ณด์ฅ๋๋ id๋ฅผ ๋ง๋ค๊ธฐ ์ํ ํ์ค ๊ท์ฝ์ด๋ค. UUID๋ Universally Unique IDentifier์ ์ฝ์ด์ด๊ณ ๋ฒ์ฉ ๊ณ ์ ์๋ณ์๋ผ๊ณ ํ๋ค. ์ฃผ๋ก ๋ถ์ฐ ์ปดํจํ ํ๊ฒฝ์์ ์ฌ์ฉ๋๋ ์๋ณ์์ด๋ค. ์ค์๊ด๋ฆฌ์์คํ ์ด ์๋ ํ๊ฒฝ์ด๋ผ๋ฉด ๊ฐ ์ธ์ ์ ์ผ๋ จ๋ฒํธ๋ฅผ ๋ถ์ฌํด์ค์ผ๋ก์จ ์ ์ผ์ฑ์ ๋ณด์ฅํ ์ ์๊ฒ ์ง๋ง ์ค์์์ ๊ด๋ฆฌ๋์ง ์๋ ๋ถ์ฐ ํ๊ฒฝ์ด๋ผ๋ฉด ๊ฐ๋ณ ์์คํ ์ด id๋ฅผ ๋ฐ๊ธํ๋๋ผ๋ ์ ์ผ์ฑ์ด ๋ณด์ฅ๋์ด์ผ๋ง ํ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ํด ํ์ํ ๊ฒ์ด ๋ฒ์ฉ๊ณ ์ ์๋ณ์ UUID์ด๋ค. RFC 4122์ ๋ช ์๋์ด ์๋ค. UUID๋ 128๋นํธ์ ์ซ์์ด๋ฉฐ, 32์๋ฆฌ์ 16์ง์๋ก ํํ๋๋ค. 8์๋ฆฌ-4์๋ฆฌ-4์๋ฆฌ-4์๋ฆฌ-12์๋ฆฌ ํจํด์ผ๋ก ํ์ดํ์ ์ง์ด ๋ฃ์ด 5๊ฐ์ ๊ทธ๋ฃน์ผ๋ก ๊ตฌ๋ถํ๋ค. ์ด๋ฆ ๊ธธ์ด (๋ฐ์ดํธ) ๊ธธ์ด..