<중간 시험 리뷰>
•
3번 문제
◦
자바에서의 큰 수 활용법을 몰라서 틀림.
◦
Bigintiger 안 쓰고 long숫자값에 L 만 붙이면 되네..?
•
4번 문제
◦
스트링 형변환 빠른 방법 :String noStr = no + “”;
<JAVA>
모든 메소드에 public 아니면 private 를 붙인다고 생각하면 편하다.
변수의 값이 직접 바뀌는 set 류 메소드들은 멀티스레딩 환경에서 위험하다. 반면 get 함수들은 안전하다.
•
싱글톤 패턴
class singleton{
private static singleton instance;
private singleton() {}
singleton getInstence(){
if(instance == null)
instance = new singleton();
return instance;
}
}
JavaScript
복사
◦
자기자신 객체를 내부에 private 에 가지고, 생성자를 막아놓는다.
◦
별도 정적 메소드로 생성자를 대신한다.
정적 변수의 경우static {unm = 0;} 식으로 따로 초기화
◦
동시에 정해진 개수의 객체만 만들어질 수 있다. 일반적으로 1개.
◦
객체의 개수를 시스템에서 제어할 필요가 있을때 쓰인드. 반드시 하나만 있어야 하는건 아니다!
<서블릿>
•
HelloServlet.java 로부터 변경점 바로 반영하기
◦
파일 - 설정 - 고급설정 - 컴파일러 - 오토메이크
◦
파일 - 설정 - 빌드 - 컴파일러 -자동프로젝트빌드
◦
C:\work\apache-tomcat-10.0.22\conf\context.xml
▪
설정파일 context.xml
<context reloadable =”true”>
일반 프로젝트 vs 웹앱 프로젝트
•
일반프로젝트는
public static void main(String args){}
가 존재한다.
•
웹앱 프로젝트에는 메인 메소드가 없는 이유는?
•
웹사이트를 구현하는데 있어서 톰캣이 우리에게 제공해주는 기능은?
•
웹사이트를 만든다면,
1.
통신
2.
스케줄링
3.
로직
•
통신 스케줄링은 항상 똑같다.
•
로직 부분만 빈칸채우기로 만들면 됨.
•
그렇게 제공되는 부분이 프레임워크(스프링)
•
톰캣도 프레임워크
•
모든 프로그램을 만들때, 인프라 부분을 직접 만들면 엄청난 시간이 소요됨, 그래서 만들어진걸 쓴다.
•
우리는 톰캣을 다룰때 빈칸을 채우는 역할이기 때문에, 규칙을 맞춰 줘야함.
•
정적 vs 동적 웹서버
◦
정적웹서버는 document root을 가진다
▪
웹서버는 root dir 에 있는 내용을 웹에 뿌려주는 것 뿐
▪
있으면 뿌려주고 없으면 404 에러
•
톰캣 vs 스프링
톰캣은 요리도구세트
스프링은 밀키트
•
아파치 웹서버 만으로 게시판을 구현할 수 있을까? 모든 렌더를 서버에서 한다는 가정하에.
◦
가능은 한데, 현실적으로 불가능
서블릿 : 파일 하나
•
정적웹 동적웹
◦
정적웹 : 마크업 그대로 나타냄
▪
편의점에 모든 음식을 미리 가져다 둔다.
◦
동적웹 : DB 프로그래밍 언어 등등을 이어서
▪
요리사와 요리 재료만 가져다두고 유동적으로
▪
CRUD 프로젝트 하는것처럼, 브라우저,아파치, 코드, DB 순서대로 요청과 응답이 나와서 작동함.
•
JSP vs 서블릿
◦
서블릿 : 그냥 자바
◦
JSP : 프로그래밍 세계에서 HTML 을 만듦, 기본 문법이 HTML 기반. 가볍게 쓰기 좋다.