본문 바로가기

자바

모던 자바인 액션 : 스트림 4.1 스트림 소개 : 자바 애플리케이션의 대부분은 컬렉션을 만들고 처리하는 과정을 포함 : 컬렉션으로 데이터를 그룹화 하고 처리할 수 있음 : 많은 요소를 포함하는 커다란 컬렉션의 경우 성능을 높이려면 멀티코어 아키텍처를 활용해서 병렬로 컬렉션의 요소를 처리해야한다. => 어렵고 복잡함 이를 해결하기 위한 : 스트림 등장! 스트림이란? 자바 8 API에 추가된 새로운 기능 스트림은 데이터 컬렉션 반복을 멋지고 간편하게 처리하는 기능 멀티스레드 코드를 구현하지 않아도 데이터를 투명하게 병렬로 처리할 수 있음. p136 기존의 코드와 자바 8비교 소스 코드 (.stream() / .parallelStream()) 스트림과 파라렐 스트림은 (멀티코어 아키텍쳐에서 병렬로 실행할 수 있음) 스트림의 장점 : 람.. 더보기
[인프런강의] 더 자바, 자바8 : 2강 함수형 인터페이스란? - 함수형 인터페이스는 인터페이스 하나에 하나의 추상메소드가 있는것. 두개 있음 안됨 - @FuctionalInterface 사용(자바에서 제공해주는 어노테이션) 인터페이스에서 정의 할 수 있는 메소드의 형태가 다양해짐 - abstract 생략가능 - 인터페이스 안에서 static 메소드를 정의 가능 - default 메소드를 정의 가능 람다표현식이란? - 코드를 줄일 수 있음 - 함수형 인터페이스의 인스턴트를 만드는 방법으로 쓰일 수 있음 - 메소드 매개변수, 리턴타입, 변수로 만들어 사용할 수 있음 자바에서 함수형 프로그래밍 - 자바에서 first class object로 사용할 수 있음(?) - 고차함수 : 함수가 함수를 매개변수로 받거나, 함수를 리턴할 수 있음 - 순수함수:.. 더보기
[JAVA] 날짜 관련 코드 모음집(날짜 더하기, 빼기, 변환, 형식..등등) Date를 쓰면 보통 4개의 클래스를 import한다. 1. java.text.SimpleDateFormat : 날짜 형식 맞추기 위함 2. java.text.parseException : string에서 date 형식으로 바꿔 줄 때 parse를 쓰는데 exception 적용필요 3. java.util.Calendar : 날짜 더하고 빼고 위함 4. java.util.Date : 날짜 구하기 위함 🔸String에서 Date형식으로 변환 / Date에서 String 형식으로 변환 : String=> Date Date date = format.parse(sdate); : Date => String String sdate = format.format(date); import java.text.ParseExc.. 더보기
[JSTL] GET, POST로 받은 파라미터 바로 사용하기 JSTL의 경우) //JSTL 사용할 수 있도록 include ${param.파라미터이름} //이렇게 사용하면됨 보통 JSP의 경우) 더보기
[JAVA] 문자열 자르기 ( indexOf()/ substring() / split() ) 1. indexOf() String finds = "abc-def" int idx = finds.indexOf("-"); // 인덱스값 3 2. substring() String finds = "abc-def"; String ans = finds.substring(0,3); //abc String ans2 = finds.substring(4); //def 3. split() : 지정한 문자를 기준으로 문자열을 잘라 배열로 반환한다. String finds = "2021/4/13"; // '/'를 기준으로 문자열을 자른다. String date[] = birthday.split("/"); for(int i=0 ; i 더보기
[자바] ip주소 구하기 & (0:0:0:0:0:0:0:1 일때 해결방법) 😏 자바에서 IP주소를 구하는 방법 String ip = request.getRemoteAddr(); 🤧하지만 이것만 쓰면 안된다~! 보통 보안 문제로 방화벽등을 거쳐 요청이나 응답이 가공되어 나가고 들어오기 때문에 getRemoteAddr()만 쓸경우 프록시 서버나 엉뚱한 ip를 얻을 수 있게됩니다. 이 문제를 해결하기 위해 등장한 것이 X-Forwarded-For 헤더 developer.mozilla.org/ko/docs/Web/HTTP/Headers/X-Forwarded-For X-Forwarded-For - HTTP | MDN X-Forwarded-For X-Forwarded-For (XFF) 헤더는 HTTP 프록시나 로드 밸런서를 통해 웹 서버에 접속하는 클라이언트의 원 IP 주소를 식별하는 사.. 더보기
자바스터디 9주차 feat.백기선님 (예외처리) 예외란~ exception 종류 발생 경우 ArithmeticException 정수를 0으로 나눌때 발생 NullPointerException null 레퍼런스를 참조할 때 발생 ClassCastException 변환할 수 없는 타입으로 객체를 변환할때 발생 OutOfMemoryException 메모리가 부족한 경우 발생 ArrayIndexOutOfBoundsException 배열의 범위를 벗어난 접근시 발생 IllegalArgumentException 잘못된 인자 전달 시 발생 IOException 입출력 동작 실패 또는 인터럽트 시 발생 NumberFormatException 문자열이 나타내는 숫자와 일치하지 않는 타입의 숫자로 변환 시 발생 자바에서 예외 처리 방법 (try, catch, throw.. 더보기
자바스터디 5주차 feat.백기선님 (클래스/객체/메소드/생성자/this) 클래스 정의하는 방법 - 자바는 클래스 라는 캡슐을 사용하여 객체를 표현. - 클래스는 객체를 생성하기 위한 설계도 또는 틀. ex) 붕어빵 틀은 클래스, 찍혀져 나오는 붕어빵 자체는 객체(인스턴스) 접근지정자 public 클래스 내부, 외부 모두 호출가능 private 비공개(클래스 내부 멤버를 이용해서만 접근 가능) protected 클래스 내부 메소드들 호출 가능, 다른 클래스 중 상속 받은 클래스만 호출 가능 생략(default) 동일한 패키지 내의 모든 클래스가 호출가능함 default private protected public 같은 패키지 클래스 O X O O 다른 패키지 클래스 X X X O 생성자란? - 클래스의 이름과 동일한 메소드 - 이 클래스의 객체가 생성될때만 호출 메소드란? - .. 더보기