본문 바로가기
반응형

분류 전체보기181

JAVA 면접 예상 질문 리스트 요즘 유행하는 chatgpt를 사용해보고 싶어 chatgpt를 사용해서 자바에서 알아둬야 할 것들을 정리해 보았습니다. Java 언어의 특징은 무엇이며, 이를 어떻게 활용할 수 있나요? 플랫폼에 독립적인 애플리케이션 개발: Java는 JVM에서 실행되므로, 플랫폼에 구애받지 않고 애플리케이션을 개발할 수 있습니다. 객체지향적인 설계: Java는 OOP를 지원하므로, 객체지향적인 설계를 통해 코드의 가독성과 재사용성을 높일 수 있습니다. 안정적인 애플리케이션 개발: Java는 예외 처리를 지원하여, 애플리케이션의 안정성을 높일 수 있습니다. 개발 생산성 향상: 다양한 라이브러리와 프레임워크를 제공하므로, 개발 생산성을 향상할 수 있습니다. Java에서 객체지향 프로그래밍(OOP)이란 무엇이며, OOP의 장.. 2023. 2. 22.
디자인 패턴 (Design patterns) GoF의 디자인 패턴(개정판)객체지향 소프트웨어를 설계할 때 겪는 문제들에 대한 해결책을 집대성하여 제시하는 『GoF의 디자인 패턴』. 이 책은 디자인 패턴이 무엇인지, 패턴이 어떻게 객체지향 프트웨어 설계에 어떻게 도움을 주는지, 실제 디자인 패턴은 어떻게 되는가 등에 관하여 정리한 내용들을 수록하고 있다.저자에릭 감마, 리처드 헬름, 랄프 존슨, 존 블리시디스출판Pearson출판일2011.11.01디자인 패턴은 GoF(4인의 갱)으로도 알려진 Erich Gamma(에리히 감마), Richard Helm(리처드 헬름), Ralph Johnson(랄프 존슨), John Vlissides(존 블리시데스)이 1994년 출판한 "Design Patterns: Elements of Reusable Object-.. 2023. 2. 3.
AWS S3 인스턴스 생성 + Spring boot 연동 버킷 생성 1. 버킷 인스턴스 대시보드에 들어가기 버킷 만들기 클릭 버킷 이름 작성 AWS 리전: 아시아 태평양(서울) 선택 그 외에 모든 설정은 그대로 버킷 생성 S3 권한이 있는 IAM 계정 만들기 & 액세스 키 발급받기 S3 권한이 있는 IAM계정을 발급받아서 진행하는 것이 보안에 좋아요! 지금은 S3 IAM 계정이 있기 때문에 엑세스 키 발급만 진행하도록 하겠습니다. 1. aws 프로필 - 보안 자격 증명 2. 보안 자격증명에 들어가면 아래 액세스 키 만들기 를 통해서 액세스 키를 만들어 주면 됩니다. 비밀번호는 이때밖에 볼 수 없으니 잘 기록해 두거나 csv파일로 잘 저장해 두세요! Spring boot에서 연동하기 1. 의존성 추가 pom.xml에 아래 스타터를 추가해 주세요. (maven을 .. 2023. 1. 1.
AWS EC2 인스턴스 생성하기 01_AWS EC2 인스턴스 EC2 인스턴스 생성 1. EC2 인스턴스 생성을 위해서 EC2 서비스 접속 2. 인스턴스 탭 클릭 3. 오른쪽 상단위에 “인스턴스 시작” 클릭 4. 인스턴스 생성 5. 이름 설정 : 인스턴스의 이름 입력하기 6. 애플리케이션 및 OS 이미지 선택: EC2 인스턴스에 설치할 OS를 선택 7. 인스턴스 유형 선택 (현재 jenkins과 micro 유형사이에 오류가 발생해서 jenkins 사용시 micro 시스템에서 가능한지 확인 후 생성 권장) 8. 키 페어 : SSH 연결과 같은 인스턴스 접속 할때 사용할 키 선택 OR 생성 9. 네트워크 설정: VPC, 서브넷 등 네트워크 설정. 일반 사용자라면 건들지 않고 기본 설정으로 사용해도 된다. 10. 스토리지 구성: 볼륨 설정을 .. 2023. 1. 1.
자바 코딩테스트를 위한 정리 - 입출력2 (EOF 처리) EOF란 End of File의 줄임말로 파일의 끝을 뜻합니다. 알고리즘 테스트에선 일반적으로 테스트 케이스의 수를 따로 명시해주지 않고 입력을 가변적으로 받을때 사용하게 됩니다. 예로 '4375번 문제 (문제 제목: 1)'이 있습니다. 이와 같이 문제에서 테스트케이스의 개수 혹은 끝을 명시해주지 않을때 어떻게 처리해야하는지 알아보도록 하겠습니다. 자바의 대표적인 두가지 입력 클래스인 아래 2가지 기준으로 설명하겠습니다. 1. Scanner 2. BufferedReader 1. Scanner Scanner에서 EOF를 처리하는 방법은 hasNext()메소드를 사용해서 처리하는 방법입니다. 해당 메소드는 다음 입력이 있으면 true 없으면 false를 반환합니다. 이를 사용해서 EOF여부를 확인할 수 있습.. 2022. 12. 21.
자바 코딩테스트를 위한 정리 - 입출력 입력 1. scanner() 가장 기본적인 입력 클래스이다. import java.util.Scanner; 사용하기 위해서는 패키지를 추가해주어야 한다. Scanner scanner = new Scanner(System.in); 스캐너는 토큰 단위로 동작하는 클래스임을 기억하자.(토큰 단위: 공백/개행 문자로 구분되는 단위) Scanner() 메서드 (반환형) - close(): 입력 종료, 할당받았던 자원들 반납하기 띄어쓰기 단위 - next(): String 읽기 (String) - nextInt(): int 읽기 (int) - nextBoolean(): boolean 읽기 (boolean) - nextByte(): byte읽기 (byte) - nextShort(): short 읽기 (short) -.. 2022. 5. 10.
백준 1920: 수 찾기 (파이썬) 문제: https://www.acmicpc.net/problem/1920 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B www.acmicpc.net 코드 #https://teching.tistory.com/ import sys def find(a, list): left = 0 right = len(list) while left a: right = mid elif list[mid] < a: left = mid + 1 e.. 2022. 5. 4.
웹 서버(WEB), 웹 애플리케이션 서버(WAS), 서블릿, 스레드 웹 서버(Web Server) HTTP 기반으로 동작 정적 리소스 제공(템플릿), 기타 부가기능 정적(파일) HTML, CSS, JS, 이미지, 영상 예) NGINX, APACHE 웹 애플리케이션 서버(WAS, Web Application Server) HTTP 기반으로 동작 웹 서버 기능 포함 (정적 리소스 제공 가능) 프로그램 코드를 실행해서 애플리케이션 로직 수행 - 동적 HTML, HTTP API(JSON) - 서블릿, JSP, 스프링 MVC 예) 톰캣(Tomcat), Jetty, Undertow 웹 서버와 웹 애플리케이션 서버의 차이 웹 서버는 정적 리소스(파일), WAS는 애플리케이션 로직 하지만 둘의 용어의 경계가 모호하다. - 웹 서버도 프로그램을 실행하는 기능을 포함하기도 함. - 웹 애.. 2022. 4. 18.
HTTP 알아보기 5 - 캐시, 프록시 캐시 캐시가 없을 때 같은 데이터를 반복해서 보낼 때 HTTP 헤더의 크기가 1MB, 바디의 크기가 10MB라면 총 11MB의 데이터를 반복해서 전송해야 한다. 따라서 사용자는 반복되는 데이터를 불필요하게 계속 받아야 하므로 로딩 속도가 느려지게 된다. 해당 문제를 해결하기 위해서 캐시라는 기술을 적용하게 되었다. 캐시 클라이언트가 최초로 서버에 요청을 할때 데이터를 정상적으로 보내준다. 헤더에 cache=control: max-age=60 (생명 주기, 초 단위)를 포함하여 보낸다. 클라이언트는 두번째 요청부터는 캐시에 해당 데이터가 유효 상태로 있다면 서버에서 받을 필요 없이 바로 캐시 저장소에서 꺼내서 쓸 수 있게 된다. 캐시 시간이 초과되면 최초로 서버에 요청하는 단계를 반복한다. 정리 캐시 가능 시간.. 2022. 4. 15.
반응형