본문 바로가기
728x90
반응형

분류 전체보기160

전자정부프레임워크 뼛속까지 알아보자#5 -(jstl) %> 위 코드 내용은 jstl을 선언하는것이다. jstl은 자바서버 페이지 표준 태그 라이브러리라고하며 java EE 기반의 웹 애플리케이션 개발 플랫폼을 위한 컴포넌트 모음이다. jstl은 xml 데이터 처리와 조건문,반복문,국제화와 지역화와 같은 일을 처리학 위한 JSP 태그 라이브러리를 추가하여 jsp사양을 확장했다. jstl은 jsp 페이지 내에서 자바 코드를 바로 사용하지 안하고 로직을 내장하는 효율적인 방법을 제공한다. 표준화된 태그 셋을 사용하여 자바 코드가 들락거리는 것보다 더 코드의 유지보수와 응용 소프트웨어 코드와 사용자 인터페이스 간의 관심사의 분리로 이어지게 한다. /********************************************************* * 초기화 *.. 2020. 4. 6.
팩토리 패턴 (Factory pattern)? 팩토리패턴 바뀔 수 있는 부분을 찾아내서 바뀌지 않는 부분하고 분리해야함. 자바코드에서 new를 사용하는것은 구상클래스의 인스턴스를 생성하는것이다. 구상클래스를 바탕으로 코딩을 하면 나중에 코드를 수정해야할 가능성이 높아지고, 유연성이 떨어진다. 그 이유는 변화에 약하기 때문이다. 인터페이스에 맞춰서 코딩을 하면 시스템에서 일어날 수 있는 여러가지 변화들을 이겨낼수있다. 그래서 구상클래스의 인스턴스를 만드는 부분을 찾아서 분리/캡슐화 하기위해 팩토리 패턴을 사용한다. 팩토리 패턴의 핵심은 클래스의 인스턴스를 만드는 것을 서브클래스에서 결정하도록 한다는것이다. 즉, new 키워드를 사용하는 부분을 서브클래스에 위임함으로 써 객체 생성을 캡슐화하고 구상클래스에 대한 의존성이 줄어 든다는 이점을 얻을 수 있다.. 2020. 4. 6.
mybatis framework를 알아보자 1. Mybatis란? 객체지향 언어인 자바의 관계형 데이터 베이스 프로그래밍을 좀더 쉽게 개발할수 있도록 도와주는 프레임워크이다. 자바는 jdbc api를 제공해주지만, 이런 jdbc를 이용하면 1개 클래스안에 반복된 코드가 존재하며, 한 파일에 java 언어와 sql에 있어서 재사용성등이 안좋아진다. 그래서 mybatis는 jdbc의 이런 문제를 해결하기위해 개발자가 작성한 sql명령어와 자바객체를 매핑해주는 기능을 제공한다. mybatis는 몇줄의 자바코드로 db연동을 처리하고, Sql 명령어를 자바 코드와 분리하고 xml에 따로 관리하기 때문에 재사용성이 높다. Mybatis 구조 Mybatis-config는 mybatis의 메인 환경설정파일이다. 어떤 DBMS와 커넥션을 맺을지, 어떤 맵퍼파일들.. 2020. 4. 6.
전자정부프레임워크 뼛속까지 알아보자#4 *도움이 되셨다면 광고 한번 클릭 부탁드립니다! 제게 큰 힘이됩니다! 큰흐름 serivce -> serviceimpl -> dao -> mapper -> dao -> serviceimpl -> masterboard -> jsp 1. egovBBSMasterService.selectBBSMasterInfs 를 통하여 service -> serviceimpl 서비스를 구현한 메소드로 이동하면 Dao가 보인다 Dao는 Data Access Object로 쉽게 말하면 db와 연동하여 데이터를 가져오는 작업을 한다. 2. Dao를 통하여 게시판글 list와 카운트를 가져오는데 코드를 따라가보면 "BBSMaster.selectBBSMasterList",boardMasterVO 라고 코드가 보인다 이뜻은 BBSMas.. 2020. 4. 6.
자바 bean ?? 클래스란 Bean이란 자주 사용하는 객체를 singleton으로 만들어 놓고 어디서든 불러쓸 수 있도록 만든것이다. 자바에서는 bean은 재사용이 가능하게 만들어진 component??이다 1. Singleton 'singleton' bean은 Spring 컨테이너에서 딱 한 번 생성된다. 컨테이너가 제거될때 bean 함께 제거된다. 생성된 하나의 인스턴스는 single beans cache에 저장되고 해당 bean에 대한 요청과 참조가 있으면 캐시된 객체를 반환한다. 기본적으로 모든 bean은 scope가 명시적으로 지정되지 않다면 singleton으로 작동한다 2.서블릿 컨테이너 서블릿 컨테이너는 개발자가 웹서버와 통신하기 위하여 소켓을 생성하고 , 특정 포트에 리스닝하고 , 스트림을 생성하는 등의 복잡한 일.. 2020. 4. 3.
전자정부프레임워크 뼛속까지 알아보자#4 - 게시판 수정 part2 *도움이 되셨다면 광고 한번 클릭 부탁드립니다! 제게 큰 힘이됩니다! 이번에 @ModelAttrubute를 보자 이 어노테이션은 내부적으로 실행되는게 많다.. 한번 설명해 보겠다 일단 아래에 빈 클래스 BoardMasterVO가 있다고하자 public class BoardMasterVO { private in seq; private String name; private int age; // getter,setter 생략 } 예를들어 http://localhost:8080/egov/bbs?name=dong&age=5&seq=327 와 같은 접속되어 들어올때 컨트롤러 클래스는 아래에 메소드가 실행된다고 가정해보자 @Controller public class EgovBBSMasterController{ @Re.. 2020. 4. 3.
728x90
반응형