๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
ObjectMapper? Jackson ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํด๋์ค ์ค ํ๋์ธ ObjectMapper ํตํด JSON → Object(์ญ์ง๋ ฌํ), Object → JSON(์ง๋ ฌํ)๋ฅผ ๊ฐ๋จํ๊ฒ ํ์ฑํ ์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์
๋๋ค. readValue() test.json { "name" : "john", "age" : 20 } json → Object ๋น์ง๋ ฌํ ์ฝ๋ People people = objectMapper.readValue(new File("static/test.json"), People.class); people์ ๊ฐ ๊ฐ์ ์ฐ์ด๋ณด๋ฉด ์ ์ถ๋ ฅ๋ฉ๋๋ค. System.out.println(people.getName() + ", " + people.getAge()); // john, 20 ๊ทธ๋ฐ๋ฐ ๋ง์
๋๋ค.. Peopl..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
System.getProperties๋ก ํ๋กํผํฐ ๊ฐ ๋ฐ๊ธฐ ๊ธฐ์กด์๋ ์ด๋ฐ์์ผ๋ก ๋๊ฒจ์ฃผ๋ฉด, $ java -jar XXX.jar arg1 arg2 arg3 ์๋ฐ์์๋ ์ด๋ ๊ฒ ๋ฐ์ผ๋ฉด ๋๋ค. public class Main { public static void main(String[] args) { String arg1 = args[0]; String arg2 = args[1]; String arg3 = args[2]; } } ๋ฌธ์ ๋ ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค๋ค๊ฐ ENV ๋ณ์๋ก ์คํ์ํค๊ฒ๋ ํ๋ ค๋๋ฐ ์๊พธ ENV๊ฐ ์๋ด๊ฒจ๋๊ฐ์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด๋ค๊ฐ ๋ฐ๊ฒฌํ๋ค. ๋ฐ๋ก.. System.getProperty("key") ํ๋ผ๋ฏธํฐ ๋๊ฒจ์ค ๋๋, -D์ต์
์ผ๋ก -D{key}={value} ์ด๋ฐ์์ผ๋ก ๋๊ฒจ์ฃผ๋ฉด ๋๋ค. $ java -D..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
ํด์๋ฅผ ํตํ ์ํธํ Hash(ํด์)๋? ๋จ๋ฐฉํฅ ์ํธํ ๊ธฐ๋ฒ์ผ๋ก ํด์ ํจ์๋ฅผ ํตํด ์ํธํ ๋ ๋ฌธ์์ด์ ๋ง๋๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ex) SHA-256, Bcrypt .. ์ฌ์ฉ์์ ํจ์ค์๋๋ ํ๋ฌธ์ผ๋ก ์ ์ฅํ๋ ๊ฒ์ ์ํํ ์ผ์
๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ณดํต ํด์ ํจ์๋ฅผ ํตํด ์ํธํ๋ฅผ ์งํํ๊ฒ ๋๋๋ฐ, ์ด๋ ๊ทธ๋ ๊ฒ ์์ ํ ๊ฒ์ ์๋๋๋ค. ๊ณต๊ฒฉ์๊ฐ ๋ชจ๋ ํ๋ฌธ์ ํด์ํํ์ฌ ๋์กฐ๋ฅผ ํ์ฌ ํจ์ค์๋๋ฅผ ์์๋ผ ์๋ ์๋ค๋ ๋ป์
๋๋ค. ํด์ปค๋ ๋ฌดํ๋๋ก ๊ณต๊ฒฉ์ ํ๋ค๋ฉด ์ด๋ค ์ํธํ๋ฅผ ํด๋ ํจ์ค์๋๋ฅผ ์์๋ผ ์ ์์ ๊ฒ์
๋๋ค. ํ์ง๋ง ํด์ปค๋ค์ด ๋ฌดํ๋๋ก ๊ณต๊ฒฉ์ ํ ์ ์์๊น์? X ํด๋
ํ ๋ ์กฐ๊ธ์ด๋ผ๋ ๋ ์ํธํ๋ฅผ ํด์ ํด์ปค๋ค์๊ฒ ๋จ ๋ช์ด๋ผ๋ ์ง์ฐ์ํฌ ์ ์๋ค๋ฉด ํด์ปค๋ค์๊ฒ๋ ์น๋ช
์ ์ธ ์๊ฐ์ด ๋ ์ ์์ต๋๋ค. ๋๋ณด๊ธฐ ์ํธ๋ฅผ ํด๋
ํ๋๋ฐ ๊ฑธ๋ฆฌ..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
application.properties people.name="iseunghan" people.age=26 people.city="Daejeon" Main.java public class Main { static String name; static String age; static String city; private static void read_properties() { // resource ์์น String resource = "META-INF/application.properties"; Properties properties = new Properties(); try { InputStream inputStream = Main.class.getClassLoader().getResourceAsStr..
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
์๋ฐ ํ๋ก์ ํธ๋ฅผ intellij์์ jar ํ์ผ ๋ง๋๋ ๋ฒ ๊ฐ๋จํ ํ๋ก์ ํธ ์์ฑ์ ํ์ต๋๋ค. hello world!๋ฅผ ์ถ๋ ฅํ๋ ๋ฉ์ธ ํด๋์ค์
๋๋ค. cmd + :๋ก ํ๋ก์ ํธ ๊ตฌ์กฐ ์ค์ ์ผ๋ก ๋ค์ด๊ฐ๋๋ค. (Mac OS ๋จ์ถํค) Artifacts -> + -> JAR -> From modules ... ํด๋ฆญ! Main Class๋ฅผ ์ง์ ํด์ค๋๋ค. ์ด๋ ํจํค์ง๋ช
๊น์ง ๋ค ์ ์ด์ค์ผ ํฉ๋๋ค! ์ดํ์ Apply -> OK๋ฅผ ๋๋ฌ์ค๋๋ค. ์ด์ intellij ์๋จ๋ฐ์์ build -> artifacts๋ฅผ ํด๋ฆญํด์ค๋๋ค. build๋ฅผ ํด๋ฆญํด์ค๋๋ค. out/artifacts/[project๋ช
]์ jar ํ์ผ์ด ์์ฑ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค. jar ํ์ผ ์คํํ๊ธฐ ์ฌ๋ฐ๋ฅด๊ฒ ์คํ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค!
๐ป JAVA/์ ๋ฆฌ์ ๋ฆฌ์ ๋ฆฌ
์๋ก ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ๋ค๊ฐ, 2๊ฐ ์ด์์ ์ฌ๋ฌ ๊ฐ ๊ณต๋ฐฑ์ ํ๋์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊ฟ์ผ ํ๋ ๋ฌธ์ ๊ฐ ์์๋๋ฐ, ์ด ์ฐธ์ ์ ๋ฆฌํ๋ ค๊ณ ํฉ๋๋ค. ๋ฌธ์ "๋ด์ฉ์์ 2๊ฐ ์ด์์ ๊ณต๋ฐฑ์ ํ๋์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊ฟ ์ฃผ์ธ์." ์ํ๋ ๊ฒฐ๊ณผ "๋ด์ฉ์์ 2๊ฐ ์ด์์ ๊ณต๋ฐฑ์ ํ๋์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊ฟ ์ฃผ์ธ์." ์ ๊ทํํ์ String str = "๋ด์ฉ์์ 2๊ฐ ์ด์์ ๊ณต๋ฐฑ์ ํ๋์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊ฟ ์ฃผ์ธ์."; String result = str.replaceAll("\\s+", " "); System.out.print(result); ์คํ ๊ฒฐ๊ณผ ์์ผ๋ก ์ ๊ท ํํ์์ ๋ํด์ ์ ์๊ณ ์์ผ๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.