- [ 이클립스(Eclipse) ][Eclipse] Web Dynamic Project에 라이브러리 폴더 설정하기2021-08-31 14:33:00프로젝트에서 webapp폴더 안 └─>WEB-INF 폴더 안 └─> lib 폴더 를 생성해준다. 기존에 존재한다면 그 폴더를 이용하자. 자신이 넣고자 하는 라이브러리를 넣고 프로젝트를 우클릭 -> refresh를 해주자. 이렇게 해도 라이브러리 인식이 되지 않았을 경우, 프로젝트 우클릭 Build Path 클릭 Configure Build Path… 클릭 창이 하나 뜬다. Java Build Path 메뉴에서 Library 탭 클릭 Add Library 클릭 Web App Libraries 클릭 후 Next 클릭 Project 에서 내가 원하는 프로젝트 선택 후 Finish 클릭 Apply and Close 클릭 refresh 한 뒤 다시 하던 작업하면 된다.
- [ Oracle ][Oracle] Sql Developer2021-08-18 17:39:54sql developer 버전을 최신 버전으로 업데이트 하려고 했다. 설치 후 실행을 해보니 아래와 같은 오류 발생! CMD 창을 열어서 > echo %JAVA_HOME% 을 통해 현재 버전 확인도 가능하다. 아래에 가서 다운로드! https://www.oracle.com/java/technologies/javase-downloads.html 설치 후 환경 변수에서 JAVA_HOME 을 변경해주고, 실행하면 된다.
- [ Java ][JAVA] Class 파일 decompile2021-08-11 12:20:20class 파일로 배포된 파일을 읽고 싶은 경우에는 decomplie 툴을 통해 확인 가능하다. http://java-decompiler.github.io/#jd-gui-download 을 접속해서, 아래 다운로드!! 아래와 같이 실행되고, 해당 파일을 열면 바로 볼 수 있다.
- [ Java ][JAVA] 2차원 배열 정렬 Arrays.sort2021-04-23 23:33:511차원 배열의 경우, 아래와 같이 오름차순으로 정렬이 된다. Arrays.sort(arr) 하지만 2차원의 경우에는 compare 함수를 써주면 간단하다. 아래와 같은 2차원 배열이 있다고 가정하면 int[][] arr = {{2,5},{1,5},{1,4}} 아래와 같이 정렬할 수 있다. Arrays.sort(arr, Comparator.comparingInt(o1 -> o1[0])); 0번째 값을 기준으로 compare을 하는 것을 의미한다. 하지만 0만 기준으로 하면, 아래와 같이 보일 수 있다. {{1,5}, {1,4}, {2,5}} 따라서, 0번째가 같을때 두번째 요소를 이용하여 정렬을 하면 된다. 0번째가 같으면 1번째를 비교하고, 다른 경우에는 그냥 0번째로 비교한다. Arrays.sort(a..
- [ Java ][Java] Integer와 int의 차이2021-04-21 14:00:47int (Primitive 자료형-객체가 아니다) ‘자료형’ 을 의미한다. (int, float, long, double 와 같은 하나의 primitive 자료형을 의미합니다.) ‘산술 연산’이 가능합니다. null 로 초기화 불가능합니다. (0으로 초기화 가능합니다.) 이러한 점 때문에 자바는 C/C++과 조금의 차이를 보입니다. Integer (Wrapper 클래스-객체다) Wrapper 클래스입니다. Unboxing 을 하지 않으면(int로 변경하는 것) 산술 연산이 불가능하지만, null값은 처리할 수 있습니다.(그런데 실행하면 산술이 된다!!! 이건 자바에서 Auto unBoxing을 해서 그런다) null값 처리가 용이해서 SQL 과 연동할 경우 처리가 용이. 직접적인 산술연산은 불가능합니다...
- [ Java ][JAVA] BigInteger2021-04-01 17:20:17BigInteger를 사용해야 하는 이유 Type 범위 int -2,147,483,648 ~ 2,147,483,647 long -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 BigInteger 선언 BigInteger big = new BigInteger("10000"); BigInteger 에서는 사칙연산(+ , - , * , /) 을 사용할 수 없다!! 덧셈(+) -> add 뺄셈(-) -> substract 곱셈(*) -> multiply 나눗셈(/) -> divide 나머지(%) -> remainder BigInteger 형 변환 BigInteger bigNumber = BigInteger.valueOf(100000); //int -> BigIn..
- [ Java ][JAVA] X-Frame-Options deny2021-03-12 12:10:51iframe을 사용하다 보면 설정에 의해서 Refused to display 'http://localhost:7100/' in a frame because it set 'X-Frame-Options' to 'deny'. 와 같은 메세지를 만나게 되었다. nginx나 tomcat , 웹서버에서 설정하는 부분도 있으나 자바에서 해결하였다. HttpSecurity 설정 부분에 HttpSecuriry.headers().frameOptions().sameOrigin(); 을 설정하였다. X-Frame-Options 에는 아래와 같이 세가지 값이 있다. DENY 해당 페이지는 frame 내에서 표시할 수 없다. SAMEORIGIN 해당 페이지와 동일한 orgin에 해당하는 frame 내에서 표시를 허용한다. ALL..
- [ Java ][JAVA] Stream API2021-02-24 18:10:47Java Stream Stream은 자바 8부터 추가된 기능으로 "컬렉션, 배열등의 저장 요소를 하나씩 참조하며 함수형 인터페이스(람다식)를 적용하며 반복적으로 처리할 수 있도록 해주는 기능"이다. (InputStream, OutputStream같은 I/O Stream이 아니다.) List names = Arrays.asList("jeong", "pro", "jdk", "java"); // 기존의 코딩 방식 long count = 0; for (String name : names) { if (name.contains("o")) { count++; } } System.out.println("Count : " + count); // 2 // Iterator 방식 long count = 0; Iterator ..