리팩토링은 기존의 코드를 외부의 동작방식에는변화없이 내부 구조를 변경해서 재구성하는 작업 또는 기술을 말함.리팩토링을 하면 코드 내부의 설계가 개선되어코드를 이해하기 좋아지고 변화에 효율적으로 대응할 수 있다. 코드의 품질이 올라가고 유지보수가 용이해진다.ex) 중복코드를 없에는 작업 상속을 통한 확장추상메소드 사용하기추상클래스로 만든 나의 UserDao 클래스를옆에 친구에게 준 후 이 친구도 내가 만든UserDao클래스를 사용할 수 있게 해줘야한다. 그럼 이친구는 나의 UserDao 클래스를 상속해서자기 마음대로 서브클래스를 만들어 사용하면 된다.서브클래스에서 내 UserDao클래스 안에 있는 추상메소드로 선언한 getConnection() 메소드를원하는 방식으로 구현해 사용할 수 있다. 이렇게 함으로..
UserDao-사용자 정보를 DB에 넣고 관리할 수 있는 DAO클래스이다.스프링을 공부할 정도라면 JSP로 게시판 한번쯤은 다 짜봤을것이다.Dao를 한번씩 다 사용해봤을거란 말이다.그럼 Dao에서 JDBC를 연결해보는 작업도 해봤을것이다. JDBC를 이용하는 작업의 일반적인 순서 -DB 연결을 위한 Connection 가져오기-SQL을 담은 PreparedStatement 생성-만들어진 PreparedStatement 실행-조회의 경우 SQL 쿼리의 실행 결과를 ResultSet으로 받아 저장한다.-작업중에 생성된 Connection, Statement, ResultSet 반환하기. ex)위 소스에서 2,3,4 line을 기억하자. main()을 이용한 테스트 만들어진 코드의 기능을 테스트 해볼때는 오브..
스프링은 자바를 기반으로 한 기술. 때문에 스프링은 자바의 객체지향 프로그래밍 기술을 가장 중요한 가치로 둔다. 스프링의 핵심 철학은 객체지향 프로그래밍이제공하는 폭넓은 혜택을 누릴수 있도록 하는것이다.그래서 스프링은 오브젝트에 가장 큰 관심을 둔다. 오브젝트의 기술적인 특징과 사용법을 넘어선 오브젝트의 설계에는다양한 목적을 위한 재활용 가능한 설계방법을 할 수 있도록 하는디자인 패턴, 구조가 깔끔해질수 있도록 개선하는 리팩토링오브젝트가 설계대로 동작하고 있는지 확인할 수 있는 단위 테스트등의 여러가지 응용 기술과 지식이 요구된다. DAO(Data Access Object) - DB를 사용해 데이터를 조회하거나조작하는 기능을 전담하도록 만든 오브젝트 자바빈 - 원래는 비주얼 툴에서 조작 가능한 컴포넌트를..
이번엔 (13)포스팅에서 알아본DAO, DTO를 사용해회원인증 프로그램을 만들어보겠습니다. 먼저 파일들을 생성해 보겠습니다.패키지안에 MemberDAO.java, MemberDTO.java클래스 생성해 주도록 하겠습니다 다음 WebContent에 아래와같은파일들 생성하겠습니다js 파일은 file 생성후.js 붙여 주시면됩니다 다음 디벨로퍼에서 테이블 생성해주도록하겠습니다 이제 join 화면 먼저 보겠습니다 12345678910111213141516171819202122Insert title here 아이디 : 비밀번호 : 비밀번호 확인 : 이름 : 메일 : 주소 : Colored by Color Scriptercs join화면에서는 아이디, 비밀번호, 비밀번호확인,이름, 메일, 주소 form 태그만들어줬..
이번엔 커넥션 풀(DBCP) 에 대해알아보겠습니다. 클라이언트에서 다수의 요청이 발생할 경우DB에서는 부하가 발생됩니다이 문제를 막기위해 커넥션 풀(DataBase Connection Pool)을 이용합니다 먼저 커넥션 풀을 사용하기 위해선이클립스 좌측 서버의 context.xml 파일을수정해야합니다 아래 이미지와같이 데이터베이스연결을 위한 정보들을 입력합니다 다음 Ctrl + s 로 저장해주시면 끝납니다 이렇게 커넥션풀을 설정하면이전 (13) 포스팅에서 만든 DAO 파일이간결해집니다 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666..
이번엔 PreparedStatement 객체에대해 알아보겠습니다(11)(12)(13) 포스팅에서는SQL문 실행을 위해 Statement 객체를 이용했습니다Statement 객체의 경우 중복코드가 많아지는단점이 있습니다 이러한 단점을보완한 객체가 PreparedStatement 객체입니다 먼저 간단하게 PreparedStatement 객체사용법을 보겠습니다 12345678910Class.forName(driver);connection = DriverManager.getConnection(url, uid, upw);int n;String query = "insert into member(id, pw, name, phone) values (?,?,?)";preparedStatement = connection...
이번엔 DAO와 DTO 에대해 알아보겠습니다 DAO : Data Access ObjectDTO : Data Transfer Object DAO란 데이터 베이스에 접속해서데이터 추가, 삭제, 수정 등의 작업을하는 클래스 입니다. 일반적인 JSP 혹은 Servlet 페이지 내에서위의 로직들을 함께 쓸수 있지만유지보수 및 코드의 모듈화를 위해DAO 라는 클래스를 따로 만들어 사용합니다 DTO란 DAO클래스를 이용하여 데이터 베이스에서 데이터를 관리할 때 데이터를 일반적인 변수에저장하여 사용할수 있지만 해당 데이터의클래스를 만들어 사용 합니다. 먼저 이클립스에서 파일을 만들어실행 해보도록 하겠습니다 패키지에 MemberDAO.java, MemberDTO.java 클래스를만들어줍니다다음 WebContent에 me..