본문 바로가기

국비필기노트/jsp

(21)
jsp_MVC2 패턴으로 게시판 만들기(전체 게시글 불러오기,게시물 총 갯수, 페이징처리) point1) 순서 index.jsp -> BoardFrontController.java -> BoardListAction.java -> BoardDAO.java(DB처리) -> BoardListAction.java -> BoardFrontController.java -> boardList.jsp point2) 전체 게시물 수 출력하기 전체 게시물의 숫자를 출력하기위한 각 클래스들과 xml파일 jsp파일들이다. BoardFrontController.java: 수정할 코드가 없다. FrontController는 공통로직만 처리해주고 디테일한 기능은 Action클래스로 넘긴다. BoardListAction.java: DB쿼리문을 가공하는 클래스로서 execute라는 메서드를 실행한다는 의미는 클라이언트가 어..
jsp_MVC2패턴으로 로그인 만들기 *index.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 Insert title here 회원가입 로그인 Colored by Color Scripter cs *loginView.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 http://java.sun.com/jsp/jstl/core" prefix="c" %> Insert title here 아이디 패스워드 Colored by Color Scripter cs *UserLoginOkAction.java 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 package..
jsp_MVC2 패턴으로 회원가입 만들기(+초기세팅) *index.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 Insert title here 회원가입 로그인 Colored by Color Scripter cs *joinview.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 28 29 30 31 Insert title here 아이디 : 비밀번호 : 이름 : 전화번호 : 주소 : Colored by Color Scripter cs *UserFrontController.java 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 3..
jsp_MVC2 MVC1과 MVC2의 차이 Model Controller View MVC1 a.jsp b.jsp c.jsp MVC2 a.jsp b.java c.jsp MVC1은 모두 jsp파일로만 이루어지는 반면에 MVC2는 컨트롤러 부분을 java로 빼서 관리한다. 프론트 컨트롤러 프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받는다. 프론트 컨트롤러가 클라이언트의 요청에 맞는 컨트롤러를 찾아 호출해 준다. 그래서 컨트롤러에 대한 공통 로직에 대한 처리가 가능하며 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 된다. URI가지고오기 *doing.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Insert title here 링크1 링크2 링크3 Colored by Color ..
jsp_DB 변천사 1. jbdc_test.jsp 모든 DB의 구성요소들이 jsp파일에서 jsp태그로 묶여 자바 코드로 작성되어있다. 로딩성공의 체크와 sql문 역시 가은 파일안에 담겨져있어 기능별로 세분화하여 정리가 되지않아 유지보수에 몹시 불편한 코드이다. https://songg5453.tistory.com/150 2. DBConnection DBConneciton과 Dao.java파일로 나뉘어 DB가 관리되기 시작한다. 왼쪽이 jdbc_test.jsp고 오른쪽이 DBConneciton이다. DB의 드라이버를 입력하고 연결해주는 창이 그대로 DBConneciton의 try창으로 들어갔으며, 초록색 박스의 에러내용이 예외처리를 통해 좀 더 구체화되어 알려주기에 유지보수하기 더 좋아졌다. 왼쪽의 jbdc_test.jsp는..
jsp_JSTL JSTL이란? 연산이나 조건문, 반복문을 편하게 처리할 수 있으며, JSP페이지 내에서 자바코드를 사용하지 않고도 로직을 구현할 수 있도록 효율적인 방법을 제공한다. for(초기식;조건식;증감식){ } -> JSTL라이브러리 다운로드 https://archive.apache.org/dist/jakarta/taglibs/standard/binaries/ Index of /dist/jakarta/taglibs/standard/binaries archive.apache.org 를 다운받아 프로젝트 lib에 넣고 java bildpath를 설정해준다. JSTL 태그 : 변수를 만들 때 사용 : 값을 출력(EL문을 좀 더 많이 쓴다) : 조건제어 : 조건제어(switch문)으로 내부에 c:when, c:other..
jsp_EL문 EL문이란? Expression Language로서 값을 간결하고 간편하게 출력할 수 있도록 해주는 언어이다. , out.println( )과 같은 자바코드를 더이상 사용하지 않고 좀 더 간편하게 출력을 지원하기 위한 도구이다. EL구문 ${....} 내에 표현식으로 표현한다. 범위 set attribute를 통해 데이터를 세팅하고 get을 통해 데이터를 획득하는데 attribute로 값을 꺼내고 빼내는데 값을 찾을 때 작은 범위에서 큰 범위( page > request > session > application)로 찾는다. EL연산자 산술연산자: +, -, *, /(div), %(mod) 논리연산자: &&(and), ||(or), !(not) 비교연산자: ==(eq), !=(ne), (gt), =(ge..
jsp_Mybatis Mybatis 객체지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 할 수 있게 도와주는 개발 프레임 워크로서, jdbc를 통해 데이터베이스에 엑세스 하는 작업을 캡슐화. 일반 sql쿼리, 저장 프로시저 및 고급 매핑을 지원하며 모든 jdbc 코드 및 매개변수의 중복작업을 제거한다. Mybatis에서는 프로그램에 있는 sql쿼리들을 한 구성파일에 구성하여 프로그램 코드와 sql을 분리할 수 있는 장점을 가지고있다. Mybatis는 sql문을 xml파일에 작성함으로서 코드가 줄어들고, sql문만 따로 관리하기때문에 수정이 편리해진다. 또한 작업 효율과 가독성이 좋다. Mybatis 라이브러리 다운로드 https://blog.mybatis.org/p/products.html Products A..
jsp_DBCP DBCP(DataBase Connection Pool)란? 데이터베이스와 연결된 커넥션을 미리 만들어서 저장해두고있다가 필요할 때 저장된 공간(Pool)에서 가져다 쓰고 반환하는 기법을 말한다. 커넥션 풀을 이용하면 커넥션을 미리 만들어두고 사용하기 때문에 매번 사용자가 요청할 경우 드라이버를 로드하고, 커넥션 객체를 생성해 연결하고 종료하는 비효율적인 작업을 하지 않아도 된다. 즉, 데이터베이스의 부하를 줄일 수 있고 자원을 효율적으로 관리할 수 있다. 쉽게말하자면 기존의 DB Conneciton방식은 한사람이 끝나야지 다음사람이 사용할 수 있고 그 사람이 끝나야 그 다음사람이 사용할 수 있는 비효율적인 방법이였으나 이는 매우 비효율적인 방법이기에 DBCP방식을 사용한다. 단, Pool공간 역시 무한하..
jsp_아이디중복체크 JSON방식으로 데이터를 받고 파싱하는 방법 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 package com.koreait.json; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; public class JSONTest { public static void main(String[] args) { JSONObject i..