본문 바로가기

노력을 이기는 재능은 없고
노력을 외면하는 결과도 없다.
- 이창호 9단

자바10

[JAVA] 인코딩(Encoding)이란? 인코딩 개념과 종류(ASCII, ISO/IEC, EUC-KR, MS949, UTF-8) 우리가 이클립스를 설정하거나 소프트웨어 개발을 하거나 데이터를 전송하거나 등등 여러가지 행위에서 인코딩이라는 개념과 사용이 생각보다 많다. 그렇지만 정작 우리가 사용하면서 정확한 개념을 이해하거나 정의를 알고 있는 건 한정적이고 한계가 많다. 그래서 오늘은 인코딩에 대해서 알아보고 인코딩 방식의 종류에 따른 개념과 특징이 무엇인지 알아보기로 했다. 인코딩(Encoding)이란? 파일에 저장된 정보의 형태를 다른 것으로 변경하는 것을 말한다. 부호화(符號化)라고도 한다 정보의 형태를 다른 것으로 변경하는 것을 인코딩이라고 하는데, 우리가 사용하는 정보를 나타내는 문자들의 형태 또한 나타내는 방식이 있다. 그 형태에 맞는 인코딩 설정으로 우리가 보고자 하는 형태를 사용하면 된다. 그렇다면 그런 형태는 무엇이.. 2022. 9. 8.
[Java Error] java.lang.ArithmeticException: / by zero 테스트용도로 게시판 리스트를 구현하려고 하던중에, 페이징 처리를 하여 서버로부터 데이터를 구현해서 클라이언트로 보내기위해 해당 페이지를 요청하는데 / by zero 에러가 뿜어져나왔다. 무언가를 0으로 나누려고해서 발생하는 에러인데, 어딘가에서 0으로 나누려고 시도했던것 같다. 0으로 나눠질것 같은 부분 부분을 찾아보았는데 페이지를 구성하기위해서 PagingVO를 꾸며주는 setter, getter부의 기본 초기값을 설정하지 않아, setter에서 값이 없으므로 정의 초기값인 0이 들어가 0으로 나눠져 위와 같은 에러가 발생했다. 처리결과 어떠한 값을 0으로 나누려고 해서 발생, 0으로 나누지 못하도록 값의 정의 및 초기화를 진행한다. PagingVO 클래스에 정의된 변수 들 중, screenSize와 .. 2022. 8. 8.
[Java Error] Cause: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory, ORA-00923: FROM keyword not found where expected. 테스트 프로젝트로 사용하던 서비스를 수정하기 위해서 오랜만에 프로젝트를 열고 Mysql 데이터베이스로 사용하던 설정들을 Oracle 데이터베이스 설정으로 변경 후, 서버를 가동하고 로그인을 진행했다. 그런데, ORA-00923: From keyword not found where expected. 라는 에러가 발생했다. From절과 관련이 있는거 같아 DB 쿼리가 있는 Mapper쪽으로 가 로그인을 관장하는 Mapper xml을 들여다보았다. 쿼리에 Mysql에서 사용중이던 구문이 있어 수정하고, 오타 또한 확인했지만 오타는 없었다. 다시 서버를 재가동하고 로그인을 진행했다. 하지만 같은 에러가 뿜어져나왔다. 설정이 잘못된건가? 어디서부터 잘못된건지 하나하나씩 찾아나갔다. 한참을 헤매고 시도하다가 마지막.. 2022. 8. 4.
[Java Error] Invalid character found in method name. 서비스를 띄우려고 톰캣을 실행하고 서비스 URL을 인터넷 브라우저에서 실행하였는데 홈페이지가 열리지 않고 위와 같은 에러가 발생하였다. 기존에 개발서버에서도 문제 없이 열렸던 서비스가 열리지 않으니 당황스러웠다. 톰캣 docbase가 잘못되었나? 소스상에 누락된 부분이 있나? 404에러와 같은 경로를 정확하게 작성하지 않은건가? 등등 여러가지 확인점을 가지고 확인을 해보았다. 하지만 그런 모든 부분이 아니고 내가 설정한 js에서 http로 요청하면 https로 바로 연결되게 한 js가 문제였다. 개발서버에는 신뢰할수 있는 SSL 보안인증서가 등록되어 있거나 OpenSSL과 같은 보안 정책이 등록되어 있지 않은 상태였기에 위와 같은 에러가 발생한 것이다. 그래서 해당 js를 주석처리하고 개발서버를 실행하였.. 2022. 6. 6.
[Java Error] java.lang.IllegalStateException: Optional int parameter 'bo_no' is present but cannot be translated into a null value due to being declared as a primitive type. 에러 해결방법 Rest Api 통신중, 서버로 int bo_no 파라미터를 받아 처리하는 함수가 있는데 요청도 안오고 그냥 500에러만 출력하는 에러가 발생했다. 에러로그는 아래와 같다. java.lang.IllegalStateException: Optional int parameter 'bo_no' is present but cannot be translated into a null value due to being declared as a primitive type. [ 구글 번역 ] 구글 번역을 해보니, bo_no가 파라미터로 속성으로 넘어오지만, 값이 없어 null처리를 하려고 했으나 int라 null 변환이 안된다는 에러다. 선택적 int 매개변수 'bo_no'가 있지만 기본 유형으로 선언되었기 때문에 nul.. 2021. 12. 29.
[JAVA] 변수와 상수 어떤 프로그래밍 언어라 할지라도 변수와 상수의 개념은 동일 하거나 비슷 할 것이다. 변수와 상수의 대한 개념은 프로그래밍 언어를 배우기 위해 무조건 기본으로 또 기초로 알고 있어야하는 개념일 것이다. 변수란? "변수(Variable)란? 단, 하나의 값을 저장할 수 있는 메모리 공간을 의미한다." 프로그래밍에서는 변수(variable)란, 값을 저장할 수 있는 메모리상의 공간을 의미한다. 이 공간에 저장된 값은 변경될 수 있기 때문에 '변수'라는 수학용어와 비슷한 면이 있어서 붙여진 이름이다. 하나의 변수에 단 하나의 값만 저장할 수 있으므로, 새로운 값을 저장하면 기존의 값은 사라진다. 프로그래밍의 첫 시작이 변수 이므로 간단하지만 정확한 개념과 사용법을 알고 가야한다. 변수의 선언과 초기화 변수(va.. 2020. 4. 25.
[JAVA] 자바에러와 해결방법 자바로 프로그래밍을 진행하다보면 많은 에러들을 만난다. 에러들을 만났을 때 해결방법을 알거나 어디 부분에서 에러가 났는지 알고 있어 바로 해결하기도 하지만 어떤 에러인지 어디서 난 에러인지 도통 몰라서 찾고 또 찾다가 결국 검색하고 다시 검색해서 해결할때가 여럿 있다. 대부분의 에러는 작은 실수에서 비롯된 것들이며, 곧 익숙해져서 쉽게 대응할 수 있게 되지만 처음 배울 때는 작은 실수 하나 때문에 많은 시간을 허비하곤 한다. 1. 세미콜론을 누락했을때 발생하는 에러 ';' expected 세미콜론 ';'이 코드 마지막 부분마다 붙여주었어야 하는데, 그렇지 못했을때 발생한다. 자바의 모든 문장의 끝에는 세미콜론(';')을 붙여주어야 하는데 가끔 이를 잊고 실수하기 쉽다. 2. main메서드가 잘못되었을때 .. 2020. 4. 22.
[JAVA] 자바(JAVA)란? JAVA 언어를 처음 접할 때가 2009년이었다. 그때 당시엔 JAVA가 무엇인지 어떻게 사용되는건지도 모른채 그냥 사용했던것 같다. 그러다 문득 내가 JAVA언어를 사용해 웹 프로그램도 만들고 봇도 만들고 그외 다른것들도 만들지만 누군가가 "JAVA란 무엇인가요?" 라는 질문을 했을때 막힘없이 JAVA에 대해서 설명을 할 수 있을까? 하는 의문이 들었고 내 자신에게 JAVA에 대해서 설명해보았다. 속 시원한 결과를 내지 못하는 나를 발견할 수 있었다. 그래서 JAVA란 무엇이고 JAVA의 특징에 대해서 알아보고자 한다. 정의 자바란 무엇인가? 자바는 썬 마이크로시스템즈(Sun Microsystems, Inc)에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다. 자바의 가장 중.. 2020. 4. 17.
[Mac] MacOS Java JDK 설치 및 환경변수 설정하기 MacOS에서 Java JDK를 설치하려고 한다. openssl 설치를 진행하면서 특정 명령어를 사용하기 위해서 필요한게 Java JDK이기도 하고, MacOS에서 이클립스를 설치해 웹 개발도 같이 진행해야하기 때문에 JDK 설치는 꼭 필수이다. 그래서 MacOS에서 Java JDK를 설치하고 환경변수를 설정하는 과정을 작성해보려한다. Java JDK 설치 1. Oracle 공식 홈페이지에 접속한다. Oracle 공식 홈페이지 접속 Oracle 공식 홈페이지로 접속해서 상단 메뉴를 펼치면 "Product Help" 카테고리에 "Download"항목을 클릭한다. 2. Java JDK 다운로드 항목을 찾아 이동한다. Oracle 공식 홈페이지 Customer Downloads Java 항목을 선택하면 스크롤.. 2020. 3. 27.
[SPRING] CKEditor4를 이용해서 이미지 업로드하기 많은 개발자분들께서 여러가지 편집도구들을 사용하고 계십니다. 저의 주변 친구, 지인, 선배 개발자분들도 정말 많은 편집도구들을 사용하고 계셨습니다. ("Naver Smart Editor", "Summernote", "CKEditor", "Daum open Editor", "TicyMCE" 등등) 저는 많은 편집 도구들 중에서 CKEditor4를 소개하고 에디터를 통해서 이미지를 업로드하는 방법에 대해서 이야기하고자 합니다. CKEDITOR4란? "수백만의 승인을 받았습니다. 완벽하게 사용자 정의를 할 수 있고, 가장 많은 기능을 갖춘 최고의 텍스트 편집기입니다. 워드/엑셀/구글문서 도구에서 붙여넣기, 열 크기 조정/행 및 열 선택에 대한 우수한 테리블 지원, 미디어 임베드/위젯/코드 스니펫/수학공식 편집.. 2020. 3. 2.