jsp

· jsp
페이징,검색 개요 페이징,검색은 List만 신경쓰면됩니다. 우리가 만든 List페이지에서는 DB에 있는 데이터가 한 페이지에 전부 나온다. 하지만 몇 천번째 글을 읽기 위해 스크롤을 내리는것은 비효율적이고, UI도 깔끔해 보이지않는다. 또 원하는 글을 찾기도 힘들다. 네트워크 사용량도 많아진다. 그에 비해 다음 정부24 페이지를 보자. 화면에 딱 10개씩(페이징)만 나오고 검색기능 까지 있어서 내가 원하는 글을 찾기도 용이하다. 우리도 freeList.jsp와 memberList.jsp에 페이징,검색기능을 적용해 볼 것이다. 페이징 페이징VO public class PagingVO { //입력받는 데이터 private int curPage=1; // 현재 페이지 번호 private int rowSizeP..
· jsp
코드사용시 장점 1.같은 데이터를 다르게 인식하는 경우 개발자가 '스프링 입문을 위한 자바 객체지향의 원리와 이해'를 DB에 넣을려고한다. 근데 책에 굵은 글씨로 표시된 '자바 객체지향의 원리와 이해'로 저장할 때도 있고, 풀네임인 '스프링 입문을 위한 자바 객체지향의 원리와 이해''로 저장할 때도 있다. 이 때 DB는 각각 모두 다른 데이터로 인식하게 된다. -> 코드를 사용할 경우 서로 다른 데이터가 들어갈 일이 없다. 해당책에 대한 코드가 BOOK1이라면 BOOK1만 DB에 들어갈 수 있다. BOOK1에 해당하는 책은 한개밖에 없어 헷갈릴 일이 없다. 2. 다른 데이터이지만 똑같이 인식하는 경우 '스프링 입문을 위한 자바 객체지향의 원리와 이해'가 잘팔려서 개정판이 나왔다고 해보자. 구판과 개정판은..
· jsp
필터란 https://dololak.tistory.com/602 참고 Filter 인터페이스 필터를 구현하기 위해 Servlet/Jsp에서는 javax.servlet.Filter라는 인터페이스를 제공합니다. package javax.servlet; import java.io.IOException; public interface Filter { default void init(FilterConfig filterConfig) throws ServletException { } void doFilter(ServletRequest var1, ServletResponse var2, FilterChain var3) throws IOException, ServletException; default void destro..
· jsp
JDBC 사용의 불편함 기존에 JSP에서 모든일을 처리했었던걸 이제 MVC패턴까지 적용하면서 완벽하게 5계층으로 나누어졌다. 각 계층별로 정해진 역할을 하면서 확장 및 유지보수에 용이해지도록 했다. 근데 Persistence 계층의 DAO부분에 보면 JDBC를 이용한 코드가 괜히 불편해보인다. 쿼리문을 쓰고 나서 PreparedStatement의 ? 처리 pstmt.setString(i++,freeBoard.getBoTitle()); 결과를 Result으로 받고 VO에 하나하나 setting해주기 FreeBoardVO freeBoard = new FreeBoardVO(); freeBoard.setBoNo(rs.getInt("bo_no"));​ 등의 불편함이 있다. 여기서 '?' 처리도 쉽게하고 쿼리의 결..
· jsp
WEB-INF폴더 WEB-INF는 Web Information의 약자로 web에 관련된 정보를 의미한다. Web 정보에 관한 중요한 파일들은 WEB-INF폴더에 넣게된다. 예를 들어web.xml, lib폴더, java파일(/WEB-INF/classes) 등이 있다. 이런 중요한 파일들이 있는 WEB-INF폴더에는 브라우저에서 직접 접근할 수 없다. 오직 서버내에서만 접근이 가능하다.(forwarding을 통해서만..) 만약 브라우저가 WEB-INF폴더에 있는 파일에 직접 접근하려고 하면 404에러를 발생시킨다. WEB-INF 폴더의 장점과 단점 장점 브라우저의 직접 접근이 불가, 보안이 좋다 단점 브라우저의 직접 접근이 불가, View(jsp)의 경우 직접적으로 볼 수없어 Controller를 통해서만 ..
· jsp
자바 서블릿이란. 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종 (물론 Servlet은 interface)이다. 서블릿은 JSP와 비슷한 점이 있지만, JSP가 HTML 문서 안에 Java 코드를 포함하고 있는 반면, 서블릿은 자바 코드 안에 HTML을 포함하고 있다는 차이점이 있다. ..라고 위키백과에 정의 되어있습니다. 저기서 중요한 건 자바클래스의 일종이다라는 것입니다. 웹과 관련해서 조금 더 쉽게 설명해보겠습니다. 서버-클라이언트 관계에서는 클라이언트가 요청을 하면 서버가 요청에 맞게 응답을 해줍니다. 인터넷 초기에는 정적 컨테츠를 주고받기만 하면 됬었는데..
· jsp
계층화 아키텍처 적용하는 이유 https://brilliantdevelop.tistory.com/51 https://bbaktaeho-95.tistory.com/98 글을 먼저 읽자. 현재는 DB연결까지 필요한 모든 코드가 JSP파일에 모두 있다. 이러면 간단한 기능만 하는 코드일때는 괜찮았지만 점점 기능이 많아지고 코드가 길어지면 에러가 발생했을 시 어디서 났는지 찾기도 힘들어지고 기능을 추가하려고 할 때마다 코드가 복잡해 어떻게 추가할지 감이 안잡힐 수 있다. 그래서 현재 JSP에 있는 코드를 계층화 아키텍처를 이용해 나눌려한다. 근데 아직 MVC패턴에 대해서는 배우지않아 Controller계층이 없다. 뷰와 Controller의 분리를 할 수 없기 때문에 지금은 view(jsp)에서 직접 Servi..
· jsp
게시판의 CRUD 구성과 실습 free_board, member 테이블을 가지고 CRUD페이지를 만들어보겠다. 게시판의 구성은 다음과 같다. List : 게시글 목록을 보여준다 View : 게시글 1개의 상세내용을 보여준다. Edit : 게시글 1개의 상세내요을 보여주고, 수정할 수 있다. Modify : Edit에서 수정한 내용을 실제 DB에서 업데이트한다. Delete : Edit에서 삭제버튼을 누르면 실제 DB에서 업데이트한다 (del_yn을 'Y'으로 업데이트한다. 실제 DELETE 명령어를 실행하지않는다.) Form : 새글을 위한 데이터를 입력하는 화면이다. Regist: Form에서 입력한 데이터를 DB에 저장한다. (INSERT) 이전 시간에 서블릿을 이용해 처음 서버가 켜질 때 Drvie..
· jsp
Connection Pool JDBC 코딩 과정은 드라이버로드-연결-쿼리실행-연결종료이다. 이 중 일반적으로 가장 많은 시간이 걸리는건 연결부분이다. conn=DriverManager.getConnection( "jdbc:oracle:thin:@127.0.0.1:1521:xe","jsp","oracle");//DB연결 이 코드가 쓰여질 때마다 DB에 연결해서 connection객체를 생성하는 과정을 거친다. 연결을 한 후 connection 객체를 자바 메모리에서 저장하고 관리하면 어떨까? 이 때 Connection Pool을 사용한다. 웹 컨테이너(WAS)가 실행되면서 DB와 미리 connection(연결)을 해놓은 객체들을 pool에 저장해두었다가 클라이언트 요청이 오면 connection을 빌려주고..
· jsp
JDBC -Java Database Connectivity -자바에서 DB 프로그래밍을 하기 위해 사용되는 API JDBC API 사용 어플리케이션의 기본 구성 JDBC 드라이버 - JDBC 드라이버 : 각 DBMS에 알맞는 클라이언트 - DBMS와 통신을 담당하는 자바 클래스 - DMBS 별로 알맞은 JDBC 드라이버 필요 (jar) - 로딩코드 : Class.forName(“JDBC드라이버 이름”); • MySQL : com.mysql.jdbc.Driver • 오라클 : oracle.jdbc.driver.OracleDriver • MSSQL : com.microsoft.sqlserver.jdbc.SQLServerDriver 자바는 어떤 종류의 DB든 해당 드라이버만 있으면 그 DB에 접근 할 수 있는..
한창희
'jsp' 카테고리의 글 목록