반응형 프로그래밍87 【Java-데이터】 객체를 XML데이터로 변환하기 1. 설명 이 포스트에서 다룰 예제는 "데이터가 담기는 클래스의 객체 데이터를 XML로 변환"해주는 코드입니다. 신규 개발 안건의 경우 대부분 API 통신 데이터의 표준으로 JSON을 사용하는 경우가 많지만, 오래전에 개발된 API의 통신 데이터의 표준은 XML데이터로 된 경우가 존재합니다. 따라서 XML을 Object로, Object를 XML로 변환해 두는 방법을 익혀두면 언젠간 실무에서 도움이 될것 이라고 생각합니다. 예제는 jackson-dataformat-xml과 jdom 라이브러리를 사용해서 구현했습니다. Jackson 라이브러리의 jackson-dataformat-xml으로 XML을 다루는게 더 편리했지만 제가 원하는 결과가 나오지 않았기에 jdom을 선택하게 되었습니다. - XML로 변환할 .. 2021. 9. 19. 【Java-데이터】Json데이터를 Java 객체로 변환하기 1. 설명 이 포스트에서 다룰 예제는 "Json형식의 데이터를 데이터가 담기는 클래스의 객체로 변환"(역직렬화: Deserialization)해주는 코드입니다. 제가 경험한 업무에서 데이터 객체를 Json으로 변환하는 데 필요한 경우는 아래와 같은 흐름의 프로그램을 만들어할 때 였습니다. 1) API에 HTTP 요청 -> 2) Response body의 JSON데이터를 읽어오기 -> 3) 데이터 클래스의 객체에 데이터 매핑 -> 4) DB 또는 파일로 데이터 저장 예제코드 구현은 지난 포스트와 같이 동일하게 jackson-databind를 사용해서 구현했습니다 2. 소스코드 - 메서드 // (1) public JsonNode getJsonNode(File json) { if (json == null) r.. 2021. 9. 18. 【Java-데이터】객체를 Json형식의 데이터로 변환하기 1. 설명 이 포스트에서 다룰 예제는 DTO, VO와 같은 데이터가 담기는 "클래스의 객체를 JSON형식의 데이터로 변환" (=직렬화: Serialization)해주는 코드입니다. 제가 경험한 업무에서 데이터 객체를 JSON으로 변환하는 데 필요한 경우는 아래와 같은 흐름의 프로그램을 만들어할 때 였습니다. 1) DB 또는 파일의 원본 데이터 -> 2) 데이터 클래스의 객체에 데이터 매핑 -> 3) JSON변환 -> 4) API에 HTTP 요청시JSON을 Request Body에 넣고 요청 예제코드 구현은 대용량 JSON데이터를 처리하는데 있어 유리한 jackson-databind를 사용해서 구현했습니다 2. 소스코드 - 메서드 /** * Object -> JSON Str * * @param obj : .. 2021. 9. 17. 【Java-파일】파일과 디렉토리 삭제 1. 설명 이 포스트의 예제는 파일이나 디렉토리의 정보를 삭제하는 코드입니다. File클래스에서 제공하는 삭제기능을 사용할 때 디렉토리의 삭제의 경우 디렉토리 안에 파일이나 디렉토리가 존재한다면, 디렉토리가 삭제되지 않는 문제가 있습니다. 이를 해결하기 위해 재귀적으로 파일과 디렉터리를 삭제하는 기능을 구현했습니다. 2. 소스코드 - 메서드 public boolean delete(File target) throws Exception { // 파일또는 디렉토리가 있는지 확인 if ( target.isFile() || target.isDirectory() ) { // 디렉토리 인지 확인 if (target.isDirectory()) { // 디렉토리안에 파일이 존재하면 디렉토리안의 파일을 먼저 삭제해야함 f.. 2021. 9. 13. 【Java-파일】파일 정보보기 1. 설명 이 포스트의 예제는 파일이나 디렉토리의 정보를 Map에 담아서 가져오는 코드입니다. 2. 소스코드 - 메서드 public Map getFileInfo(String path) { File target = new File(path); if ( !target.exists() ) { return null; // 복사할 파일이나 디렉토리가 없다면 } Map map = new HashMap(); try { map.put("canonicalPath", target.getCanonicalPath()); map.put("absolutePath", target.getAbsolutePath()); String filename = target.getName(); map.put("name", target.getNam.. 2021. 9. 13. 【Java-파일】파일과 디렉토리에 권한부여하기 1. 설명 이 포스트의 예제는 파일이나 디렉토리에 리눅스에서 권한부여를 할때 사용하는 명령어 chmod처럼 숫자값을 사용하여 권한을 부여하는 코드입니다. 2. 소스코드 - 메서드 public boolean setPermission(String path, Integer permission) { File f = new File(path); if (!f.exists()) { return false; } File target = new File(path); boolean res = false; switch (permission) { case PERMISSION_X: res = setPermission(target,false,false,true); break; case PERMISSION_W: res = setP.. 2021. 9. 13. 이전 1 ··· 7 8 9 10 11 12 13 ··· 15 다음 반응형