분류 전체보기106 Git Repository 생성 & 업로드 Git에서 새로운 repository는 아래의 working-add-commit 3단계의 상태를 거쳐 생성된다. 1. Working Directory 작업 디렉토리 (working 상태) → 폴더 진입해 저장소 생성 2. Staging Area 영역(add 상태) 3. HEAD 영역 (commit 상태)로그인 후 커밋 → 로그인 후 커밋 4. 2019. 6. 18. MyBatis 사용 목적, 셋팅, Log4j(로그 출력) 1. MyBatis 사용 목적 - 개발과 유지보수가 쉽도록 소스 코드에 박혀있는 SQL을 별도의 파일로 분리 - 단순하고 반복적인 JDBC 코드를 캡슐화하여 데이터베이스 프로그래밍을 간결하게 만듦 2. 라이브러리 다운로드 및 셋팅 경로 github.com/mybatis/mybatis-3/releases mybatis/mybatis-3 MyBatis SQL mapper framework for Java. Contribute to mybatis/mybatis-3 development by creating an account on GitHub. github.com 3. 환경 설정 (JDBC/JNDI) 1) config.xml 파일 생성 : SqlSessionFactory가 sqlSession 객체를 제공할때 .. 2019. 6. 13. [JSP] 리플렉션 API를 사용한 프론트 컨트롤러 자동화 기존 MVC 모델에서 페이지를 추가하면 프론트 컨트롤러에서 파라미터 값을 받기 위해 객체를 추가하는 코드를 매번 추가/수정해주어야 한다. 그런데 리플렉션 API를 사용하면 객체 생성의 자동화를 통해 이 불편한 과정을 개선할 수 있다. 아래의 그림처럼 프론트 컨트롤러가 페이지 컨트롤러에 필요한 데이터를 물어보고, 클래스의 이름(문자열)을 추출해 그에 따른 객체를 생성해주는 흐름으로 자동화가 이루어진다. 1. 리플렉션 API 다운로드 : 자바 lang 패키지에서 기본적으로 제공하는 리플렉션 API도 있고, 외부 라이브러리를 다운받아 임포트 해도 된다. https://code.google.com/archive/p/reflections/ Google Code Archive - Long-term storage f.. 2019. 6. 12. [JSP] DataSource의 장점과 셋팅 방법 DataSource는 java.sql 패키지의 기능을 보조하기 위한 javax.sql 패키지에 들어있다. DataSource는 java.sql 패키지의 DriverManager를 통해 DB 커넥션을 얻는 것에 비해 다음과 같은 장점을 가지고 있다. 1) 서버에서 관리하기 때문에 데이터베이스나 JDBC 드라이버가 변경되더라도 애플리케이션을 바꿀 필요가 없다. 2) 자체적으로 커넥션풀 기능을 구현하기 때문에 웹 애플리케이션 쪽에서 따로 작업할 것이 없다. 3) Connection과 Statement 객체를 풀링할 수 있다. 4) 분산 트랜잭션을 다룰 수 있다. 1. dbcp.jar 파일, pool.jar 파일 임포트 2. context.xml 태그 안에 리소스 정보 삽입 3. web.xml에 context... 2019. 6. 11. [JSP] EL(Expression Language), JSTL(JSP Standard Tag Library) 정리 EL(Expression Language) *용도: 자바 빈의 프로퍼티나 맵, 리스트, 배열의 값을 보다 쉽게 꺼내게 해주는 기술. JSP에서는 주로 보관소에 들어 있는 값을 꺼낼 때 사용. EL을 사용하면 액션 태그를 사용하는 것보다 훨씬 더 간단히 보관소에 들어 있는 객체에 접근하여 값을 꺼내거나 메서드를 호출할 수 있다. *검색범위 지정: pageScope → JspContext requestScope → ServletRequest sessionScope → HttpSession applicationScope → ServletContext **EL이 공유공간에 접근할 때 영역(Scope)을 지정하지 않으면 pageScope-> requestScope -> sessionScope -> applicat.. 2019. 6. 10. [JSP] JSP의 주요 구성 요소(템플릿 데이터, JSP 지시자, 스크립트릿, JSP 선언문, JSP 표현식) 1. 템플릿 데이터 ; 클라이언트에 전송될 데이터를 가지고 있으며, JSP 엔진이 자동으로 자바 코드를 생성한다 JSP 계산기 + - * / out.write("\n"); out.write("\n"); out.write("\n"); out.write("\n"); out.write("JSP 계산기\n"); 2. JSP 지시자 ; JSP에서 사용할 프로그래밍 언어 지정 ; 인코딩 타입 지정 ; JSP 페이지에 선언할 클래스 또는 패키지 정보 2019. 6. 3. [JSP] JSP의 구동 원리 뷰 컴포넌트에서 JSP를 사용하는 목적은 HTML로 직접 처리할 수 있어 화면 만들기가 더 쉬워지기 때문이다. (JSP가 없으면 서블릿 자바코드 안에 HTML 코드를 넣어야 하는 번거로움이 있다.) 즉, JSP는 서블릿과 같은 기능을 하면서 HTML로 직접 처리를 할 수 있다. 예시를 통해 확인해보자. 위와 같은 코드를 실행했을 때 내부적으로는 다음과 같은 일이 벌어지고 있다. JSP 엔진이 JSP를 서비스 하기 전에 자바 클래스 파일을 생성한다. 빨간 박스 안의 코드를 JSP 지시자라고 부르는데, 이 JSP 페이지가 Java로 컴파일 될 것을 의미하며, 내부적으로는 자바코드가 생성된다. 따라서 JSP 안에는 브라우저에 출력될 템플릿 데이터와 자바 출력문 두 가지가 포함되어 있음을 확인할 수 있다. /*.. 2019. 6. 3. [Java] 16. Annotation의 개념과 활용 개념 *애노테이션(Annotation) ; 일명 메타 데이터, JDK5에 포함 *용도 1) 컴파일러에 정보를 알려준다 2) 컴파일할때와 설치시의 작업을 지정한다 3) 실행할 때 별도의 처리가 필요할 때 4) 환경설정 파일을 대신할 때 *java standard version @Override : 인터페이스, 추상클래스 상속시 @Deprecated : 더이상 유효하지 않은, 사용 안 했으면 @SuppressWarnings : error(무조건 고쳐야 실행됨), warning(실행은 되지만 위험성을 경고) *java Enterprise edition @WebServlet ... @Target.키워드 (적용대상) - TYPE : 클래스/인터페이스/열거형 - ANNOTATOIN_TYPE : 어노테이션 - FIE.. 2019. 6. 3. [JSP] get request vs. post request 비교 Get 요청 방식 Get 요청의 특징은 브라우저 상에 요청하는 정보가 노출됨 (url에 데이터가 포함됨) → 보안 취약, 대용량 데 이터 전송이 불가하다. 1) 웹 브라우저의 주소창에 주소를 입력 후 실행할 때 2) 링크를 클릭할 때 3) 입력폼의 method 속성을 get으로 지정했을 때 + - * / Post 요청 방식 Post 방식 url에 데이터가 포함되지 않고 주소만 나오며, 데이터는 메세지 본문에 포함.(Charles, Fiddler, Burp Suite 등의 프록시 툴로 본문 확인 가능) 바이너리 및 대용량 데이터의 전송이 가능해진다. 1) 로그인 폼 : 로그인 폼은 입력값 노출을 방지하기 위해 Post 방식을 사용한다 아이디: 암호: 2) 입력폼의 method 속성을 post로 지정했을 때.. 2019. 5. 31. 이전 1 2 3 4 5 6 7 8 ··· 12 다음