본문 바로가기
반응형

개발/Java48

[JAVA] 자바 indexOf 사용법 특정 문자열을 받아서, 해당 문자열 내에 원하는 문자(문자열)이 있는지 확인해야 하는 경우가 많이 있다. 컨트롤러 역할을 하는 클래스에서 많이 사용될 것이다. 해당 조건으로 if else 구문을 걸고, 분기를 태워서 다른 쪽으로 이동을 시키거나, 특정 메소드를 실행 시킬 수 있다. indexOf("찾는문자") 사용법은 매우 간단하다. 찾는 문자를 (" ") 안에 추가하면 된다. 예를 들어, String teststr = "Hello"; 라는 문자를 받았다면, if(teststr.indexOf("e") > 0) { // 별도 로직 수행... } 이런 식으로 사용해주면 된다. 'e' 가 들어있는 갯수만 큼 숫자를 반환한다. 데이터가 없으면 -1 을 반환한다. indexOf("찾는문자", 숫자) 찾는 위치를 .. 2021. 4. 12.
[java] equalsIgnoreCase 메소드 자바에서 문자열 비교하기 위해 자주 사용하는 메소드가 equals 입니다. equals 메소드와 비슷한게 하나 더 있는데, equalsIgnoreCase 입니다. equals, equalsIgnoreCase 차이점 차이점은 간단합니다. equals : 대소문자 비교를 함. equalsIgnoreCase : 대소문자 비교 없이 문자열만 비교함. 아래는 간단한 테스트 코드입니다. public class Test0408 { public static void main(String[] args) { // TODO Auto-generated method stub String str1 = "TREX"; if("trex".equals(str1)) { System.out.println("It's ok."); } else.. 2021. 4. 8.
제네릭 타입. 꺾쇠 괄호 < > 왜 사용하는가? JAVA에서는 꺾쇠 괄호 를 사용하는 문법을 자주 볼 수 있는데요. 이게 뭘까요? 왜 사용하는 걸까요? 이것을 자바에서는 제네릭 타입이라고 부른다고 하네요. ㅁ 왜 사용하는가? '이것이 자바다' 책을 기본서적으로 보고 있습니다. 설명에 따르면, 메소드에 사용될 반환타입을 명시적으로 정해서, 오류를 사전에 차단하고, 성능을 높이고자 함이라고 합니다. 이게 무슨 말인지 좀 더 풀어서 설명하면, 꺾쇠 괄호 안에 데이터 타입을 정의 하면 두가지 면에서 좋습니다. 1) 실행단계에서 오류가 나기 전, 컴파일 단계에서 미리 체크가 가능하다. Box 으로 정해 놓으면, String 만 들어 올 수 있는 것이죠. Object로 설정하면 Integer도 들어올 수 있는데, 이런 경우 (String) str.get(); 해.. 2021. 4. 3.
자바 컬렉션에 대한 설명 자바 컬렉션에 대한 설명입니다. 데이터를 배열 등의 형태에 담고, 꺼내서 쓰는 방식에 대한 얘기입니다. 뉴렉처님의 영상을 보고 복습한 내용입니다. ㅁ ArrayList 가변적인 배열처럼 데이터를 받기 위한 컬렉션입니다. List list = new ArrayList(); list.add(3); list.add(5); list.add(7); System.out.println(list.get(2)); 이런 식의 문법으로 사용합니다. 순번이 0, 1, 2, 3 이런식으로 순서대로 정해집니다. 결과로 7이 나오게 됩니다. ㅁ HashSet 값 자체가 키가 된다고 합니다. 중복해서 넣는건 안되구요. Set set = new HashSet(); set.add(3); set.add(4); set.add(7); set.. 2021. 4. 3.
request.getServletPath() 사용 방법 getServletPath()의 의미를 찾다가, 이것이 HttpServletRequest 함수를 사용하여 취득하는 여러 메소드 중 하나라는 것을 알게 되었다. 아래는 참조한 블로그의 내용을 재구성한 예시이다. ㅁ url 정보 https://sajagogumi.com:8080/context/servlet/index.jsp?seq=1&type=noti ㅁ method : getRequestURL() https://sajagogumi.com:8080/context/servlet/index.jsp ㅁ method : getRequestURI() /context/servlet/index.jsp ㅁ method : getContextPath() /context ㅁ method : getServletPath() /s.. 2021. 3. 29.
jsoup jar파일을 java project 에 추가하는 방법 웹 크롤링을 java로 하기 위해서 검색해보니, jsoup이 많이 검색되었다. jsoup 홈페이지에 들어가서 다운로드 하는 방법을 보니, 직접 다운로드에 대한 설명은 없고, gradle이나 maven을 통해서 추가하는 방법만 나와 있었다. 나의 경우, 간단히 java project를 만들고 코드를 테스트 해볼 생각이였기 때문에, 그렇게까지는 필요 없었다. 해당 jar를 다운로드 받아서 적당한 로컬폴더 위치에 놓고, 그 파일을 add external jar 형태로 가지고 오면 된다. Package Explorer > 해당 프로젝트 선택(마우스 오른쪽 클릭) > Properties > Java Build Path > Libraries > Add External JARs... 로컬에 다운로드 받은 jsoup-.. 2021. 3. 12.
eclipse java build path 새로고침 새로운 팀에 배정 받고, 해당 팀의 프로젝트 파일을 다운로드 받는 경우가 종종 있을 것이다. eclipse에서 svn을 통해 새로운 프로젝트를 다운로드 받으면, 하단의 Problems 항목에 Errors가 가득 뜨는 것들을 접할 수 있다. 당황하지 말고 잘 읽어보면, 대부분 '... is missing required library' 같은게 많을 것이라고 본다. 이건 해당 라이브러리 위치를 찾지 못한 것이다. svn에 업로드 될 때의 의존성 주소가 그대로 올라간건데, 해당경로의 위치에 동일한 파일을 넣어주던가, 다른 곳에 놓고 링크 주소를 변경해주던가 하면 된다. 다른 로컬 디렉토리의 위치에 놓고 링크주소를 변경하는 경우에는 변경 이후 apply 눌러주면 자동으로 새로운 링크주소가 반영된다. 하지만, 기.. 2021. 3. 11.
[JAVA] class명과 동일한 method명 간혹 코드를 보다 보면 반환형이 없는 메소드를 만나게 된다. 이런 형태의 메소드(method)를 생성자(constructor)라고 한다. 리턴 타입이 없는 생성자 메소드의 경우 아래처럼 두가지 특징을 가지고 있다. 클래스(Class) 이름과 메소드(Method) 이름이 똑같다. 반환되는 리턴 타입이 없다. 오랜만에 자바 코드를 접하다 보니 이런걸 배웠었다는 사실조차 잊어버렸다. 반환형이 없는 메소드를 만나도 당황하지 말도록 하자. 클래스의 이름과 동일한지 확인해 보자. public Member(String name, int age) { this.name = name; this.age = age; } 2020. 11. 8.
마크다운(markdown)이 무엇인가요? 마크다운 뜻 저도 궁금해서 찾아 봤습니다. 마크다운은 마크업 언어의 한 종류입니다. 읽고 쓰기 쉬운 문서 양식을 지향 한다고 하는군요. 존 그루버, 아론 스워츠가 만들었다고 합니다. 특수문자 별 표시를 넣어서 쓰면, 이렇게 목록이 만들어 집니다. 시험삼아서 써보는 중입니다.* ** 익숙해지면 편할 것 같기도 합니다. ** 마크다운 에디터에서 위와 같이 쓰면, 화면의 글처럼 보여지는군요. 존 그루버는 펄 프로그램을 이용해 마크다운을 HTML로 변환해주는 프로그램을 만들었다고 합니다. 1 인용구는 멋지게 나오는군요. 하지만, 티스토리의 마크다운 에디터가 쓰기에 불편합니다. 2 아무것도 없어요. 원래 그런 걸까요? '별을 연달아 3개 표시하니 위 같은 줄이 그어졌습니다.' 마크다운은 종류가 여러가지 있다고 하.. 2020. 10. 27.
[java] continue 문 이용해서 영어문장 외우기 게임 만들기 continue 문을 응용해서 무엇을 해볼까 생각하다가 간단한 퀴즈 프로그램을 만들어 봤습니다. 전부터 만들어보고 싶었던 건데, 좋은 기회인 것 같습니다. 필요한 준비물은 - String 배열 - 랜덤함수(Random) - continue 정도가 될 듯 합니다. 이번 퀴즈 프로그램은 영어문장의 일부를 지우고 맞추는 게임입니다. 하나의 문장을 출력하되, 문장 중 일부를 공란으로 만들려고 합니다. 이왕이면 문제가 출제될 때마다 랜덤하게 공란이 변하는게 좋을거 같습니다. 아이디어는 아래와 같습니다. 1) 문장을 단어별로 쪼개서 배열에 담아둡니다. 2) 문장 중 가려질 단어의 순서를 정합니다. 랜덤하게 3) 배열에 담긴 단어를 순서대로 출력하다가 4) 가려질 순서를 만나면 continue를 사용하여 반복부의 끝.. 2020. 10. 24.
[java] continue 사용방법, 그리고 break 와의 차이점 JAVA에서 break, continue 문 모두 해당 구절을 만날 경우 아래의 코드를 실행하지 않고 건너뜁니다. 하지만, 차이점이 있습니다. continue : continue를 만나면, 즉시 해당 루프의 끝으로 이동함. 이후, 다시 반복문을 수행함. 여기서, 결과값은 아래와 같습니다. 0 1 2 3 4 5 6 8 9 7을 만나면 아래의 코드를 skip하고, 반복부의 끝으로 이동한다고 보면 되겠습니다. 그리고, 다시 루프를 수행합니다. 루프의 조건이 끝날 때까지. 반면, break 문의 경우, 만나는 순간, 아예 해당 루프를 빠져나가버립니다. 이후, 아래의 코드를 수행합니다. 코드를 실행하면 아래처럼 나오게 됩니다. 0 1 2 3 4 5 6 빠져나왔지롱. 7을 만나는 순간, 루프를 더이상 수행하지 않습.. 2020. 10. 22.
[java] 자바 ArrayList add : 인덱스 순서대로 데이터를 입력 add(index, data) : 인덱스 순서에 데이터 추가. 기존 데이터는 한칸씩 뒤로 밀림. addAll(arrayList) : 다른 리스트를 통으로 추가 할 수 있음. remove(index) : 원하는 인덱스 제거 가능함. 코드 실습 import java.util.ArrayList; public class test1013 { public static void main(String[] args) { // TODO Auto-generated method stub ArrayList list = new ArrayList(); ArrayList al = new ArrayList(); ArrayList al2 = new ArrayList(); al.add(1);//0.. 2020. 10. 13.
java List (자바 리스트 자료형) 자바 자료형 중 한가지 종류. 데이터 갯수가 정해져 있지 않은 상태에서 사용하기에 좋음. 종류는 - ArrayList - Vector - LinkedList 이런 것들이 있음. ArrayList 코드 실습 import java.util.ArrayList; public class test1013 { public static void main(String[] args) { // TODO Auto-generated method stub ArrayList acctList = new ArrayList(); acctList.add("123"); acctList.add("156"); acctList.add("134"); System.out.println(acctList.get(1)); } } 결과물 : 156 - i.. 2020. 10. 12.
Java 11 or more recent is required to run the Java extension. Java 11 or more recent is required to run the Java extension. Java 확장을 실행하려면 Java 11 또는 그 이상의 최신 버전이 필요하다. Please download and install a recent JDK. 최신 JDK를 다운로드하여 설치하십시오. You can still complile your projects with older JDKs by configuring 'java.configuration.runtimes' 'java.configuration.runtime'을 구성하여 이전 JDK로 프로젝트를 계속 만족시킬 수 있음 visual studio code에 java 파일을 생성시 나온 메세지 입니다. 2020. 10. 11.
java HttpServletRequest 클라이언트의 요청과 관련된 여러가지 정보들을 가지고 있는 객체입니다. 메소드를 호출하여 원하는 정보를 추출 할 수 있습니다. # local의 기본정보 : ip, name, port request.getLocalAddr() request.getLocalName() request.getLocalPort() # 클라이언트 정보 : ip, host, port request.getRemoteAddr() request.getRemoteHost() request.getRemotePort() # 서버 정보 : name, port request.getServerName() request.getServerPort() # 지역정보, 프로토콜, 스키마, 보안채널 사용 여부 request.getLocale() request.g.. 2020. 10. 7.
자바 JDBC 강의 (뉴렉처 강의 메모) 오랜만에 자바 강좌를 다시 듣기 시작했습니다. 여러가지 깨작거리면서 보다가, 뉴렉처님의 강의가 훌륭하여 한번 답습해보고자 합니다. 현재는 자바 JDBC강의를 듣고 있으며, 4강까지 들은 상태에서 메모로 남겨봅니다. url : 자바 JDBC강의 4 오라클, ms-sql 등 여러 DBMS에 접속을 하려면, 원래는 각 시스템에 맞는 설정방식을 통해 접속해야 합니다. java JDBC는 이런 부분을 일원화 하여 개발자가 편하게 DBMS에 접속을 시도 할 수 있도록 도와줍니다. 자바 개발자는 JDBC설정만 집중하면 되고, JDBC는 뒷단의 DB 드라이버 들과의 연결을 해줍니다. Class.forName("oracle.jdbc.driver.OracleDriver"); Connection con = DriverMan.. 2020. 10. 2.
반응형