본문 바로가기

DB Connection5

서블릿 만약 클라이언트에서 요청이 온다면 먼저 서블릿으로 들어간다. 아이디 중복 체크 서블릿 먼저 한글이 나올 수 있게 UTF-8로 인코딩을 해준다 그리고 요청한 userID값을 String userID에 넣어준다. 그 userID값을 가지고 DB와 접근하는 DAO의 함수 로직을 사용한 후 사용자에게 반환해준다. 회원가입 서블릿 회원가입할 때 요청한 모든 값들을 받아 처리해준다. 사용자가 어떤 URL을 걸쳐서 서블릿에 오게 되는 지 web.xml에 설정을 해주어야 한다. 이렇게 servlet-name과 mapping을 통해서 사용자가 회원가입을 할 때 UserRegisterServlet에 접근하기 위해서는 /userRegister에 post message를 보내야 한다고 설정을 해주는 것이다. 2021. 11. 6.
DAO DAO(Data Access Object) : 데이터 접근 객체 : 실제로 DB에 접근해서 CRUD를 수행하는 객체 DB에 접속할 수 있도록 객체 생성 여기서 웹페이지의 로그인, 회원가입 등 여러 로직을 구현해준다. 로그인 회원가입 이렇게 DB와 접속하여 CRUD를 수행하는 로직을 DAO에 작성해준다. 아이디 중복체크 2021. 11. 6.
데이터베이스 구축 Mysql을 통해 db만들기 만든 이 테이블에 접근할 수 있는 JAVABEANS를 만들어야 한다. 테이블의 내용을 포장해서 묶어주는 DTO MySQL과 JSP를 연동하기 위해 JDBC 드라이버가 필요! 그러기 위해선 SQL드라이버를 다운받고 해당 프로젝트의 WEB-INF의 lib 폴더에 드라이버를 넣어준다.! 그리고 buildPath에 추가해준다. 그리고 META-INF에 context.xml를 만들어 connection을 계속 맺고 끊는 작업이 아닌 connection pool를 이용할 수 있게 된다. 이것이 제대로 연결되었는지 확인을 해 보겠다. Connection pool에 접근할 수 있도록 해주는 코드이다 1. InitialContext : 하나의 객체를 만들어주고 2. initCtx 객체를 통해.. 2021. 11. 6.
DataSource jdbc로 데이터베이스에 접근을 하면 DB에 접근할 때마다 connection을 연결했다 끊었다 작업을 해야한다. 이 맺고 끊는 작업을 줄이기 위해서 미리 connection을 만들어 두었다고 DB에 접근하려고 하는 사용자에게 미리 만들어둔 connection을 제공하고 반납한다. 이러한 connection을 모아둔 장소를 connectionpool이라 하고 Datasource는 자바에서 connectionpool을 지원하는 인터페이스이다!! 2021. 11. 6.
DBCP pool DB에 연결하기 위해서는 매번 커넥션(Connection)객체가 요구된다. 따라서 필요할 때마다 객체를 생성하는 데 이때마다 많은 시스템 자원이 요구된다. 이렇게 db에 접근하기 위해서는 매번 만들어 놓은 connection 객체를 생성하여 접근하는 것이다. 이용자가 많이 않으면 문제가 없지만 이용자가 많아진다면 이것은 많은 시스템자원을 사용하여 속도가 느려진다. 따라서 커넥션 풀이 중요하다! 그림처럼 커넥션 풀은 데이터베이스와 연결된 커넥션을 미리 만들어 POOL에 저장해두고 있다고 필요할 때 커넥션을 풀에서 가져다 쓰고 다시 풀에 반환하는 것이다. 풀 속에 미리 커넥션이 생성되어 있어 커넥션을 생성하느라 시간을 소비하지 않아 빠르다. 그리고 재사용을 하기 때문에 생성되는 커넥션 수도 많지 않다. 이에.. 2021. 9. 25.