jsp 표현식
변수나 메소드일때는 세미콜론을 사용하지않는다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<%@ 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>
<%
int i = 0;
while(true)
{
out.println(i + "번째 줄");
i++;
%>
<br/>
<br/>
<%
if(i > 5)
break;
}
%>
</body>
</html>
JDBC 오라클 연동
- JDBC 드라이버 로딩
- DB 연결
- PreparedStatement 객체생성
tomcat밑에 lib 폴더에 ojdbc5를 넣어줬다.
index jdbc jsp파일
jsp파일을 만들어서
포트포워딩
1
String url = "jdbc:oracle:thin:@집 포트포워딩:1523:xe";
드라이버연결할때 oracle/product/11.2.0/server/jdbc/lib/ojdbc5를 복사한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.DriverManager" %>
<%
boolean connection = false;
Connection conn = null;
String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:xe";
try
{
Class.forName(driver);
conn = DriverManager.getConnection(url, "iciauser", "1234");
if(conn == null)
{
connection = false;
System.out.println("DB연결 실패했습니다.");
}
else
{
connection = true;
System.out.println("DB연결 성공했습니다.");
}
}
catch(Exception e)
{
connection = false;
System.out.println("DB연결 실패.....");
e.printStackTrace();
}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JDBC TEST</title>
</head>
<body>
<%
if(connection == true)
{
%>
<h1>연결되었습니다.</h1>
<%
}
else
{
%>
<h1>연결실패입니다.</h1>
<%
}
%>
</body>
</html>
DATABASE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
drop table bonus;
drop table dept;
drop table emp;
drop table salgrade;
drop table salgrade1;
회원테이블
CREATE TABLE TBL_USER
(
USER_ID VARCHAR2(20) NOT NULL,
USER_PWD VARCHAR(20) NULL,
USER_NAME VARCHAR2(30) NULL,
USER_EMAIL VARCHAR2(50) NULL,
STATUS CHAR(1) NULL,
REG_DATE DATE NULL
);
COMMENT ON COLUMN TBL_USER.USER_ID IS '사용자 아이디';
COMMENT ON COLUMN TBL_USER.USER_PWD IS '비밀번호';
COMMENT ON COLUMN TBL_USER.USER_NAME IS '사용자 명';
COMMENT ON COLUMN TBL_USER.USER_EMAIL IS '사용자 이메일';
COMMENT ON COLUMN TBL_USER.STATUS IS '사용여부(Y:사용, N:정지)';
COMMENT ON COLUMN TBL_USER.REG_DATE IS '등록일';
CREATE UNIQUE INDEX PK_USER ON TBL_USER(USER_ID ASC);
ALTER TABLE TBL_USER ADD CONSTRAINT PK_USER PRIMARY KEY(USER_ID);
PK_USER를 UNIQUE INDEX로 잡아준다.
ROWNUM , ROWID 알려달라고하기
게시판 BBS_SEQ 시퀀스
CREATE SEQUENCE SEQ_BOARD
INCREMENT BY 1
MAXVALUE 999999999999
MINVALUE 1
NOCACHE;
게시판 생성
CREATE TABLE TBL_BOARD
(
BBS_SEQ NUMBER(12) NOT NULL,
USER_ID VARCHAR2(20) NULL,
BBS_NAME VARCHAR2(50) NULL,
BBS_EMAIL VARCHAR2(50) NULL,
BBS_PWD VARCHAR2(10) NULL,
BBS_TITLE VARCHAR2(150) NULL,
BBS_CONTENT CLOB NULL,
BBS_READ_CNT NUMBER(10) NULL,
REG_DATE DATE NULL
);
COMMENT ON COLUMN TBL_BOARD.BBS_SEQ IS '게시물번호(시퀀스SEQ_BOARD)';
COMMENT ON COLUMN TBL_BOARD.USER_ID IS '사용자 아이디';
COMMENT ON COLUMN TBL_BOARD.BBS_NAME IS '게시자 이름';
COMMENT ON COLUMN TBL_BOARD.BBS_EMAIL IS '게시자 이메일';
COMMENT ON COLUMN TBL_BOARD.BBS_PWD IS '게시물 비밀번호';
COMMENT ON COLUMN TBL_BOARD.BBS_TITLE IS '게시물 제목';
COMMENT ON COLUMN TBL_BOARD.BBS_CONTENT IS '게시물 내용';
COMMENT ON COLUMN TBL_BOARD.BBS_READ_CNT IS '게시물 조회수';
COMMENT ON COLUMN TBL_BOARD.REG_DATE IS '게시물 등록일';
CREATE UNIQUE INDEX PK_BOARD ON TBL_BOARD(BBS_SEQ ASC);
ALTER TABLE TBL_BOARD ADD CONSTRAINT PK_BOARD PRIMARY KEY(BBS_SEQ);