- [ Java ][JAVA] 오라클 rowid 직렬화 오류2024-03-13 13:53:07오라클에서 rowid를 이용하고 싶어서, mybatis를 통해 rowid를 호출했더니 아래와 같이 에러가 발생했다. 호출쿼리 SELECT ROWID ,COLUMN1 ,COUMN2 FROM TABLE 2024-03-13 11:59:58.003 ERROR 49400 --- [nio-7101-exec-3] c.h.n.handler.GlobalControllerAdvice : Could not write content: No serializer found for class java.io.ByteArrayInputStream and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FA..
- [ Java ][Java] Name for argument of type [java.lang.String] not specified, and parameter name information not available via reflection2024-02-21 00:42:01메일 인증을 위해 @PathVariable로 email 주소를 받아가도록 Controller 를 설정하고 @ApiOperation(value = "인증번호 확인 요청 메일 전송", notes = "") @RequestMapping("/user-auth/{email}") public void confirmMailSend(@PathVariable String email){ memberService.confirmMailSend(email); } 실제 호출을 해보니, 에러가 생겼다. 컴파일에서 오류가 생기지 않았는데 무슨 오류인가 보니, 파라미터의 이름을 찾지 못하는 문제였다. 이름과 파라미터 명이 동일한데도 문제가 생겼다. 2024-02-21T00:36:19.192+09:00 ERROR 101980 --- [..
- [ Java ][JAVA] PKIX path building failed 오류 무시하기2022-03-16 14:49:53내부망에서 API 개발, 테스트를 진행 할 때, 발생하는 오류였다. 해당 API 주소의 인증서가 정확히 sectigo ssl 임에도 불구하고 오류가 발생하였다. 인증서 업데이트 정보를 제대로 못받아오는 듯 하다. 따라서, 내부망 통신이기에 인증서 오류를 무시하고자 하였다. @Bean public SSLConnectionSocketFactory getSSLSocketFactory() throws KeyManagementException, NoSuchAlgorithmException, KeyStoreException { TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager() { public java.security.cert.X509..
- [ 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..