Tiny Bunny 'JAVA' 카테고리의 글 목록 - 솜님의 블로그
솜님의 블로그

JAVA 45

카테고리 설명
  • 회사에서 프로젝트를 위해 환경세팅이 필요한데,또 까먹을 것 같아서 정리ㅎ 아래의 링크 접속 (오라클 홈페이지)https://www.oracle.com/java/technologies/downloads/#java8 원하는 운영체제에 맞게 파일 다운로드!🎈 (오라클 회원가입 되어있어야 설치 가능) 파일을 받아 설치까지 완료되었으면 환경 변수 설정을 해줘야 한다.  내 PC 우클릭 -> 속성  좌측의 정보 -> 고급 시스템 설정 클릭 고급 탭 -> 환경변수 클릭   시스템 변수 쪽에 새로 만들기 버튼 클릭 이름은 JAVA_HOME 으로 작성하고,변수 값에는 jdk 파일 설치한 경로 설정해 준다. 그리고 시스템변수 목록을 보면 Path가 있는데이를 선택하고 편집 버튼 클릭!  환경 변수 편집이 나오면 새로 만..

  • StackStack은 "쌓다"라는 의미를 가지고 있다.이 의미에 걸맞게 데이터를 쌓는 구조라고 볼 수 있다. 스택은 입구가 하나뿐인 원통형을 생각하면 되는데,데이터가 순서대로 쌓이다가 해당 데이터를 요청하게 되면 입구가 하나이기 때문에 가장 마지막 데이터가 나오는LIFO (후입선출) 형태이다. Stack는 자바의 컬렉션 프레임워크 중 하나로,제네릭 을 같이 사용해야 한다. ex) Stack stack = new Stack Stack은 직전의 데이터 무시 / 실행 취소 / 뒤로 가기와 같은 상황에서 사용할 수 있다.배열과는 다르게 특정 인덱스에 접근할 수 없다.   public static void main(String[] args) { // Integer 타입의 Stack 생성 ..

    JAVA/java

    [JAVA] Stack NEW

    2024.11.22
    댓글
  • 웹 크롤링이란?웹 데이터를 모아서 정제 및 가공하는 것 [정적 크롤링]웹 페이지 데이터에만 접근,페이지에 직접 작성된 데이터만 접근 가능"페이지 소스 코드 보기"로 보이는 데이터만 가져오는 것ex) jsoup[동적 크롤링]웹 페이지가 참조하는 데이터까지 접근 가능본 서버의 데이터를 하이딩(은닉, 암호화)했다면 접근 불가능하다.ex) 셀레니움 참고!크롤링 할 때 무신사나 쿠팡 같은 사이트는 다른 곳의 데이터를 가져다가 사용하는 것이기 때문에 크롤링하기 어려움.멜론, 벅스, CGV 같은 곳들이 자기 데이터를 사용하기 때문에 상대적으로 크롤링하기 용이함.  이클립스 jsoup 설정 jsoup을 사용하기 위해서는 jsoup 파일 다운로드 후 설정이 필요하다.  1. 사용하려는 프로젝트 파일 우클릭 → Build..

  • 자바 입출력과 스트림프로그램으로 들어오는 모든 값을 Input, 출력되는 값을 Output이라고 하는데, 이를 입출력(I/O)이라고도 부른다.자바에서는 입출력을 처리하기 위해 별도의 I/O 패키지를 제공한다. 자바 프로그래밍이 디스크에 접근해 데이터를 주고받는 작업을 도와주는 통로를 '스트림(Stream)' 또는 '가상 통로'라고 한다. 🍀입출력 스트림의 특징- 스트림은 입출력 장치와 자바 프로그램 간의 연결 통로로 스트림의 양 끝에서 전달이 이루어진다.- 단방향 통신이므로 입력 스트림과 출력 스트림을 별도로 사용해야 하며 FIFO(First In First out) 구조를 이루고 있다.- 연속된 데이터의 흐름으로 입출력 진행 시 다른 작업을 할 수 없는 상태가 된다.- 입출력 대상을 변경하기 편하며 ..

  • 프로세스(process)와 스레드(thread)동시에 두 가지 이상의 작업을 처리하는 것을 '멀티태스킹'이라고 한다.컴퓨터에서 멀티태스킹을 위한 두 가지 도구가 있는데, 프로세스와 스레드이다. 프로그램은 파일이 존재하지만 아직 메모리에 올라가 있지 않은 상태를 의미한다.(실행되지 않은 코드의 집합)프로그램을 실행하는 순간 메모리에 올라가고 동작하게 되는데 이 상태의 프로그램을 프로세스라고 한다. 프로그램이 실행되면 메모리에 적재되고, 프로세스가 된다.프로세스는 독립적으로 메모리에 등록되므로 여러 개의 프로그램을 동시에 실행할 수 있게 된다. 이러한 프로세스 내부에 존재하며 실행 흐름을 나타내는 것을 스레드라고 한다.하나의 프로그램 안에서 다양한 작업을 동시에 하기 위해 스레드가 각자 독립적으로 존재하여 ..

  • [파일 입출력]- 자바에서 단독으로 하는 경우는 없다.- 파일 다운로드, 이미지 업로드 기능을 구현할 때 필요한 내용. PC와 프로그램의 상호작용내가 경로를 알 수 있는 폴더에 텍스트 파일을 만들어주고, 이클립스에 주석으로 해당 폴더의 경로를 적어준다.(나중에 찾기 쉽도록! == 효율성을 위해서) package class01;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.util.Scanner;public class Test001 { public static void main(String[] args) { // 파일..

  • 람다식(Lambda expression)람다식은 함수의 이름이 없는 익명 함수를 만들기 위한 표현식을 말한다.자바에서는 함수, 즉 메서드를 사용하기 위해 많은 과정을 거치게 되는데 이러한 과정을 생략하여 함수를 하나의 간결한 식으로 표현한 것이 람다식이다.즉, '식별자 없이 실행 가능한 함수'를 말한다.   람다식 문법int add(int x, int y){ return x + y;} 위 메서드는 자바에서 주로 사용하는 문법으로 작성된 더하기 기능의 함수(메서드)다. 이를 람다식 문법으로 표현하면 아래와 같다.(x, y) → {return x + y;]메서드의 이름과 반환 타입을 제거하고 화살표 기호를 사용해 구현한다. - 람다식 문법에서는 매개변수 자료형을 생략할 수 있으며, 매개변수가 한 개인 경우..

  • 컬렉션 프라임워크 (Collection Framework)컬렉션 프레임워크는 데이터를 다룰 때 사용되는 주요 자료구조를 말한다.기존의 List, Map, Set 등의 자료구조를 뜻하며 클래스와 인터페이스를 묶어 놓은 개념이다. ▼ 컬렉션 프라임워크 인터페이스 List와 Set 인터페이스는 모두 컬렉션 인터페이스를 상속받지만, Map 인터페이스는 별도로 정의된다. 인터페이스설명특징대표 구현클래스 List순서가 있는 데이터의 집합데이터 중복 허용 OArrayList, LinkedListSet순서를 유지하지 않는 데이터의 집합데이터 중복을 허용 XHashSet, LinkedHashSetMap키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합순서 유지 X, 키 중복 X, 값 중복 OHashMap, L..

  • 자바 API 문서자바에서 제공하는 API는 프로그램 개발에 자주 사용되는 클래스 및 인터페이스의 모음을 말하며,라이브러리라고도 부른다.검색 사이트에서 'java api doc'를 검색하거나,https://docs.oracle.com/en/java/javase/버전/index.html을 입력하여 해당 사이트에 접속한 후 문서를 확인한다. * '버전'에는 원하는 자바의 버전을 기재한다.  java.lang 패키지 자바 프로그램의 기본적인 클래스를 담고 있는 패키지이다.예를 들어  Scanner를 사용하려고 한다면 스캐너를 import 해줘야 사용할 수 있다.하지만 System, String 과 같은 클래스는 따로 선언 없이 사용이 가능했는데, 그 이유는 기본적으로 제공해 주는 java.lang 패키지에 속해..

  • 예외 처리 에러(error)와 예외(exception)자바 프로그램을 실행하다 보면 갑자기 프로그램이 종료되거나, 어떤 원인에 의해 잘못 동작하여 오류 메시지가 나타나는 등 오류가 발생한다.전자는 우리가 해결할 수 없는 시스템에 에러가 발생해 프로그램이 종료된 경우,후자는 프로그램 사용 중 발생한 오류를 개발자가 처리해 메시지가 출력된 경우이다. 자바는 에러 또는 예외가 발생한 경우, 해당 사항을 클래스로 관리한다.  에러(error)에러는 시스템에 비정상적인 상황이 생겼을 때 발생한다.외부 요인일 수도 있고, 구동 중 발생하는 오류일 수도 있다.이러한 에러들은 개발자가 예측하거나 처리할 수 없는 영역이다. 에러의 종류에러의 종류상황OutOfMemoryError프로그램 실행 중 메모리 부족IOError입..

  • 스레드란실질적으로 일을 수행하는 주체. 작업관리자를 열어서 확인해 보면 두 가지를 확인할 수 있는데,앱 : 사용자가 실행시킨 SW백그라운드 프로세스 : 컴퓨터가 동작을 하기 위해 원래 수행 중인 SW 위의 앱에 메모리를 얹게 되면 프로세스가 된다.프로세스 == 작업 == 실행중인 프로그램 == 메모리를 할당받은 프로그램  사용자가 설치한 것은 프로그램프로그램을 더블클릭해서 실행시키면 (메모리, CPU, 자원을 할당하면) 프로세스프로세스에서 실질적으로 일을 수행하는 주체 == 스레드 ★병렬적으로, 개별적으로, 비동기적으로 일을 수행한다.          ex) 이클립스, 카카오톡, 메모장 순서로 프로그램을 실행하면                     --> 메모장 - 카카오톡 - 이클립스 순으로 프로그램이..

    JAVA/java

    [JAVA] thread NEW

    2024.07.26
    댓글
  • 예외처리프로그램을 이용하다가 예외가 발생하게 되면, 프로그램이 그 즉시 종료(비정상 종료)되기 때문에예외를 개발자가 미리 처리해야 한다. 예외처리를 하는 이유는?프로그램이 비정상적으로 종료되는 것을 예방하기 위해서. 예외처리 하는 방식은?예외처리가 발생할 수 있는 부분을 try문으로 감싸주고,그 아래에 바로 catch문으로 예외가 발생했을 경우 수행할 코드를 작성해 준다.  예시.public static void main(String[] args){ int[] datas=new int[3]; try{ System.out.println("로그 01"); // 예외가 발생할 확률이 존재하는 코드를 작성 System.out.println(datas[0]); /..