[8/1] JSP
JSP,Spring
cafe.naver.com/learntimes
운영체제, 자료구조, 네트워크, 데이터베이스, 알고리즘(코딩테스트)
운영체제, 자료구조 먼저 공부할 것
알고리즘 (코딩테스트) 그냥 풀기 - 프로그래머스
하드웨어 vs 소프트웨어 vs 펌웨어
1) 하드웨어 (HW) : 물리적인 기계
2) 소프트웨어 (S/W) : 하드웨어 상에서 돌아가는 프로그램
-운영체제(OS) : 하드웨어와 소프트웨어의 다리 역할 ex) Windows, Linux, Unix, Solaris
-실제 실무에서 서버들은 대부분 리눅스라서(무료) 리눅스를 잘 익혀야함.
-응용프로그램 (Application Program) : 구체적인 작업을 할 수 있도록 해주는 프로그램 ex) Excel, PowerPoint, 한글, 계산기, 포토샵 등
3) 펌웨어 (Firmware) : H/W + S/W
기억장치
1) 종류
- 주기억장치 ex) RAM
- 보조기억장치 ex) HDD, CD-R/W, FDD, SDD (Solid State Drive)
2) 전제
- 모든 프로그램은 주기억장치에서만 실행됨
기본 용어
적재(로드;load) : 보조기억장치 -> 주기억장치프로그램 : 하드디스크에 들어 있는 상태프로세스 : 주기억장치에 로드된 상태의 프로그램(실행되고 있는 프로그램)
JSP
Java의 확장판. 서블릿을 추가한 것 (JAVA + Servlet) JSP + HTML(JS)
하지만 안쓰는게 최신 트렌드..?
openjdk (무료) -> 오라클 java는 유료라서 이거씀
게임에 대해 주고 받는 관계?
* 서버 : 정보, 서비스를 주는 컴퓨터 * 클라이언트 : 정보, 서비스 받는 컴퓨터 * 통신프로토콜 : http 통신규약
- 어떻게 접속?
- 어떤 형태로 처리?
- 어떤 속도로 처리?
* TCP / IP 프로토콜
애플리케이션 층 <-> 애플리케이션 층 (가상의 데이터 송수신)트랜스포트층(TCP / UDP) 트랜스포트층(TCP / UDP)
네트워크 층(IP 인터넷층) <-> 네트워크 층(IP 인터넷층) (실질적인 데이터 송수신)데이터 링크 층 데이터 링크 층
애플리케이션 층 : 실제로 사용되는 인터넷 응용프로그램 트랜스포트 층 : 데이터 전송 시 에러 검증, 수정 네트워크 층 : 패킷 단위로 데이터를 정확한 위치로 전달 데이터 링크 층 : 랜카드 제어 및 데이터 통신을 위한 H/W 제어
* IP 주소 : 인터넷에서 컴퓨터(host)를 구분하는 고유한 번호 (전화번호)
window + R -> cmd> ping -t 127.0.0.1
127.0.0.1 => localhost (나 자신)
* 포트번호 (port) : 인터넷 상에서 사용되는 응용프로그램을 구분하기 위한 번호 (1024 이하의 번호는 사용x)
기억해야할 포트번호tomcat 8080 oracle 8080mySql 3306
content directory : 내용이 있는 폴더
Eclipse JSP 파일 설치
C: JS 파일 -> 복붙 후 JSP 파일로 이름 변경Switch workspace -> 경로 바꿔주기 (D:\workspace_Jsp 폴더 만들어줌)
apache tomcat 재설치 C: Apache~ => tomcat9w.exetomcat start -> stop 해주기(톰캣이 C: 에서 작동하고 있으면 이클립스에서는 작동이 안됨)
Window => Preference 에서 변경 내용 적용...기억이 안남 UTF-8 적용,Java 에서 11버전 확인 텍스트, 등등
Dynamic web project 생성
HTML 파일, JSP 파일 각 각 만들어보기
1) Naver (IP)
네이버 도메인 주소 - 도메인 주소는 하나밖에 없음
왜 도메인 주소를 쓸까? => IP 주소는 기억하기 어려워서, 문자 형태로 기억하기 쉽게 만들어놓은 주소
2) DMS (Domain naming server)
N 서버 (웹서버)
추가적인 동작이 필요할 때 쓰는 서버
웹 페이지 구성 : 정적 데이터, 동적 데이터
정적 데이터 : 로고와 같은 데이터 (HTML, CSS, JS, IMG)
=> WEB 서버
동적 데이터 : 날씨, 주식같은 데이터베이스에 들어가 있는 정보들 (상시 변하는 값)
=> WAS(Web application Server) ex) Tomcat, 하지만 웹서버 역할도 할 수 있음.
웹 브라우저 -> F12 누르면 HTML 볼수있음.
클라이언트
크롬 => 1. www.naver.com 요청 2. DNS 서버 (도메인 < - > IP 주소) 3. WEB 서버 (정적 데이터 처리)
<= 4. 응답 정보를 HTML 로 구성해서 전달5. www.naver.com 페이지로 구성된 것을 사용자가 확인 할 수 있다.
WEB 서버 기준으로 좌측 - 동적 데이터 / 우측 - 정적 데이터
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1> JSP 파일 </h1>
<!-- HTML + JAVA 코드 -->
<script type="text/javascript">
//java script 주석 문
</script>
<%
// 스크립틀릿 - java 코드 작성
// 한줄 짜리 주석
/*
여러줄 짜리 주석 (이전의 코드를 남겨놓을 때? 내 코드에 대한 설명을 쓸 때 )
1.
2.
3.~
*/
// Ctrl + alt + 방향키 아래 => 코드 라인 복사
// Ctrl + d = 코드 라인 삭제
// 드래그 + Ctrl + Shift + C => 코드라인 주석 설정 / 해제
System.out.println("1");
System.out.println("2");
System.out.println("3");
System.out.println("4");
System.out.println("5");
%>
</body>
</html>
실행시켰더니, JAVA 코드가 보이지 않음
< >
D:\workspace_jsp\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\JSP\org\apache\jsp\jsp1