-- 현재 날짜를 문자형으로 변환하여 출력하는 쿼리문
select sysdate, to_char(sysdate,'YYYY-MM-DD') from dual;
-- 사원들의 입사일을 출력하되, 요일까지 함께 출력하는 쿼리문
select hiredate, to_char(hiredate,'YYYY-MM-DD Day') from emp;
-- YYYY-MM-DD에서 -대신 다른거 넣어도 잘 나옴~
-- 현재 날짜와 시간을 출력하는 쿼리문(근데 출력 되는 시간이 미국시간인)
select sysdate, to_char(sysdate,'YYYY-MM-DD HH:MI:SS') from dual;
-- 담당업무(JOB) 컬럼을 추가
alter table emp add JOB varchar(9);
-- 각 지역별 통화 기호를 앞에 붙이고 천 단위마다 콤마를 붙여서 출력하는 쿼리문
select ename,sal,to_char(sal,'L999,999') from emp;
-- L은 로케이션.
-- 1981년 2월 20일에 입사한 사원을 검색하는 쿼리문
select * from emp where hiredate=to_date(19810220,'YYYYMMDD');
-- 올해 며칠이 지났는지 현재 날짜에서 2016/01/01을 뺀 결과를 출력하는 쿼리문
select sysdate-to_date(20160101, 'YYYYMMDD') from dual;
SELECT SYSDATE - TO_DATE('2016/01/01', 'YYYY/MM/DD') FROM DUAL;
-- NVL = null value -> null을 0으로 바꾸는애래
-- 연봉 계산을 하는 쿼리문
select cname, sal, comm, job from emp;
select ename, sal, comm, job, (sal*12 + nvl(comm,0)) as 연봉 from emp;
-- 사원의 부서 번호를 이름으로 설정하는 쿼리문
select deptno from emp;
select deptno, decode(deptno,10,'리서치',
20,'연구팀',
'디폴트') as 부서이름 from emp;
scope란?
웹 서버에서 객체 또는 변수가 생성된 후 유효한 범위
Page : 페이지 내에서 지역변수처럼 사용
Request : http요청을 WAS가 받아서 웹 브라우저에게 응답할 때까지 변수가 유지되는 경우 사용
Session : 웹 브라우저 별로 변수가 관리되는 경우 사용
Application : 웹 어플리케이션이 시작되고 종료될 때까지 변수가 유지되는 경우 사용

emp.jsp Dao Dto 객체를 생성해서, el, jstl을 활용하되 empdto 객체를 session 영역에 저장한후, 해당 emp list를 뿌리시오.
<%@page import="java.util.List"%>
<%@page import="edu.global.ex.dao.EmpDao"%>
<%@page import="edu.global.ex.dto.EmpDto"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ 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>
<%
EmpDao empDao = new EmpDao();
List<EmpDto> emps = empDao.empList();
session.setAttribute("emps", emps);
%>
<c:forEach var="emp" items="${emps}">
사번 : ${emp.empno} 이름 : ${emp.ename} 직종 : ${emp.job}<br>
</c:forEach>
</body>
</html>
JSP Standard Tag Library의 약자로 JSP 표준 라이브러리이다.
: JSP에서 자주 사용하는 기능(반복문과 조건문, 데이터 표현 등)을 미리 구현해 놓은 커스텀 태그 라이브러리 모음.
: JSTL은 EL을 사용하여 표현한다.
JSTL forEach : JSTL for loop (반복문)
items : 대상 배열 또는 컬렉션
var : 요소를 저장할 변수
varStatus : index와 count 속성이 있다. (index는 0부터, count는 1부터 시작)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" session="false"%>
<!-- JSTL 선언부 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>forEach(JSTL for loop)</title>
</head>
<body>
<%
String friends[] ={"밀크", "두유", "방울"};
request.setAttribute("fa", friends);
%>
<%--
JSTL forEach : JSTL for loop (반복문)
items : 대상 배열 또는 컬렉션
var : 요소를 저장할 변수
varStatus :
--%>
<c:forEach items="${requestScope.fa}" var="fname" varStatus="order">
count: ${order.count}
index: ${order.index}
${fname} <br>
</c:forEach>
</body>
</html>