분류 전체보기
[게시판 만들기] 1-1. JSP - Oracle 을 이용한 Model1 입니다.
웹 개발을 시작하면서 가장 기본적은 JSP - Oracle 게시판을 만들 예정입니다. 이전 공부 내용을 토대로 정리하여 구성하려는 목적입니다. 개발툴 : Eclipse 2019-12 https://www.eclipse.org/downloads/packages/release/2019-12/r Java : Jdk1.8.0_241 https://www.oracle.com/java/technologies/javase-downloads.html Database : ORACLE 11G ORCL https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#11g DatabaseTool : SQLDeveloper https://..
6. Oracle GroupBy, Having 절
GROUP BY 절 GROUP BY를 통하여 원하는 필드로 묶어줍니다. SELECT DISTINCT DEPARTMENT_ID FROM EMPLOYEES; SELECT DEPARTMENT_ID FROM EMPLOYEES GROUP BY DEPARTMENT_ID; 부서별 급여 합계 SELECT DEPARTMENT_ID, SUM(SALARY) FROM EMPLOYEES GROUP BY DEPARTMENT_ID; SELECT DISTINCT DEPARTMENT_ID, SUM(SALARY) FROM EMPLOYEES; -- 그룹으로 묶이지 않아 출력이 되지 않습니다. 부서별 사원수와 평균 급여 SELECT DEPARTMENT_ID, SUM(SALARY), COUNT(SALARY), AVG(SALARY) FROM ..
5. Oracle 날짜 함수
SYSDATE() 현재 날짜를 출력할 수 있습니다. SELECT SYSDATE FROM DUAL; MONTHS_BETWEEN(A,B) A와 B사이의 개월 수를 출력할 수 있습니다. SELECT FIRST_NAME,LAST_NAME,MONTHS_BETWEEN(SYSDATE,HIRE_dATE) FROM EMPLOYEES WHERE DEPARTMENT_ID = 50; -- DEPARTMENT_ID 가 50인 인원의 현재 시간부터 고용일까지의 개월 수를 출력 할 수 있습니다. ADD_MONTHS() 개월 수를 더 해줄 수 있습니다. SELECT ADD_MONTHS(SYSDATE,7)FROM DUAL; NEXT_DAY() 다가올 요일에 대해 일자를 출력합니다. SELECT NEXT_DAY(SYSDATE,'일요일'..
4. Oracle 문자열 함수
CONCAT(A,B) 문자열 A,B를 연결 ||도 사용 가능 합니다. SELECT CONCAT('HELLO','SQL'),CONCAT('GOOD','BYE')FROM DUAL; SELECT CONCAT('HELLO','SQL'), 'GOOD'||'BYE' FROM DUAL; INITCAP(A) 문자열 A의 첫글자를 대문자로 변환 합니다. 구분자가 들어가게 되면 첫글자로 인식합니다. SELECT INITCAP('hello world')FROM DUAL; SELECT INITCAP('hello/bye world')FROM DUAL; LOWER(A) 문자열 A를 소문자로 출력합니다. SELECT LOWER('HELLOWWORLD') FROM DUAL; UPPER(A) 문자열 A를 대문자로 출력합니다. SELE..
3. Oracle 집계함수, 숫자함수
SUM() 괄호 안의 필드의 합계를 출력합니다. SELECT SUM(SALARY) FROM EMPLOYEES; COUNT() 괄호 안의 필드의 갯수를 출력합니다. SELECT COUNT(SALARY) FROM EMPLOYEES; AVG() 괄호 안의 필드의 평균를 출력합니다. SELECT AVG(SALARY) FROM EMPLOYEES; MAX() 괄호 안의 필드 중 최대값을 출력합니다. SELECT MAX(sALARY) FROM EMPLOYEES; MIN() 괄호 안의 필드 중 최소값을 출력합니다. SELECT MIN(HIRE_DATE) FROM EMPLOYEES; Oracle 에서는 Select 구문 처리 시 반드시 테이블명칭을 기재해야되며 없을경우 Dual(Dummy Table을 선언합니다.) AB..
2. Oracle Select
SELECT 구문 "*" 는 모든 필드를 출력할 수 있습니다. SELECT * FROM TAB; -- 해당 스키마에 있는 테이블과 View 목록이 출력됩니다. SELECT * FROM EMPLOYEES; -- EMPLOYEES 테이블의 모든 정보를 출력합니다. DESC DESC EMPLOYEES; -- EMPLOYEES 테이블의 속성을 출력합니다. 오름차순 SELECT EMPLOYEE_ID, LAST_NAME FROM EMPLOYEES ORDER BY EMPLOYEE_ID ASC; 내림차순 SELECT EMPLOYEE_ID, LAST_NAME FROM EMPLOYEES ORDER BY EMPLOYEE_ID DESC; AS 별칭을 이용해 출력시 원하는 필드명으로 변경 할 수 있습니다. SELECT EMPL..
11. JSP 한글처리
문자를 표현하기 위해서 문자집합을 정의해야합니다. 컴퓨터가 인식하도록 Byte형태로 표현한 것이 인코딩 입니다. 다양한 인코딩 중 Eclipse를 설치하면 기본으로 MS949(한글 MS 기본인코딩) 세팅 되어 있습니다. EUC-KR 인코딩은 한글과 영어만 사용하는 페이지에서 적합 UTF-8 인코딩은 다양한 언어로 작성되는 환경이나, 웹과 같은 다양한 국가의 사람들이 보는 경우에는 더 좋은 방식입니다. GET 방식 GET 방식은 전달하는 데이터가 URL에 기재되며 한글로 표기되지 않습니다. Tomcat Servers > Server.xml 에서 URIEncoding="UTF-8"을 선언해줍니다. POST 방식 JSP -> Servlet 으로 데이터가 전달 될 때, 아래와 같이 Servlet에 UTF-8을 ..
10. JSP EL & JSTL
EL(Expression language)란? EL은 JSP 2.0 스펙에 추가된 개념입니다. View 를 담당하는 JSP 에서 자바코드를 더 이상 사용하지 않고 좀더 간편하게 출력하기 위해 만들어 졌습니다. Tomcat 이 실행되면 자동으로 형변환되어 자바코드로 인식합니다. EL의 사용방법 Parameter 출력 : ${param.이름} 기본형(int, double, String) 출력 : ${이름} 객체 출력 : ${이름명.멤버변수명} 배열 출력 : ${이름객체[인덱스] } ArrayList출력 : ${이름[인덱스] } 연산자 의미 A == B 또는 A eq B A 와 B 는 같습니다. A != B 또는 A ne B A 와 B 는 다릅니다. A < B 또는 A lt B A 는 B 보다 작습니다. A ..
9. JSP DTO , DAO
DTO(Data Transfer Object) Data Transfer Object의 약자로, 계층간 데이터 교환을 위한 자바빈즈를 의미합니다. 이 객체는 데이터베이스 레코드의 데이를 맵핑하기 위해 만들어졌으며, 접근을 위한 Getter, Setter를 가지고 있습니다. package lesson10_JSP_DaoDto.dto; public class CountryDTO { private String COUNTRY_ID; private String COUNTRY_NAME; private String REGION_ID; public CountryDTO() { // TODO Auto-generated constructor stub } public CountryDTO(String cOUNTRY_ID, Stri..
8. JSP ConnectionPool
ConnectionPool이란? 데이터베이스에 계속적으로 연결 되었다 끊김을 반복할 시 , 리소스를 많이 사용하여 성능이 저하 됩니다. 이를 해결하기 위해 ConnectionPool이라는 개념이 도입되었습니다. 1. ConnectionPool을 위해서 처음 서버가 구동 될 시, WAS(Tomcat) 서버에 DB 정보를 등록해야 합니다. Eclipse 내의 Context.xml 에 Resource 를 등록합니다. 경로 : {Tomcat Directory}\conf\context.xml WEB-INF/web.xml ${catalina.base}/conf/web.xml /> 2. 기존에는 데이터베이스 정보를 사용할때마다 넣어 주었지만, Tomcat 구동시, 정보가 들어 있기 때문에, context.lookup..