개발자/JSP 16

[jdbc] 싱글톤을 적용한 CRUD

싱글톤을 적용한 CRUD를 구성할 것이다. 싱글톤 구현을 위한 web.xml 과 context.xml context.xml web.xml ConnectionPool jdbc/oracle javax.sql.DataSource Container Member2DTO package member2; public class Member2DTO { private int idx; private String userid; private String userpw; private String username; private String gender; public int getIdx() { return idx; } public void setIdx(int idx) { this.idx = idx; } public String ..

개발자/JSP 2022.12.22

[JDBC] DBCP(DataBase Conncetion Pool)

커넥션풀이란? 여러 개의 DB Connection을 하나의 Pool에 모아놓고 관리 DB 커넥션 객체를 여러 개 생성한 뒤 Pool에 담아놓고 필요할 때 불러와서 사용 만약, 빌려줄 수 있는 Connection이 없다면 Connection 객체가 반환할 때 까지 클라이언트는 대기 상태로 전환 사용이 끝난 커넥션 객체는 다른 작업에서 다시 사용할 수 있도록 Pool에 반환 close를 통해 반환. DBCP가 필요한 이유 웹 어플리케이션은 CRUD와 같은 작업을 처리할 때 주로 데이터베이스를 이용합니다. DBMS나 기타 외부와의 접속이 빈번하게 필요한 시스템에는 반드시 존재해야 하는 기능인데 데이터베이스와 Connection을 맺는 작업은 매우 느리며 자원을 많이 소모하는 작업입니다. 이와 같이 서버가 물리..

개발자/JSP 2022.12.12

[JDBC] SingleTon 패턴

1. SingleTon 패턴 어디서나 오로지 하나의 객체만 참조하게 만드는 디자인 패턴을 말한다. 먼저 코드로 살펴보자. 싱글톤이 적용되지 않은 클래스 package singleton; public class Test1 { public Test1() { System.out.println("Test1 타입 객체 생성!!"); } } 싱글톤을 적용한 클래스 package singleton; public class Test2 {// singleton : 어디서나 오로지 하나의 객체만 참조하게 만드는 디자인 패턴 // static 메서드에서 참조할 수 있어야 하므로, static private static Test2 instance = new Test2(); private Test2() { // 생성자가 pri..

개발자/JSP 2022.12.12

[JDBC] XML

XML이란? XML(Extensible Markup Language)은 W3C에서 개발된, 다른 특수한 목적을 갖는 마크업 언어를 만드는데 사용하도록 권장하는 다목적 마크업 언어이다. XML은 SGML의 단순화된 부분집합으로, 다른 많은 종류의 데이터를 기술하는 데 사용할 수 있다. XML의 특징 XML은 다른 목적의 마크업 언어를 만드는 데 사용되는 다목적 마크업 언어이다. XML은 다른 시스템끼리 다양한 종류의 데이터를 손쉽게 교환할 수 있도록 해준다. XML은 새로운 태그를 만들어 추가해도 계속해서 동작하므로, 확장성이 좋다. XML은 데이터를 보여주지 않고, 데이터를 전달하고 저장하는 것만을 목적으로 한다. XML은 텍스트 데이터 형식의 언어로 모든 XML 문서는 유니코드 문자로만 이루어진다. ▶..

개발자/JSP 2022.12.12

[SQL] DB Table 제약조건

- primary key 기본키 (서로 다른 레코드를 구분할 수 있는 대표값) select의 조건으로 기본키를 사용하면, 오로지 한 개의 레코드만 조회할 수 있다 public DTO selectOne(int idx) { ... } - unique 고유키 (다른 레코드의 컬럼값과 중복될 수 없음) 중복 불가 회원 관리 테이블이 있다면, 회원 번호는 기본키, ID는 고유키 - not null 필수값 (값을 반드시 입력해야함) 제약조건이 없으면, 값을 비워둘 수 있지만 not null이 있으면 반드시 값을 입력해야 한다. 없으면 추가하거나 수정할 수 없다 - dfault 기본값 (값을 입력하지 않았을 때 적용되는 값) 자동으로 채울 수 있는 값. 데이터 생성 시간이나 시퀀스를 활용한 값을 사용한다. - che..

개발자/JSP 2022.12.09

[JDBC] 자바와 sql 연결 후 출력하는 방법

앞서 만든 sql을 자바와 연결 DB를 jsp에서 접근하는 방법 자바빈즈 package day10; //create table student1 ( //namevarchar2(100), // kornumber, // engnumber, // matnumber //); public class Student1 { private String name; private int kor; private int eng; private int mat; public Student1() { // TODO Auto-generated constructor stub } public String getName() { return name; } public void setName(String name) { this.name = nam..

개발자/JSP 2022.12.06

[JSP] 세션(session)

1. 세션의 기본 정의 클라이언트 마다 서로 다른 정보를 저장할 수 있는 서버 저장소 서버에 접속한 클라이언트의 수 만큼 세션을 생성해야 할 수도 있다 세션에 유효시간을 설정하여 일정 시간 이후 자동으로 로그아웃을 구현할 수 있다 서버에는 다수의 세션이 있어서, 이를 구분하기 위한 id가 있다 2. 세션 내장 메소드 1) 세션 ID : 2) 쿠키에 저장된 세션 ID : ${cookie.JSESSIONID.value } 3) 세션 생성 시간 : 4) 세션 마지막 사용 시간 : 4 - 3) 세션 최대 유지 시간 :

개발자/JSP 2022.12.05

[JSP]Attribute 속성 활용

-request와 session이 가장 많이 사용된다. pageContext 한번의 요청을 처리하는 하나의 JSP 페이지 내에서 공유될 값을 저장한다. (커스텀 태그에서 새로운 변수를 추가 할 때 사용) request 한번의 요청을 처리하는데 사용되는 모든 JSP 페이지에서 공유될 값을 저장한다. (정보를 전달하기 위해 사용) pageContext.forward("ex01-test.jsp")> session 한 사용자와 관련된 정보를 JSP들이 공유하기 위해서 사용한다. (사용자의 로그인 정보와 같은 것들을 저장) application 모든 사용자와 관련해서 공유할 정보를 저장한다. (임시 디렉터리 경로와 같은 웹 어플리케이션의 설정 정보를 저장)

개발자/JSP 2022.11.28