--1981년 2월 20일 ~ 1981년 5월 1일에 입사한 사원의 이름,직업 및 입사일을 기준으로 오름차순으로 정렬하라.
--급여가 1500이상 ~ 2850이하의 범위에 속하지 않는 모든 사원의 이름 및 급여를 출력하라.
--사원번호가 7566인 사원의 이름 및 부서번호를 표시하는 출력하라.
--급여가 2850 이상인 사원의 이름 및 급여를 표시하는 출력하라.
--EMP테이블에서 직업을 출력하되, 각 항목(ROW)가 중복되지 않게 출력하라.
--JOB 중복제거
SELECT DISTINCT JOB FROM EMP;
--급여가 2850이상인 사원의 이름 및 급여
SELECT ENAME, SAL FROM EMP WHERE SAL >= 2850;
--사원번호가 7566인 사원의 이름 및 부서번호
SELECT ENAME, DEPTNO FROM EMP WHERE EMPNO = 7566;
--급여가 1500DLTKD 2850이하의 범위에 속하지 않는 모든 사원이ㅢ 이름 및 급여
SELECT ENAME, SAL FROM EMP WHERE SAL NOT BETWEEN 1500 AND 2850;
--1981년 2월 20일 ~ 1981년 5월 1일에 입사한 사원의 이름,직업 및 입사일을 기준으로 오름차순
SELECT ENAME, JOB, HIREDATE FROM EMP WHERE HIREDATE
BETWEEN '1981/02/20' AND '1981/05/01'ORDER BY HIREDATE;
보류중인 모든 데이터 변경사항을 영구적으로 적용. 현재 트랜잭션 종료
보류중인 모든 데이터 변경사항을 폐기. 현재 트랜잭션 종료, 직전 커밋 직후의 단계로 회귀(되돌아가기)
전체 트랜잭션을 롤백함
[출처][오라클/SQL] COMMIT, ROLLBACK : 커밋(작업 확정), 롤백(작업 취소) - 트랜잭션 제어 명령어|작성자 리제
빌드 도구로 maven을 사용한다고 가정했을 때, Spring Legacy 프로젝트는 다양한 라이브러리를 pom.xml에 추가하고 추가적인 설정또한 xml로 작성해야한다. 예를 들어 DB 연결이 들어간다면, pom.xml에 jdbc 관련 라이브러리르 추가하고 ORM을 mybatis를 쓴다면 함께 추가해야 함.
하지만 Spring Boot는 많은 사람들이 사용하던 설정을 Pre-set으로 구성해서 제공하므로 https://start.spring.io/에서 원하는 의존성 기능들을 추가한 뒤 다운로드 받고 import하면 빠르게 설정 내용을 프로젝트에 적용할 수 있다.
Spring Legacy 프로젝트를 진행하게 되면 WAS를 설치하고, 설정하는 등 초기에 적지 않은 시간을 투자해서 WAS를 구성해야한다.
하지만 Spring Boot에서는 내장 WAS가 있기 때문에 별도의 WAS를 설정하지 않아도 된다.
Spring Legacy 프로젝트를 사용할 때, 우리는 Component Scan, DispatcherServlet, ViewResolver등 여러가지 요소들을 설정해주어야 한다.
하지만 Spring Boot의 경우에는 이러한 부분들이 미리 설정되어 있다. 게다가 필요에 따라 사용자가 직접 설정을 변경할 수도 있다.
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HomeController {
@GetMapping("/")
public String hello() {
return "Hello World";
}
}