[국비지원과정19] JVM 구조
·
TIL
그동안 너무 바빠서 한동안 못 올렸던 국비지원과정 교육 내용을 다시 기록하려고 한다... 나태한 내 자신 스스로 채찍질 해야해..ㅠㅠ 우선 JVM의 구조를 간단히 보자. 그림은 좀 깔끔하지 못하지만 최선을 다했다. 🟰메서드 영역(Method area) ☀️ 프로그램 실행 중에 어떤 클래스가 호출되면, JVM은 해당 클래스의 컴파일 된 클래스파일(.class)을 읽어서 분석하여 해당 클래스에 대한 정보를 이곳에 저장한다. 이 때 해당 클래스의 클래스변수도 이 영역에 함께 생성된다. ☀️만약 클래스 메서드와 인스턴스 메서드가 있다면 먼저 호출되는 것은 클래스 메서드이다. ☀️왜냐하면 인스턴스 메서드보다 메서드 영역의 클래스 메서드가 먼저 호출되기 떄문이다. 🟰힙(Heap) ☀️인스턴스가 생성되는 공간. 프로..
120875. 평행 (자바) 문제에 함정이 있습니다 꼭 읽어보세요!
·
문제 풀이/Programmers
☀️12번 케이스부터 막히시는 분들 4개의 점을 각각 a,b,c,d라고 했을 때, 12번 케이스부터 틀리신 분들은 아마 아래와 같은 6가지 경우의 수를 생각하셨을 겁니다. a-b, a-c, a-d, b-c, b-d, c-d 그런데 문제에 적혀있는 '주어진 네 개의 점을 두 개씩 이었을 때'를 다시 잘 곱씹어보면서 혹시 아래와 같은 3가지 경우의 수 만을 의미하는게 아닌가 하고 코드를 처음부터 다시 짜보았고 통과했습니다. [a-b, c-d],[a-c, b-d],[a-d, b-c] 4개의 점들로 임의의 두 쌍을 만들었을 때 그 두 쌍이 이루는 직선이 서로 평행한지를 묻고 있습니다. 제한사항을 보시면 서로 다른 두개 이상의 점이 겹치는 경우는 없다고 나와 있습니다. 이 부분이 힌트입니다. ☀️2번 케이스가 막..
JSP EL태그 종류(예시 있음)
·
JSP
🟰EL Tag ☀️ attribute에 접근하여 값을 출력한다 ☀️다운캐스팅 없이 메서드를 호출할 수 있다. ☀️술연산, 비교연산, 논리연산이 가능하다 ☀️empty, not empty 등을 통해 null체크 수행도 가능하다. ☀️대상이 없으면 아무 값도 출력하지 않는다.(null은 출력안함) ☀️\${param.name} 형식으로 파라미터 값을 출력할 수 있다. ☀️내장 객체 pageContext에 접근이 가능하다. ☀️map은 [''], '.'을 이용한 접근이 가능하다(영어한정) , 한글은 ['']만 가능하다. ☀️param은 파라미터를 가져오는 객체이다. ☀️Attribute대상이 아닌 넘어온 파라미터를 대상으로 한다. 찾으시는 내용은 Ctrl+F로 더 쉽게 찾을 수 있습니다. 연산자 예시 결과 +..
JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)
·
JSP
🟰JSP 액션태그 ☀️자바를 모르는 사람도 간편하게 사용할 수 있도록 만든 태그 🟰JavaBean ☀️지정한 id로 변수를 만들고 ☀️지정한 class의 기본 생성자를 호출하여 빈 객체를 생성한다. ☀️useBean으로 생성된 객체는 지정한 scope의 attribute로 자동 추가된다. ☀️scope를 지정하지 않으면 기본값은 pageContext이다. 🟰JavaBean을 만들기 위한 세가지 필수 조건 ☀️Private 멤버 필드 ☀️public getter/ setter ☀️기본 생성자(오버로드한 생성자를 만들지 않은경우 기본 생성자를 생성하지 않아도 자동으로 생성된다.) ⏬예시 코드 //데이터 필드 public class Member { private String name; private int a..
JSP - Foward
·
JSP
redirect를 아직 안보고 오신분은 먼저 redirect를 읽고 와서 이 글을 읽어주길 바란다. 둘의 차이를 알아야 적절하게 사용할 수 있기 때문이다. https://sunro1994.tistory.com/139 🟰Foward ☀️서버에서 임의로 응답할 처리할 페이지를 변경하는 기술 ☀️클라이언트는 1회만 요청하면 서버에서 다른페이지에 요청과 응답을 넘겨준다. ☀️리다이렉트는 요청을 2회하지만 리다이렉트는 1회!이다. ☀️요청과 응답을 넘겨받은 페이지에서는 기존 request를 그대로 사용할 수 있다. ☀️클라이언트가 주소를 변경하는 것이 아니라서 주소창이 바뀌지 않는다. ☀️서버가 보유한 자원(root아래 자원)으로 포워딩하기 때문에, 다른 서버(naver, daum, google등)으로 이동이 불..
JSP - Redirect
·
JSP
🟰Redirect ☀️ 클라이언트에게 새로 요청할 주소를 지정해준다. ☀️ 클라이언트가 스스로 요청하기 때문에 현재 서버가 아니라도 다른 위치로 이동할 수 있다. ☀️ 새로운 요청이 만들어 지기 때문에 request에 담겨있는 parameter, attribute는 사용할 수 없다. 만약 위 내용이 이해되지 않는다면 이 글을 보고 오기 바란다. https://sunro1994.tistory.com/136 ☀️redirect를 할 때에는 응답코드 300번대가 발생한다. ☀️서버에서 새로 요청할 주소를 알려줘서 클라이언트가 다시 요청하는 방식이다. ☀️redirect하는 소스에는 소스코드(body)가 없다. ☀️대신 전달받은 주소로 다시 요청하는 것이기 때문이다. ⏬예시코드 redirect에 대한 추가 설명..