본문 바로가기

bootcamp/Java

(24)
1204 스택(stack)/큐(queue)/재귀 스택이란 인터넷 브라우저가 간 순서를 저장하는 것 데이처를 차곡차곡 저장해두고 있다가 가장 먼저 들어간 데이터가 마지막으로 삭제 됨 last in-first out/fist in-last out 후입선출 스택의 구현 배열을 이용해서 숫자를 여러개 저장할 수 있게 변수 생성 배열에 직접 접근해서 숫자를 저장할 수 있으면 안되기 때문에 접근 제어자로 제어 숫자를 어디까지 저장했는지 가리키는 변수 top 생성 생성자 크기를 전달받아서 해당 크기만큼 정수를 저장할 수 있는 배열 생성 top에 -1 저장 스택의 연산 isEmpty 스택에 값이 모두 비어있는지 학인 top이 -1이면 true를 반환, 그렇지 않으면 false를 반환 isFull 스택에 값이 모두 저장되어 있는지 확인 top이 배열의 크기보다 1작으..
1201 보안 보안 네트워크 보안 네트워크 패킷을 이용한 해킹을 보안하는 법 방화벽 설정 시스템 보안 리눅스에 특정 파일이나 설정을 이용한 해킹을 막는법 리눅스 설정 잘 해야 함, 백신 프로그램 설치 소프트웨어 보안 이상한 코드 취약점을 공격하는 해킹을 막는 법 일반적으로 웹에서 가장 많이 발견되는 top 10 공격이 있다 가장 많이 발견되는 보안 문제들 injecction XSS or CSRF 잘못된 접근 통제 로그인 - 인증 Authentication 권한설정 - 인가 Authorization 로그인 후 HTTP 프로토콜 요청 클라이언트 ㅡ> 서버 응답 클라이언트
1129 jdbc/jsp서블릿 JDBC : 자바 코드로 DB에 CRUD 하는거 DB서버,DB 클라이언트 sql 스레드 보안 JSP 서블릿: 자바 코드로 클라이언트 요청을 받아서 웹 페이지를 만들어주는 것 HTTP 요청 프로토콜 -> 자바로 요청 받는거 HTTP 응답 프로토콜 -> 자바로 응답 보내주는거 WAS(톰캣) 프론트엔드 웹서버 : 클라이언트가 요청한 파일을 다운로드 할 수 있는 서비스를 제공하는 프로그램 파일=서버에 저장되어 있는 파일 그대로 백앤드
1129 소켓통신..등등.. 네트워크 상에서 프로세스 간에 양방향 통신을 가능하게 하는 방법 클라이언트와 서버 간에 데이터를 주고 받기 위한 연결점 JDBC : 자바 코드로 DB에 CRUD DB서버,DB 클라이언트 sql 스레드 보안 JSP 서블릿: 자바 코드로 클라이언트 요청을 받아서 웹 페이지를 만들어주는 것 HTTP 요청 프로토콜 -> 자바로 요청 받는거 HTTP 응답 프로토콜 -> 자바로 응답 보내주는거 WAS(톰캣) JSP 및 자바 서블릿을 실행하기 위해 사용 프론트엔드 웹서버 : 클라이언트가 요청한 파일을 다운로드 할 수 있는 서비스를 제공하는 프로그램 파일=서버에 저장되어 있는 파일 그대로 백앤드 실은 뭐 배웠는지 기억이 잘 안남,, 그때 그때 기록을 잘 해두자....
1128 스레드(Thread) 하드 디스크에 저장됨 프로그램 메모리에서 실행된 프로그램: 프로세스 프로세스 1개에는 기본적으로 스레드가 1개 있음 스레드(Thread) 코드를 순차적으로 실행하는 일꾼 1개 이상의 작업을 동시에 할 때는 그 수에 맞는 스레드가 하나씩 늘어남 작업을 동시에 하게 하기 위함 장점 작업 속도가 빨라짐 비동기 작업이 가능(웹에서 이뤄지는 작업이 많기 때문에) 단점 컨텍스트 스위치가 많이 일어나면 오히려 느려질 수도 있음 동기화가 어려워짐 스레드세이프 하지 않을 수 있음 = 두개의 결과(차례로 진행된 상황, 동시에 일어난 상황)가 같지 않을 수 있다 레이스컨디션: 하나의 값을 두 작업이 서로 차지 하려고 함 synchronized을 사용하면 여러 스레드가 동기화하면서 작업을 진행 락을 걸고 푸는 것 = 싱호배제..
1127 다형성과 제네릭 다형성 같은 이름의 메서드나 연산자가 여러 상황에서 다른 방식으로 동작하는 능력 다양한 객체를 동일한 타입으로 다룰 수 있음 생성하는 객체의 클래스 이름과 객체를 저장하는 변수와 타입을 다르게 설정 코드의 유연성과 재사용성 메서드 다형성(Polymorphism by Method) 오버라이딩된 메서드를 통해 구현됨. 부모 클래스의 참조 변수가 자식 클래스의 객체를 가리킬 때, 같은 이름의 메서드 호출 시 실제 객체의 메서드가 실행 동일한 메서드 호출에 대해 다른 객체의 메서드가 실행되는 것을 가리킴 객체 다형성(Polymorphism by Object) 부모 클래스의 참조 변수가 자식 클래스의 객체를 참조할 수 있는 것을 의미. 즉, 여러 객체를 같은 타입으로 다룰 수 있다 객체의 실제 타입은 숨기고, 부..
1124 문자열다루기/final/abstract /인터페이스/List/map 문자열 더하기 `+` 연산자를 통해 문자끼리 더해서 한줄로 출력 가능 혹은 문자와 변수를 연결하여 출력 가능 String str1 = "Hello"; String str2 = "World"; String combined = str1 + " " + str2; // 문자열 연결 System.out.println(combined); // 출력: Hello World replace 바꾸고 싶은 문자열을 replace를 통해 변경 가능 첫 번째 매개변수로 대체하고자 하는 문자열 또는 문자를 받고, 두 번째 매개변수로 대체될 문자열 또는 문자를 받음 String original = "This is a test string"; String replaced = original.replace("is", "XX"); Sy..
1124 Json
1123 메소드/오버로딩/상속/오버라이딩 메소드란? 작업을 수행하기 위한 명령문의 집합 선언부를 만들고 구현부를 만든다 >>>>>>>생략가능
1123 디자인 패턴/접근 제어자 디자인 패턴 싱글톤, 빌더, 팩토리, 추상 팩토리, 프로토 타입 싱글톤 (singletone) 애플리케이션 내에서 특정 클래스의 객체가 하나만 생성되도록 보장하는 디자인 패턴 => single 해당 클래스의 객체가 여러 개 생성되는 것을 방지하고, 전역적으로 접근 가능한 단일 객체를 제공 public class Singleton { // 정적 멤버 변수로 유일한 객체를 저장 private static Singleton instance; // private 생성자로 외부에서의 직접적인 객체화 방지 private Singleton() { } // 객체를 반환하는 정적 메서드 public static Singleton getInstance() { // 객체가 없을 때에만 생성하고, 있을 경우 기존 객체 반환 ..