728x90

JAVA 16

[JAVA] List Set 비교

1. List List는 원소들의 순서를 저장하기 때문에 index로 특정 원소에 접근할 수 있으며, 중복이 허용됨. [장점] - 순서가 보장되어, 특정 위치의 원소 접근에 용이 [단점] - 탐색할 데이터가 뒤쪽에 위치할 경우, 성능의 문제 List nameArray = new ArrayList(); nameArray.add("철수"); nameArray.add("영희"); nameArray.add("철수"); nameArray.add("짱구"); System.out.println("nameArray.get(0) : "+nameArray.get(0)); System.out.println("nameArray.get(2) : "+nameArray.get(2)); 결과 nameArray.get(0) : 철수 ..

JAVA/코딩 2022.07.25

[JAVA] HttpURLConnection 사용하기

URL url; HttpURLConnection conn = null; BufferedReader reader = null; try { url = new URL("url 입력"); // 호출할 url 입력 conn = (HttpURLConnection) url.openConnection(); // 커넥션 오픈 if (conn != null) { // GET, POST 등 conn.setRequestMethod("POST"); // application/x-www-form-urlencoded, application/json 등 conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); // 응답받을 데이터가 있는 경우 true..

JAVA/코딩 2021.08.27

[JAVA] StringUtils의 isBlank와 isEmpty 차이

자바에서 문자열 체크시 Apache common에서 제공해주는 StringUtils 클래스를 많이 사용하는데, 여기서 isBlank와 isEmpty의 차이점을 알아보려고 한다 isBlank와 isEmpty의 차이점은 공백처리다. 공백이 있는경우 isBlank는 비어있는 값으로 처리하는 반면 isEmpty는 비어있지 않은 값으로 처리한다. - StringUtils.isBlank() // isBlank 확인 System.out.println(StringUtils.isBlank("")); System.out.println(StringUtils.isBlank(null)); System.out.println(StringUtils.isBlank(" ")); 결과값 - StringUtils.isEmpty() // i..

JAVA/코딩 2021.04.01

[JAVA] Base64 인코딩시 개행문자 들어가는 현상

org.apache.commons.codec.binary.Base64 클래스의 encodeBase64String() 메서드를 이용하여 인코딩을 하는경우 특정 길이가 넘어가면 "+" 개행문자가 붙게 된다. 이를 해결하기 위해 여러가지 방법이 있겠지만 두가지 방법을 통해 해결했다. 1. + 문자 %2B로 치환 String str = "http://localhost:8080/test.do?param=apple+banana"; str = StringUtils.replace(str, "+", "%2B"); // 받는 입장에서는 반대로 치환을 해줘야한다 // StringUtils.replace(str, "%2B", "+"); System.out.println(str); - 결과값 : http://localhost:..

JAVA/코딩 2021.03.30

[JAVA] spring MVC @ModelAttribute 사용법

jsp에서 서버단(Controller)와 param값을 주고 받을 때 @ModelAttribute 어노테이션을 사용하지 않는 경우 보편적으로 아래와 같이 사용한다. weburl + /test.do?id=id&name=name&email=email&mobile=mobile @RequestMapping(value = "test.do", method = RequestMethod.GET) public String test(@RequestParam("id") String id, @RequestParam("name") String name, @RequestParam("email") String email, @RequestParam("mobile") String mobile, ModelMap model){ model..

JAVA/SPRING 2021.03.26

[JAVA] mkdir mkdirs 차이

java.io.File의 mkdir, mkdirs 차이점을 알아보자. mkdir은 상위 디렉터리가 없는 경우 생성하지 못하지만 mkdirs는 상위 디렉터리가 없으면 생성한다. 예를 들어 디렉터리가 없는 상황에서 /test/123을 File 생성자에 입력하고, mkdir를 이용하면 상위 디렉터리(test)가 있기때문에 생성하지 못한다. 하지만 mkdirs를 이용하는 경우 상위 디렉터리(test)와 하위 디렉터리(123) 모두 생성된다. ex) File file = new File("D:\\테스트\\1\\2\\3"); if(file.mkdir()){ System.out.println("디렉터리 생성 성공"); } else{ System.out.println("디렉터리 생성 실패"); } 결과값 : 디렉터리 ..

JAVA/코딩 2021.03.23

[JAVA] 날짜 계산하기(더하기, 빼기 등)

자바에서 java.util의 Calendar와 Date를 이용하여 날짜 계산하는 법을 알아보자 1. 현재 시간에 날짜 더하기, 빼기 Calendar cal1 = Calendar.getInstance(); cal1.add(Calendar.DATE, 6); // 일 계산 cal1.add(Calendar.MONTH, 4); // 월 연산 cal1.add(Calendar.DATE, -3); // 빼고 싶다면 음수 입력 Date date = new Date(cal1.getTimeInMillis()); System.out.println("현재시간 : " + new Date()); System.out.println("연산시간 : " + date); 결과 2. 특정 시간에 연산 String date_str = "202..

JAVA/코딩 2021.03.22

Spring @PostMapping @GetMapping @PatchMapping @PutMapping @DeleteMapping

Spring 4.3 버전 이후로 MVC 컨트롤러 메서드를 위한 어노테이션이 추가되었습니다. @PostMapping @GetMapping @PatchMapping @PutMapping @DeleteMapping 기존에 아래와 같이 어노테이션을 선언하는 방법과 달리 @RequestMapping(value="/test.do", method=RequestMethod.POST) public void test(){} 다음과 같이 간편하게 사용할 수 있습니다. @PostMapping("/test.do") public void test(){} 참고 : github.com/spring-projects/spring-framework/issues/18022#issue-398183908

JAVA/코딩 2021.02.25
728x90