반응형

전체 글 2438

Java : Spring : MyBatis : 개념, 예제, 방법, 구현

MyBatis Spring Framework에서 제공하는 JDBC 라이브러리를 보다 쉽게 작업할 수 있도록 만든 라이브러리입니다. Mapper의 역할을 확장하여 쿼리문 작성을 모두 Mapper에서 할 수 있도록 지원합니다. Spring Framework의 대표적 JDBC 라이브러리입니다. pom.xml 4.0.0 kr.co.softcampus MyBatis 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 11.2.0.3 2.7.0 3.5.2 oracle ORACLE JDBC Repository http://code.lds.org/nexus/content/groups/main-repo org.springframework spring-context ${..

SW/Java 2020.06.16

Java : Spring : JDBC : 개념, 사용, 방법, 예제, 구현

Spring JDBC Spring Framework는 JDBC 프로그래밍을 위해 JdbcTemplate 클래스를 제공합니다. JdbcTemplate 클래스는 SQL 쿼리문을 손쉽게 구현할 수 있도록 구현되어 있습니다. 라이브러리드 추가 Spring Framework는 JDBC 프로그래밍을 위해 JdbcTemplate 클래스를 제공하고 있습니다. JdbcTemplate 클래스는 SQL 쿼리문을 손쉽게 구현할 수 있도록 구현되어 있습니다. pom.xml 4.0.0 kr.co.softcampus AOPXML 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 11.2.0.3 2.7.0 oracle ORACLE JDBC Repository http://code..

SW/Java 2020.06.15

Java : Spring :AspectJ 어노테이션 : 개념, 사용, 방법, 예제, 구현

@AspectJ @AspectJ 어노테이션을 활용해 Advisor 역할을 할 Bean을 설정할 수 있습니다. 지원 어노테이션 @Before : 관심사 동작 이전에 호출됩니다. @After : 관심사 동작 이후에 호출됩니다. @Around : 관심사 동작 이전 이후를 의미합니다. @AfterReturning : 예외 없이 정상적으로 종료되었을 때 호출됩니다. @AfterThrowing : 예외가 발생하여 종료되었을 때 호출됩니다. pom.xml 4.0.0 kr.co.softcampus AOPJava 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 org.springframework spring-context ${org.springframework-ve..

SW/Java 2020.06.14

Java : Spring : Execution 명시자 : 종류,개념, 사용 방법, 예제, 구현

Execution 명시자 Pointcut을 지정할 때 사용하는 문법입니다. execution : 접근 제한자, 리턴 타입, 클래스이름, 메서드 이름(매개변수) 접근 제한자 : pulic만 지원됩니다. 리턴타입 : 메서드의 매개변수 타입 클래스 이름 : 패키지를 포함한 클래스 이름 메서드 이름 : 메서드의 이름 매개변수 : 매개변수의 형태 * : 하나의 모든 것을 의미합니다. .. : 개수 상관없이 모든 것을 의미합니다. pom.xml 4.0.0 kr.co.softcampus ExecutionDirective 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 org.springframework spring-context ${org.springframew..

SW/Java 2020.06.13

Java : Spring : AOP 기본 개념, 용어, 구현, 예제

AOP Aspect Oriented Prograaming은 관정 지향 프로그래밍이라 합니다. 하나의 프로그램을 관점이라는 논리적인 단위로 분리하여 관리하는 개념입니다. 로깅, 감시, 선언적 트랜잭션, 보안, 캐싱 등 다양한 곳에서 사용되고 있습니다. 메소드 호출을 관심사로 설정하여 AOP에 관한 실습을 진행합니다. 관심사를 통해 Spring Framework가 어떤 메서드가 호출되는지 관심있게 지켜보다가 특정 메서드가 호출되면 자동으로 메서드 전과 후에 다른 메서드가 호출될 수 있도록 합니다. Spring AOP 용어 - Joint Point : 모듈이 삽입되어 동작하게 되는 특정 위치를 의미합니다. - Point Cut : 다양한 Joint Point 중에 어떤 것을 사용할지 선택합니다. - Advic..

SW/Java 2020.06.12

Java : Spring : 자동 주입 : 예제, 구현

자동 주입 Bean을 정의할 떄 주입할 객체는 생성자를 통한 주입이나 setter를 통한 주입을 사용했습니다. spring에서는 객체를 주입할 떄 자동으로 주입될 수 있도록 설정할 수 있습니다. 자동 주입은 이름, 타입, 생성자를 통할 수 있습니다. auto wire라는 용어로 부릅니다. 이름을 통한 주입 byName : 빈 객체의 프로퍼티 이름과 정의된 빈의 이름이 같은 것을 찾아 자동으로 주입합니다. 타입을 통한 주입 byType : 빈 객체의 프로퍼티 타입과 정의된 빈의 타입이 일치할 경우 주입됩니다. 이 떄, 동일 타입의 빈이 두 개 이상 정의되어 있으면 오류가 발생합니다. 생성자를 통한 주입 constructor : 생성자의 매개 변수 타입과 정의된 빈의 타입이 일치할 경우 주입됩니다. 이 때,..

SW/Java 2020.06.11

Java : Spring : bean 컬렉션 주입 : 개념, 예제, 구현

컬렉션 주입 Bean을 정의할 떄 주입해야 하는 멤버가 컬렉션인 경우 컬렉션이 관리할 객체를 초기에 설정할 수 있습니다. 주로, List, Map, Set Property를 사용하도록 합니다. beans.xml 문자열1 문자열2 문자열3 100 200 300 문자열1 문자열2 문자열3 문자열3 문자열3 100 200 300 300 300 문자열1 문자열2 문자열3 문자열1 문자열2 문자열3 DataBean.java package kr.co.softcampus.beans; public class DataBean { } TestBean.java package kr.co.softcampus.beans; import java.util.List; import java.util.Map; import java.uti..

SW/Java 2020.06.10

jQuery, Java Script : AJAX에서 빌드 드롭 다운 : 예제, 구현

최근 프로젝트에서 HTML 선택 드롭 다운을 채울 많은 AJAX 요청을 수정해야했습니다. 이 게시물에서는 AJAX 요청의 반환을 처리하고 드롭 다운을 채울 방법을 간략하게 보여줍니다. 먼저 ID 속성을 사용하여 페이지에 HTML 드롭 다운을 만듭니다. 다음으로 jQuery에서 urlPath에 대한 AJAX POST를 생성하여 JSON 객체에 필요한 데이터를 반환합니다. 이 AJAX 요청이 리턴되면 응답을 구문 분석하고 작성할 helpers.buildDropdown 함수에서 이를 사용합니다. $.ajax({ type: "POST", url: urlPath, success: function(data) { helpers.buildDropdown( jQuery.parseJSON(data), $('#dropdow..

SW/JavaScript 2020.06.09

jQuery, Java Script : Form에 삭제 확인 모달 추가 : 예제, 구현

이 튜토리얼에서는 삭제와 같은 것을 위해 form에 확인 모달 상자를 추가하는 방법입니다. 대부분의 튜토리얼은 한 가지 목적으로 설계된 양식 으로이 작업을 수행하는 방법과 양식에 채워진 엔티티를 삭제하는 방법에 대한 예만 보여줍니다. 즉, 삭제를 위해 제출 버튼이 하나만 있음을 의미합니다 . form에 두 개의 제출 단추가있는 대화 상자를 추가하는 방법을 보여줍니다. 즉, 하나의 제출 단추를 사용하여 엔티티를 편집하고 다른 제출 단추를 사용하여 form을 삭제하는 편집 양식에서 이 예제를 사용할 수 있습니다. HTML Form And Modal Box 먼저 HTML 양식을 만들어 시작하겠습니다. 중요한 부분은 제출 버튼과 JavaScript이므로 이 예제를 매우 기본적입니다. 아래는 모달 상자 내용이 아..

SW/JavaScript 2020.06.08

Java Script, jQuery : 스크립트 동적 로드 : 방법, 예제, 구현

웹 사이트 속도를 높이는 일반적인 방법은 지연 로딩이라는 기술을 사용하는 것입니다. 즉, 처음에 페이지에 필요한 모든 것을 로드하는 대신 필요할 때만 리소스를 로드합니다. 예를 들어 이미지를 느리게 로드 할 수 있으므로 페이지를 올바르게 보는 데 필요한 이미지로만 페이지를 시작할 수 있으며, 보이지 않는 다른 이미지는 바로로드 할 필요가 없습니다. 사용자가 페이지를 아래로 스크롤하면 이미지를 볼 수 있는지 찾고 필요할 때 이미지를 느리게 로드 할 수 있습니다. JavaScript 또는 CSS 파일과 같은 다른 리소스를 사용하여 동일한 작업을 수행 할 수 있으며 스크립트를 언제 사용해야하는지 스크립트에 로드 할 수 있습니다. 과거에 사용한 예는 버튼의 클릭 이벤트에 Disqus 주석을 로드하는 것입니다. ..

SW/JavaScript 2020.06.07

SERVICE MASHUPS, MICROSERVICES : 개념, 개요, 설명, 정의

Service Mashups 웹 환경에서 Mashup이라는 개념이 등장하게 되었습니다. 이것은 하나 이상의 Resource로부터 데이터를 수집하고 통합해서 웹 애플리케이션 만듭니다. 최근에는 이 개념이 Service Mashup까지 포함돼서 확장이 되었습니다. Service Mash-ups Architecture Service Mashup은 앞에서 배우셨던 OpenAPI를 사용해서 다양한 서비스로부터 콘텐츠와 기능들을 받아 통합함으로써 애플리케이션을 제작합니다. Mashup에는 OpenAPI 뿐만 아니라 RSS와 같은 Web Feed도 많이 활용합니다. 서비스 Mashup을 위한 아키텍처는 일반적으로 세 가지 요소로 구성됩니다. 먼저 Mashup할 콘텐츠를 제공하는 Content Provider가 있습니..

Open API 아키텍처 : 개념, 개요, 설명, 정의

OpenAPI OpenAPI는 Application Programming Interface, 즉 API가 오픈되었다는 의미입니다. OpenAPI는 웹사이트의 정보와 서비스 기능을 API를 통해 직접 접근할 수 있도록 합니다. 웹사이트 상호간 또는 웹사이트와 애플리케이션이 서로 연동될 수 있도록 하기 위한 것으로서 Web 2.0 트렌드의 가장 중요한 기술 중에 하나입니다. 즉, OpenAPI를 사용하면 우리는 다른 웹사이트로부터의 서비스를 Outsourcing해서 사용할 수 있습니다. OpenAPI를 사용할 수 있도록 하는 기술적 방법의 대표적인 것은 JavaScript와 같은 웹애플리케이션 구현 언어를 사용하는 Language API, SOAP RPC를 사용하는 방법, REST 기술을 사용합니다. Ope..

클라우드 컴퓨팅 : 개념, 특징, 개요, 설명, 종류

클라우드 컴퓨팅 클라우드란 분산 컴퓨팅을 위한 플랫폼입니다. 이 클라우드에 연결된 컴퓨터와 각종 기기들이 컴퓨팅 자원과 데이터를 On Demand로 필요에 따라 공유하고 활용할 수 있도록 하는 환경입니다. 클라우드를 통해 공유 가능한 컴퓨팅 자원으로는 네트워크, 서버, 저장소, 애플리케이션, 서비스 등이 있습니다. 클라우드 컴퓨팅 특징 이러한 클라우드 컴퓨팅 환경은 몇 가지 중요한 특징들이 있습니다. 먼저 매우 Scalable하고 Dynamic한 인프라스트럭처입니다. 즉, 많은 사용자들이 필요에 따라 가상의 서버와 저장 공간을 클라우드에서 동적으로 할당받아 사용할 수가 있습니다. 두 번째 특징은 언제 어디서나 이러한 자원들을 Access할 수 있습니다. 즉, 네트워크 연결만 있으면 클라우드 자원들을 언제..

REST API 아키텍처 : 개념, 방법, 개요, 설명

Representational State Transfer (REST) Language API를 사용하는 것뿐만 아니라 최근에는 REST라고 하는 방법을 사용하여 OpenAPI 서비스들을 제공하는 웹사이트들이 늘어나고 있습니다. REST는 Representational State Transfer의 약자로서 웹의 분산된 Hypermedia 콘텐츠를 접근하기 위해 개발된 Software Architecture Style입니다. 이 REST 아키텍처에서는 웹의 각 Hypermedia 자원이 고유한 주소를 가지고 있습니다. 이 자원에 대한 수정이 HTTP 인터페이스를 통해 Domain Specific한 데이터를 전송함으로써 이루어지게 됩니다. 즉, SOAP을 활용해서 메시지를 전달할 필요가 없이 애플리케이션에서 ..

서비스 기반 아키텍처 스타일 : 방법, 종류, 정의, 개요, 개념

SOA Layers 이 서비스 기반 아키텍처, 즉 SOA는 소프트웨어 아키텍처 스타일입니다. 이 아키텍처 스타일은 서비스 공급자가 제공하는 서비스를 서비스 소비자가 메시지를 주고받으면서 활용하는 기본 구조를 가집니다. SOMA 방법론에서와 같이 엔터프라이즈 SOA 구축을 위해서는 몇 개의 계층, 즉 Layer에 걸쳐서 분석과 모델링 과정이 필요합니다. 여기 보시는 그림은 SOA를 계층적인 아키텍처 스타일로 표현합니다. 이 아키텍처 스타일에서 맨 아래에 있는 Operational Systems Layer가 있습니다. 이 Layer에는 그 기업이 보유하고 있는 기존의 CRM이나 ERP 같은 레거시 시스템들이 표현되어 있습니다. 이 Operational Systems Layer 위에는 Enterprise Co..

서비스 지향 아키텍처 모델링 언어 : SoaML : 개요, 개념, 방법, 정의

SoaML SOMA 방법론은 서비스를 식별하고 명세하고 구현하는 전반적인 틀과 절차를 정의합니다. SoaML은 이러한 서비스 모델링 과정에서 사용할 수 있는 구체적인 언어 그리고 표현 방법을 제공합니다. SoaML은 Object Management Group, 즉 OMG에서 개발한 오픈소스 서비스 Specification 방법입니다. SoaML은 소프트웨어 모델링에 널리 사용되고 있는 Unified Modeling Language(UML)을 기반으로 합니다. SOA 구축을 위한 서비스 모델링과 디자인을 위한 여러 방법을 제공합니다. SoaML의 공식 웹사이트는 www.soaml.org입니다. SoaML을 위한 다양한 도구가 개발되었습니다. Modeling Capabilities of SoaML SoaML..

Java Script, jQuery : Adaptive Backgrounds jQuery Plugin : 예제, 구현, 방법

최근에 포함하는 div의 배경색을 변경하는 데 유용한 리소스를 찾았습니다. 이것은 이미지에서 가장 지배적 인 색상을 검색하고 요소 배경을 포함하는 색상을이 색상으로 변경하는 jQuery 플러그인입니다. 단 몇 줄의 Javascript로 멋진 쇼케이스 페이지를 만들 수 있습니다. 이 플러그인을 jQuery Adaptive Background Plugin이라고합니다. 이 jQuery 플러그인을 사용하려면 다음과 같이 div를 감싸는 많은 이미지가 있는 페이지가 있어야합니다. 플러그인이 실행되면 data-adaptive-background 속성을 가진 이미지를 검색하고 이 이미지에서 지배적인 색상을 찾습니다. 다음을 사용하도록 Javascript를 설정하려면 먼저 Github 프로젝트 페이지에서 플러그인을 다..

SW/JavaScript 2020.05.31

서비스 아키텍처 : 서비스 모델의 필요성 : 개념, 정의, 개요

서비스 기반 모델링 먼저 이 비즈니스 도메인 자체를 잘 이해하고 시뮬레이션 할 수 있어야 합니다. 그러한 것을 잘하기 위해서는 먼저 사용자가 사용해야 되는 서비스가 무엇이고 그 주요 특성과 기능들이 무엇인지를 먼저 잘 표현해야 합니다. 그래서 서비스 기반의 모델링이라는 것은 엔터프라이즈 시스템 구축의 문제를 체계적이고 전략적으로 풀기 위해서 소프트웨어 모델링의 원칙과 기술을 효과적으로 활용하는 것을 의미합니다. 세 가지 원칙이 있습니다. 첫째는 Virtualization, 즉 가상화입니다. 가상화의 원칙은 서비스의 행위, 구조, 관계를 매우 높은 수준에서 모델링해야 한다는 의미를 말합니다. 두 번째는 서비스 모델링의 원칙은 Metamorphosis, 즉 변화에 대한 반영이 필요하다는 것입니다. 비즈니스 ..

Java Script, jQuery : 클립보드 복사 : 예제, 구현, 방법

이 튜토리얼은 이제 구식입니다. Javascript 복사 및 붙여 넣기에서 자세한 정보를 찾을 수있는 기본 브라우저 복사 및 붙여 넣기 기능을 사용하는 것이 좋습니다. 최근 프로젝트에서는 사용자의 클립보드에 텍스트를 복사하는 단추를 만들어야 했습니다. 버튼 클릭 이벤트에서 이것을 만들려고 할 때 Javascript 또는 jQuery로 하고 싶었습니다. 이 문제에 대한 조사를 실시한 결과, 보안 때문에 클립보드에 JavaScript를 복사할 수 없다는 것을 알게 되었습니다. 이는 jQuery가 텍스트를 클립보드에 복사할 수 없다는 것을 의미하기도 했습니다. 그래서 다른 방법을 찾아야 했습니다. 한참 검색해보니 지투브에서 호스팅되는 jQuery 플러그인이 ZeroClipboard입니다. Adobe 플래시와 ..

SW/JavaScript 2020.05.30

마이크로서비스 : 서비스 간 연계 구현 : 방법, 개념, 개요

쇼피몽 서비스 업무 흐름 마이크로서비스들 간의 동기 및 비동기 연동 기능을 구현해서 고객이 상품을 구매하는 쇼핑몰 시스템의 주요 프로세스를 구현하고 테스트해 보았습니다. 이 쇼핑몰 시스템의 여러 업무 중 상품 구매를 위한 프로세스를 구현합니다. 이 프로세스를 좀 더 자세히 설명하면, 구매자가 상품구매를 위해 구매할 상품과 수량을 입력하면 Account 서비스로 구매자에 해당하는 주소정보를 조회해서 가져옵니다. Product 서비스로 구매하려는 상품의 가격정보를 조회해서 가져옵니다. 구매자가 가져온 주소와 상품의 가격을 확인하고 최종 구매를 결정하면, 이 정보가 배송 서비스로 전달됩니다. 이 상품 구매 프로세스를 동작하게 하기 위한 각 서비스간의 동기 및 비동기 방식의 연동 기능을 구현하고 테스트합니다. ..

반응형