내장 객체
<% response.setStatus(200); %>
선언 안했을 경우
web.xml
<error-page>
<error-code>404</error-code>
<location>/error404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/error500.jsp</location> //location은 변경이 있을 경우 경로를 지정해준다.
</error-page>
error500.jsp
<%@ 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>
500Error.
</body>
</html>
결과
error404.jsp
<%@ 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>
404Error.
</body>
</html>
결과
+ DriveManager : JVM에서 JDBC전체를 관리하는 클래스. Driver등록, Connection연결작업 등.
Driver : DB를 만드는 Vendor(오라클, MySQL등)을 implements하여, 자신들의 DB를 연결할 수 있는 class를 만드는 인터페이스.
Connection : DB와 연결성을 갖는 인터페이스
Statement : SQL문을 실행하는 인터페이스
ResultSet : 조회된 결과 데이터를 갖는 인터페이스
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<!-- sql로 import해준다 -->
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ 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>
<%
String url = "jdbc:oracle:thin:@localhost:1521/xe"; /* 1521:오라클 포트 번호, url은 반드시 복사해서 입력, DB서버 주소*/
Class.forName("oracle.jdbc.driver.OracleDriver"); /* 복붙하기, 연결계정의주소*/
/* Connection connection;
Statement statement;
ResultSet resultset; */
String sql = "SELECT * FROM dept"; //SQL문 작성
Connection con = DriverManager.getConnection(url, "scott", "tiger"); //연결 객체 생성
Statement st = con.createStatement(); //실행객체 생성
ResultSet rs = st.executeQuery(sql); //결과객체 생성
while(rs.next()){ //SQL데이터 불어와서 웹 브라우저에 출력
out.println("부서번호: " + rs.getString("deptno") + ("<br>"));
out.println("부서이름: " + rs.getString("dname") + ("<br>"));
out.println("부서위치: " + rs.getString("loc") + ("<br>"));
out.println("<hr>");
}
//순서 지켜줘야된다. 끝(밑)에서부터 닫는다.
rs.close();
st.close();
con.close();
%>
</body>
</html>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<!-- sql로 import해준다 -->
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ 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>
<%
String url = "jdbc:oracle:thin:@localhost:1521/xe"; /* 1521:오라클 포트 번호, url은 반드시 복사해서 입력 */
Class.forName("oracle.jdbc.driver.OracleDriver"); /* 복붙하기 */
String sql = "SELECT * FROM EMP";
Connection con = DriverManager.getConnection(url, "scott", "tiger");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
out.println("사원번호: " + rs.getString("EMPNO") + ("<br>"));
out.println("사원이름: " + rs.getString("ENAME") + ("<br>"));
out.println("직업: " + rs.getString("JOB") + ("<br>"));
out.println("매니져: " + rs.getString("MGR") + ("<br>"));
out.println("취업날짜: " + rs.getString("HIREDATE") + ("<br>"));
out.println("월급: " + rs.getString("SAL") + ("<br>"));
out.println("보너스: " + rs.getString("COMM") + ("<br>"));
out.println("부서번호: " + rs.getString("DEPTNO") + ("<br>"));
out.println("<hr>");
}
//순서 지켜줘야된다. 끝(밑)에서부터 닫는다.
rs.close();
st.close();
con.close();
%>
</body>
</html>