


workspace가 바뀐다는것
-> eclipse에서 설정해 놓은 환경들이
모두 초기화된다는 것
(setting해놓은 환경설정이 싹다 바뀌는것)
(글꼴, 테마, 인코딩 전부 다시해야함)




-> JAVASCRIPT는 안해도 됨


-> 이미 UTF 8 되어있음

-> D2CODING이나 나눔고딕
-> 글자크기는 알아서


<들여쓰기 설정>












html 템플릿 가져다 쓸거임 -> 메뉴에서 없음녀


-> 사용할 웹 어플리케이션 서버 (WAS:와스)
라고 부름





-> installer로 가지고 가기


-> 열어서 바로 보여야 함
JAVA HOME이랑 같은자리로

자바설치 -> 자바 홈 만들기
오라클 설치 -> 오라클 홈 만들기
톰켓 홈 -> 카탈리나 홈

-> 내 pc 우클릭 -> 속성
(고급시스템 설정으로 가기)





(공백 안들어가게 조심해야함)
처음에는 목록이었고 언제 바뀔지 모르는것 : ms에서도 모름
톰켓은 설치버전도 있으나 그냥 압축받아서 위치지 지정시 환경변수 세팅함
톰켓이 어디에 있는지 이클립스에서 등록해줘야함

-> server(web application server : was와스)




-> 톰켓 등록방법


-> 톰켓 direcotry 설정인데 아까 해서 안나옴
-> 그냥 finish



-> log가 찍힘

-> 최종적으로 시작되었습니다 나오면 됨


-> 시작, 종료 방법 수동으로 처리됨




환경설정된 파일이 copy되어서 넘어감


-> 해당 설정 중 필요한것은 서버에 와서 수정함
(본진은 x)

xml 참여시켜서 사용
-> spring가면 많이 사용
(각종 설정들 담고있는 파일들)
-> 오른쪽 outline ,tastlist 지우기

project 제일 먼저
-> 밑에 packgage
-> directory
(다른 파일들 추가해서 사용하기)

-> static 코드 필요했으면 vscode에서 했으면 됨

-> Dynamic web Project선택시 여기있는걸 다 쓸 수 있음


-> javastudy에서는 java project를 저장하고
-> src 밑에 main 밑에 java를 저장해라


-> 이프로젝트 실행시
: http://localhost/01_servlet/*

-> 번호만 빼고 servlet으로 바꾸기

-> 1번 프로젝트에서 실행되는 모든 실행결과는 주소에 localhost servlet이 들어감







servlet ajva파일 시작


-> servlet생성 ~ 소멸과정을 약속된 메소들을 보는것

servlet은 기본적으로 java파일이라 class임



크롬으로 이주소를 입력하면 지금 serlvet이 보여짐
->반대) 이 servlet을 실행을 하면 크롬창을 보여줌
: 바꾸고 싶으면 바꾸고 되고 ,추가하고싶으면 추가하면됨
-> 안바꾸면 servlet이 url mapping값으로 들어감
-> 8080포트번호는 생략
contextRoot어디서 바꿀 수 있는지 보기!

-> 이런거 정하는것이 개발자임
-> 이주소로 접속하면 이 자바파일이 열린다
-> HelloServlet을 열면 이 servlet이 열린다


HTML에서 JAVAscript에서 이동하려고 요청하는 행위(a태그,
a태그 -> 자바스크립트하고 기능이 같았음(
location 객체의 hyperreference속성) 동일함
-> 어제까지 ) 비동기 요청(async)
submit요청이든 a태그이든
-> 모든걸 받아내는것 servlet임

servlet container (servlet보관소)에 저장된다.

-> hello servlet이 container에 저장됨
-> 이전까지는 같은 이름의class 2개 만들 수 있었음(package만 바꾸면 (ex) person ))
-> 하지만,servlet은 안됌






WEB-INF(information) 폴더임
-> 저기서 수정하는건 쓸게많음
★★★외우기!!!!




---> 각종 메소들들이 만들어짐





-> servlet실행시 ) html이 답으로 나옴
★★★ 계속 수업시간에 쓸 예정
HtppServletRequest




-> 있으면 자동으로 호출안됨









-> 나중에 코드 정신없이 살펴보면서 수정해야 하니까
여기서 한군데로 모아두면 더 좋은 구성임


-> 이 sublet의 doGet 메소드가 열림




테스트해보고 지울 파일

servlet 실행은 tomcat이 함

-> 우클릭 : start

vscode로 실행하면 live창이 뜸
-> 주소 바꾸기

본진이 따로 있고 복사한 것이 따로 있음
-> 복사한것이 eclipse환경이라 안됨
(애플리케이션 베포시 : 본진 방법 배움)


destory 지우기



view port는 반응형 작업할때 집어넣는것



-> 자동으로 담겨있음






dopost다음에 doget호출되면 문제 x






-> 다시 바꿔두기



하나는 xml 하나는 java 2군데서 할 수 있는일이 상당히 많아짐



contorller : 서블릿으로 만들어짐
수많은 요청, 주소를 처리해야 해서 하나의 url 패턴만 쓸 수는 없음
-> 여러개 써야함

-> ignore해야함(너무많이 올라감)
1.ignore먼저




-> 나중에 spring할때는 maven도 추가



ctrl + f : zip
-> zip 파일 안올라가게 되어있음
(우리는 굳이 풀 필요 x)


jspstudy 파일만들기
원격지 remote하기


-> 리눅스 : 붙여넣기(그냥 우클릭)


client측에서 server로 보내는법
















-> api 요청시 : 자바수업에서도 했음


-> HTML실행하기

★★★ 보내고 받는것 (기본)
-> a태그 수정해서 이름과 나이 둘다 보내보기

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
String name = request.getParameter("name");
String age = request.getParameter("age");
System.out.println(name);
System.out.println(age);





post방식을 a링크로 요청할 수 없음






-> 한번깨진 인코딩은 돌릴 수 없음
-> 프레임워크는 내장되어있어서 안해도 됨












Optional 클래스 - java 클래스

-> 만약에 없으면) 대신 쓸 값을 지정할 수 있음
(null값의 처리가 가능함)















this : event대상



-> 태그에 명시되어있는 태그 : attribute
-> 눈에 보이지 않은 hidden값임
버튼의 부모의 데이터 속성값을 보내면 됨
-> 

-> data속성 써주면 됨



-> name속성이 요청 parameter의 이름으로 등록
-> name속성이 없으면 안보낸 것이 됨








-> integer.parseInt 여기서 optional로 처리안되서 발생함





-> 아직 우리나라 java 11으로 setting 안되어서 isEmpty로 쓰기


애초에 빈문자열 또는 정수가 아닌 입력
(여전히 나이에다가 18세같이 한글을 섞거나 36.5세 소수점 넣으면 -> 여전히 뻗어버림)
--> 대비책을 만들고자하면 ) 자바에는 없음
--> 자바스크립트에서 막기
-> front단에서 완전히 막기








-> 정규식 잘 활용하면 좋음 but 어려움
(googling 많이하기)
-> 3장 : 정규식 : js 쪽에서 정리해보고 찾아보기
exception 발생안되게 ->
<뉴렉처 강의>

