본문 바로가기

기록/Java&Spring&Eclipse37

[Java] String StringBuilder 차이 - StringBuilder 사용하는 이유 String은 불변 객체이다. 2개의 String 객체를 더하기 연산하게 되면 새로운 String 객체가 만들어진다. 즉, String 객체끼리 더하는 행위는 메모리 할당과 메모리 해제를 발생시킴 => 성능이 좋지 않다. 그래서 나온 것이 StringBuilder StringBuilder 더해도 새로운 객체 생성 x 기존의 데이터에 더하는 방식 사용 append()를 통해 문자열을 더한다 String 변수에 넣을 때 & 결과를 출력할 때는 toString() 2022. 10. 31.
[Java] 클라이언트의 원 IP 주소 가져오기 찾아봤던 거 기록 보안 관련해서 방화벽이나 클라우드로 운영하는 경우 클라이언트의 원 IP주소를 가져올 수 없다. 출처 : https://linked2ev.github.io/java/2019/05/22/JAVA-1.-java-get-clientIP/ try{ String clientIp = request.getHeader("HTTP_X_FORWARDED_FOR"); if( clientIp == null || clientIp.length() == 0 || clientIp.toLowerCase().equals("unknown")){ clientIp = request.getHeader("REMOTE_ADDR"); } if( clientIp == null || clientIp.length() == 0 || cli.. 2022. 10. 31.
[Java] import java.util cannot be resolved import java.util cannot be resolved 처음 보는 import 오류. 특히 util에서 오류나면 대부분 jdk 바뀐 거 인식 못해서 오류난 것. 출처: https://sillutt.tistory.com/entry/Eclipse-the-import-javautil-cannot-be-resolved-오류 2022. 10. 27.
[Java/Spring] 스프링 어노테이션 @RestController, @Value - @RestController view가 필요없는 API만 지원하는 서비스에서 사용 (Spring 4.0.1부터 제공) @RequestMapping 메서드가 기본적으로 @ResponseBody 의미를 가정한다. data(json, xml 등) return이 주목적 즉, @RestController = @Controller + @ResponseBody 출처 : https://baek-kim-dev.site/69 - @RequestBody HTTP POST 요청에 대해서만 처리한다. HTTP POST 요청에 대해 request body에 있는 request message에서 값을 얻어와 매칭한다. RequestData를 바로 Model이나 클래스로 매핑한다. 이를테면 JSON 이나 XML같은 데이터를 적절.. 2022. 10. 27.
[Java] 마지막 쉼표 없이 변수 사이사이에 쉼표 넣어서 String 만들기 ArrayList UserList = new ArrayList(); UserList = (ArrayList) param.get("User"); String separator = ","; String Users = String.join(separator, UserList); 출처 : https://www.techiedelight.com/ko/delete-extra-separator-end-string/ String.join은 각각의 String을 하나의 String으로 합쳐주거나 Array(배열)을 하나의 String으로 바꿔주는 메서드이다. 자바8부터 지원되는 메서드 출처 : https://zorba91.tistory.com/34 2022. 10. 19.