반응형 백앤드 이야기38 [JAVA] 파일 & 폴더 정보 확인, 이동, 생성, 삭제등 import java.io.*;//입출력 class Ex113_File { public static void main(String[] args) { //Ex113_File.java //m1();//파일 정보 확인 //m2();//상대경로, 절대경로 확인 //m3();//파일 변경,이동 //m4();//파일명 바꾸기 //m5();//파일 삭제 //m6();//폴더 정보 확인 //m7();//폴더 생성 //m8();//폴더 삭제 m9();//폴더 변경,이동 }//end main //특정 파일에 접근 -> 정보 public static void m1() { //물리적인 파일을 프로그램상에서 접근할 매개체 생성 //실제 파일 참조 File file = new File("D:\\Test.java");//절대경로 .. 백앤드 이야기/JAVA&Spring 2020. 6. 19. [JAVA] String, StringBuilder, StringBuffer의 차이 public class MainClass { public static void main(String[] args) {// TODO Auto-generated method stub String a = "이거이거 오이시이"; String b = new String("뀨"); System.out.println("a코 드 " + a.hashCode()); System.out.println("b코 드 " + b.hashCode()); a = a + b ; long startTime = 0; long endTime = 0; String testString = "testString"; startTime = System.nanoTime(); for (int i=0; i 백앤드 이야기/JAVA&Spring 2020. 2. 10. [Spring] spring profile 및 logback-spring.xml 을 이용한 log 관리 안녕하세요 한희성입니다. 이제 앞으로 블로그를 쓸 시간도 없을 듯 .. .합니다. ㅠ_ㅠ흑흑 그동안 틈틈이 쓰고 싶었던 내용들로 하나씩 채워가면서 작성 목록지워가는 재미로 지내왔는데 .. 앞으로는 다른 일에 집중 해야 할듯 싶네요 ㅋㅋ 오늘은 logback-spring.xml 으로 개발 환경과 운영환경 모두 로깅이 가능한 logback 을 작성하도록 하겠습니다. 개발OS와 운영OS 가 갖다면 사실 로그 경로는 크게 신경 안써도 됩니다만, 운영체제가 같다고 하여도 운영환경에서의 로그 파일은 개발환경 위치와 다를 수 있기 때문에 이번 포스팅을 활용하면 개발할때 매번 주석을 풀었다 했다 하지 않아 도 되고, 매번 로그 레벨을 변경하지 않아도 되는 나름 반 자동화 이지요 ~~ 수동배포한다면... 제목처럼 spr.. 백앤드 이야기/JAVA&Spring 2019. 10. 21. [JAVA] 자바 비대칭키, 대칭키 암호화 하기 java.security 라이브러리를 이용한 자바 암호화하기, 되새겨보려는 의도로 작성하는 포스팅이기때문에 설명이 충분하지 않을 수 있습니다. 요즘같은 개인정보 유출 사례가 많은시대에 암호화는 선택이 아닌 필수입니다. 참고자료를 보기위해 대학교 수업때사용했던 알기쉬운 정보보호개론 책을 다시 책장에서 끄집어냈습니다. ㅋㅋ 본문에 들어가기전 몇 교양으로 알고 넘어가야 할 기초 개념은 아래와 같습니다. 암호 : 해독 불가능한 형태로 변환 또는 변환된 암호를 해독 가능한 형태로 변환평문(Plaintext) : 일반 텍스트, 즉 눈에 보이는 글자암호문(Chphertext) : 해독 불가능한 텍스트암호화(Encryption) : 평문을 암호문으로 변환복호화(Decryption) : 암호문을 평문으로 변환대칭키 암호.. 백앤드 이야기/JAVA&Spring 2019. 9. 16. [JAVA] 인코딩과 인코딩 방식 너무 오랜만에 쓰는 블로그라.. 간단하게 쓰고 ㅌㅌ 해야지 예전부터 한번쯤 되새겨보고 싶었던 인코딩과 ~ 인코딩 방식! 인코딩이란? 먼저 위키백과의 사전적 의미를 보자면 부호화(符號化)나 인코딩(encoding)은 정보의 형태나 형식을 변환하는 처리나 처리 방식이다.문자 인코딩(文字-, 영어: character encoding)은 문자들의 집합을 부호화하는 방법이다. 이런 사전적 의미가 있고, 즉 컴퓨터가 이해할 수 있는 형식으로 바꾸어 주는것을 뜻한다. 인코딩 된 문자는 다시 디코딩하여 원래의 문자나 기호로 표현이 가능하다! 그렇다면 인코딩의 종류는 어떤것들이 있는가 ~? ASCII 영문 알파벳과 숫자 문자를 표현하는 대표적인 문자 인코딩이다 아스키는 7bit 인코딩으로, 0~127(128개)의 문자와.. 백앤드 이야기/JAVA&Spring 2019. 9. 9. [JAVA] 하드디스크 드라이브 용량 확인 public static Map getSpaceInfo() {Map result = new HashMap();String driveName = "";double totalSize = 0;double freeSize = 0;double useSize = 0;File[] drives = File.listRoots();for(File drive : drives) { driveName = drive.getAbsolutePath();totalSize = drive.getTotalSpace() / Math.pow(1024, 3);useSize = drive.getUsableSpace() / Math.pow(1024, 3);freeSize = totalSize - useSize;result.put("driveName.. 백앤드 이야기/JAVA&Spring 2019. 8. 5. [JAVA] Paging 모델 및 소스 (Mybatis) 1. 모델 PageNavigation.java @Datapublic class PageNavigation { private int pageNo = 1;private int pageSize = 20;private int blockSize = 10;private int firstPageNo = 1;private int lastPageNo;private List pageList = new ArrayList();private int totalCount;private int previousPage = 1;private int nextPage; public PageNavigation() {} /** * 1. 리스트의 전체크기 필요 * 2. pageSize 필요 * 3. lastPageNo = totalPage * .. 백앤드 이야기/JAVA&Spring 2019. 7. 7. [JAVA] 높은 응집도와 낮은 결합도 응집도란?해당 기능을 수행하기 위해 얼마만큼의 기능과 아이디어가 뭉쳐있는지를 나타내는 정도이다.특정 결과값을 얻기 위해 지나치게 많은 일을 하지 않으면 그것은 높은 응집도라 표현한다. 결합도란?코드의 요소가 다른 상태와 얼마나 강력하게 연결 되어있는지, 또한 얼마나 의존적인지를 나타내는 것이다. 응집도 낮은 클래스의 문제점은이해하기가 힘들고, 재사용이 힘들다. 또한 유지보수가 매우 쉽지않으며 클래스 변화에 민감하다결합도가 낮은 클래스의 문제점은클래스의 규모가 커지기 때문에 이해 하기 쉽지 않으며, 변화에 따른 다른 요소들의 변경을 예측하기 쉽지 않다. 따라서 높은 응집도와 낮은 결합도가 이상적인 모듈이다. 백앤드 이야기/JAVA&Spring 2019. 7. 4. [JAVA] 클라이언트단 IP 정보 특정 IP 만 허용하도록 로직을 짤 경우가 있다. 이때 웹서버 앞단에 L4 스위치 또는 프록시 서버 등이 있다면 로컬의 IP 가 아닌 스위치 또는 프록시 서버의 IP 를 가지고오게된다. 이렇게 장비들이 앞단에 있을경우 클라이언트 IP 정보를 request Header에 정보를 담아 요청하게 된다. 이에 따른 소스는 아래와 같다. private String getRealIpAddress(HttpServletRequest request) { String ipAddress = request.getHeader("X-Forwarded-For"); if (ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {ip.. 백앤드 이야기/JAVA&Spring 2019. 6. 10. [JAVA] 생성자 생서자의 용도* 필드 초기화* 생성자는 리턴 타입을 지정할 수 없다* 생성자도 메소드이기 때문에 오버로딩 가능 백앤드 이야기/JAVA&Spring 2019. 4. 14. [JAVA] 오버로딩, 오버라이딩 오버로딩 : 동일한 이름의 메소드를 서로다른 매개변수로 사용하는 기술오버라이딩 : 부모클래스가 가지고있는 메소드를 하위클래스에 상속 후 재정의 해서 사용 백앤드 이야기/JAVA&Spring 2019. 4. 14. [JAVA] 바깥 for문 종료하기 outFor : for(char upper = 'A'; upper 백앤드 이야기/JAVA&Spring 2018. 11. 18. 이전 1 2 3 4 다음 💲 추천 글 반응형