본문 바로가기
반응형

JAVA38

액션 태그 JSP의 표준 태그로, 페이지 사이에서 이동을 제어하거나 자바빈을 생성할 때 주로 사용됨. 웹 브라우저에서 소스 보기를 해도 액션 태그는 보이지 않는다! XML 문법을 따름 반드시 종료 태그를 사용 해야 함 액션 태그 사이에 주석을 사용하면 에러 발생 액션 태그에 속성값을 부여할 때는 표현식 사용 : 외부 파일을 현재 파일에 포함시킴 : 다른 페이지로 요청을 넘김 자바빈즈를 생성하고 값을 설정/추출 : 다른 페이지로 매개변수 전달. 액션태그와 함께 사용 include 지시어 vs 지시어 액션태그 형식 표현식 표현식 사용 불가 표현식 사용 가능 포함 방식 페이지 자체를 현재 페이지에 포함시킨 후 컴파일 진행 실행의 흐름을 포함시킬 페이지로 이동시킨 후 실행한 결과를 현재 .. 2023. 3. 17.
커넥션 풀 커넥션 풀 커넥션 객체를 미리 생성해 풀에 넣어놓고, 요청이 있을 때 이미 생성된 커넥션 객체를 가져다 사용하는 기법 대부분 WAS는 커넥션 풀을 비롯한 여러 자원을 JNDI 서비스로 제공한다. JNDI(Java Naming and Directory Interface) WAS의 JNDI를 통해 커넥션 풀을 사용하는 절차 WAS가 시작할 때 server.xml과 context.xml에 설정한 대로 커넥션 풀을 생성한다. JSP 코드에서 JNDI 서버로부터 데이터소스 객체를 얻어온다. 데이터소스로부터 커넥션 객체를 가져온다. DB작업을 수행한다. 모든 작업이 끝나면 커넥션 객체를 풀로 반환한다. server.xml --계정 패스워드 context.xml 커넥션 풀 이용 import java.sql.Conne.. 2023. 3. 17.
JSP 파일 업로드 JSP에서 파일 업로드를 위해서는 COS라이브러리가 필요하다. COS라이브러리의 Multipart Request클래스를 사용한다. 순서 데이터베이스 구축하기 업로드 양식 페이지 작성하기 데이터베이스 연동 클래스 작성하기 업로드 처리 페이지 작성하기 파일 다운로드 페이지 작성하기 보안 코딩 적용하기 파일 업로드 심화 과정은 다음과 같습니다 파일을 다운로드 한 횟수 저장하기 다중 파일 업로드 구현하기 데이터베이스 구축하기 파일 업로드에서 반드시 구현되어야 할 정보 서버에 저장된 실제 파일의 이름 사용자가 지정한 파일의 이름 구현하는 방법은 두 가지 게시판, 프로필 등의 테이블에 파일 관련 속성을 삽입하기 따로 파일 관련 테이블을 생성하기 실습용 데이터베이스 생성 CREATE DATABASE FILE; USE.. 2023. 3. 17.
JSP 자바 빈즈(Beans) JSP는 HTML내에 JAVA코드를 넣어 동적인 페이지를 생성하는 스크립트 언어이다. JSP 자바 빈즈는 JSP의 표준 액션 태그로 접근할 수 있는 자바 클래스로서 값을 가지는 속성(멤버변수)와 값을 설정하는 메소드(setter), 값을 추출하는 메소드(getter)로 이루어져있다. JSP 자바빈즈 개발 규약 패키지화 JSP 페이지에서 자바빈즈를 사용할 때 기본 패키지에 있으면 인식이 안된다. 반드시 패키지화 되어 있어야 한다 기본 생성자 존재 자바빈즈의 객체 생성은 jsp:useBean 액션 태그로 생성하는데, 객체가 생성될 때 기본 생성자를 이용하기 때문에 반드시 기본 생성자가 있어야 한다. 멤버변수의 접근자는 private으로 선언 자바빈즈 객체의 속성 값은 외부에서 직접 접근할 수 없도록 priv.. 2023. 3. 17.
인터페이스 극단적으로 동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 것 자바의 다형성을 극대화하여 개발코드 수정을 줄이고 프로그램 유지보수성을 높이기 위해 사용함. 인터페이스는 interface키워드를 통해 선언할 수 있으며, implements키워드를 통해 일반 클래스에서 인터페이스를 구현할 수 있다. JAVA8 이전까지는 상수, 추상메소드만 선언이 가능했지만 (그만큼 강제성이 강했다) JAVA8부터는 디폴트메소드, 정적 메소드가 추가되었다. public interface 인터페이스명 { //상수 타입 상수명 = 값; //추상메소드 타입메소드명(매개변수,...); //디폴트메소드 default 타입 메소드명(매개변수,....){ // 구현부 } //정적메소드 static 타입 메소드명(매개변수) { //구현.. 2023. 3. 14.
반응형