스프링 프레임워크 기반 개발에서 가장 자주 사용되는 컨텍스트 설정과 관련된 어노테이션 @Scope, @Autowired, @Resource, @Inject, @Required, @Named, @Order, @PostConstruct, @PreDestroy와 관련된 간단한 설명 입니다.
자바개발시 모델객체를 생성할 때 setter/getter/toString/hashCode/equals 메소드를 만드는데 이럴 경우 클래스 파일의 소스가 길어지고 복잡해지는데, 이를 해결하기 위해 롬복(Lombok)을 사용하죠, 자바개발 하시는 분이라면 알아두시면 유용하리라 생각 됩니다.
탑크리에듀교육센터(www.topcredu.co.kr)제공
스프링프레임워크 & 마이바티스(Spring Framework, MyBatis)
16번째 자료입니다. 참고하시어 많은 도움되셨길 바랍니다.
교육 및 수강문의/기타문의사항은 홈페이지(www.topcredu.co.kr)를 통하여 하실 수 있습니다.^^
스프링 프레임워크 기반 개발에서 가장 자주 사용되는 컨텍스트 설정과 관련된 어노테이션 @Scope, @Autowired, @Resource, @Inject, @Required, @Named, @Order, @PostConstruct, @PreDestroy와 관련된 간단한 설명 입니다.
자바개발시 모델객체를 생성할 때 setter/getter/toString/hashCode/equals 메소드를 만드는데 이럴 경우 클래스 파일의 소스가 길어지고 복잡해지는데, 이를 해결하기 위해 롬복(Lombok)을 사용하죠, 자바개발 하시는 분이라면 알아두시면 유용하리라 생각 됩니다.
탑크리에듀교육센터(www.topcredu.co.kr)제공
스프링프레임워크 & 마이바티스(Spring Framework, MyBatis)
16번째 자료입니다. 참고하시어 많은 도움되셨길 바랍니다.
교육 및 수강문의/기타문의사항은 홈페이지(www.topcredu.co.kr)를 통하여 하실 수 있습니다.^^
Scala, Spring-Boot, JPA를 활용한 웹 애플리케이션 개발 과정에 대해 다룬다. Spring-Boot와 JPA 조합만으로도 생산성 있는 웹 애플리케이션 개발이 가능하다. 이 조합만으로도 충분히 의미가 있지만 여기에 Scala라는 약간은 불편한 듯 보이는 언어를 도입함으로써 얻을 수 있는 즐거움을 공유한다. Spring-Boot + JPA 조합에 Scala를 적용하면서의 좌충우돌 경험담을 전한다.
오픈소스 검색엔진인 Elasticsearch 어떻게 저장하고 조회하는지 검색엔진의 개념에 대해서 간단히 살펴보고, Node.js 로 구현된 아주 간단한 예제를 소개합니다.
- 검색엔진과 Elasticsearch 소개
- Elasticsearch에서의 색인
- Elasticsearch에서의 조회
- Node.js 로 구현된 예제 소개
* 자바카페
자바카페 페이스북 : https://www.facebook.com/groups/javacafe/
자바카페 기술 블로그 : http://tech.javacafe.io/
Pesawat Perang Dunia 1 memainkan peran penting dalam perang, terutama setelah penambahan senjata api pada pesawat yang memicu munculnya pesawat tempur. Salah satu jenis pesawat tempur yang digunakan adalah AEG C.IV, yang memiliki spesifikasi seperti mesin tunggal 160 Kuda dan dua kursi untuk pilot dan pengamat.
Scala, Spring-Boot, JPA를 활용한 웹 애플리케이션 개발 과정에 대해 다룬다. Spring-Boot와 JPA 조합만으로도 생산성 있는 웹 애플리케이션 개발이 가능하다. 이 조합만으로도 충분히 의미가 있지만 여기에 Scala라는 약간은 불편한 듯 보이는 언어를 도입함으로써 얻을 수 있는 즐거움을 공유한다. Spring-Boot + JPA 조합에 Scala를 적용하면서의 좌충우돌 경험담을 전한다.
오픈소스 검색엔진인 Elasticsearch 어떻게 저장하고 조회하는지 검색엔진의 개념에 대해서 간단히 살펴보고, Node.js 로 구현된 아주 간단한 예제를 소개합니다.
- 검색엔진과 Elasticsearch 소개
- Elasticsearch에서의 색인
- Elasticsearch에서의 조회
- Node.js 로 구현된 예제 소개
* 자바카페
자바카페 페이스북 : https://www.facebook.com/groups/javacafe/
자바카페 기술 블로그 : http://tech.javacafe.io/
Pesawat Perang Dunia 1 memainkan peran penting dalam perang, terutama setelah penambahan senjata api pada pesawat yang memicu munculnya pesawat tempur. Salah satu jenis pesawat tempur yang digunakan adalah AEG C.IV, yang memiliki spesifikasi seperti mesin tunggal 160 Kuda dan dua kursi untuk pilot dan pengamat.
This document presents a social media plan for Chop't Creative Salad Company to position itself as the go-to healthy, fast-casual dining option for consumers ages 18 to 34. The plan focuses on increasing brand awareness and mission across Twitter, Instagram, and Pinterest. It recommends developing a consistent campaign across these platforms using copywriting, graphics, and video. Key objectives include increasing Chop't messaging by 10% across platforms and creating weekly branded content. The plan provides analytics tools and metrics to measure objectives and campaign success in driving leads and engagement. It analyzes Chop't's competitors and proposes strategic use of hashtags, multimedia, and engagement on Twitter and Instagram.
Business Process Managmenet & Intelligent BPM Suitesshyjusr
The document provides an introduction to business process management (BPM) and intelligent BPM software suites. It discusses key concepts of BPM like the three pillars of people, process, and technology. It also describes the typical BPM lifecycle of design, modeling, simulation, execution, monitoring and optimization. Finally, it outlines some popular iBPM software suites and their main components and features, which include BPMN process modeling, BPEL implementation, process servers, integration, content management, event management, and transaction management.
The poem celebrates the beauty of the world in the first few lines, describing it as great, wide, and beautifully dressed. It then notes that while the world is so great, the speaker feels small in comparison. However, in the final lines, the perspective shifts as the speaker realizes that despite being small, they are greater than the earth because they possess the abilities to love and think, unlike the earth.
How Online Predators Threaten Our ChildrenTeenSafe
Did you know that more than 500,000 sexual predators are online EVERY day? Learn how predators target and engage children, and what you can do if you think your child has been contacted by a predator.
Dokumen tersebut membahas tentang konsep budi bahasa rakyat Malaysia. Ia menjelaskan pengertian budi, bahasa, dan budi bahasa serta ciri-ciri budi bahasa. Dokumen juga menyoroti unsur-unsur budi bahasa dalam masyarakat Malaysia seperti menghormati orang tua, memberi salam, derma darah dan wang, serta meminta maaf.
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and
offering a wide range of dental certified courses in different formats.for more details please visit
www.indiandentalacademy.com
Materials in orthodontics /certified fixed orthodontic courses by Indian den...Indian dental academy
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and offering a wide range of dental certified courses in different formats.
Indian dental academy provides dental crown & Bridge,rotary endodontics,fixed orthodontics,
Dental implants courses.for details pls visit www.indiandentalacademy.com ,or call
0091-9248678078
الترويج الذاتي على منصات الإعلام الاجتماعيDigiArabs
This document discusses personal branding and provides tips for cultivating an effective personal brand on social media. It emphasizes focusing on your strengths, weaknesses, passions and values to craft a clear brand identity. It recommends developing branding elements like a logo, business cards, username and website to represent your brand consistently across platforms. The document stresses regularly providing valuable, engaging content to build your online community and establish deeper connections with your audience.
제 14회 한국 자바 개발자 컨퍼런스의 커뮤니티 세션에서 공유한 `overview of spring4` 의 발표 자료
스프링 프레임워크는 2004년에 출시된 이후 지금까지 많은 변화를 겪어왔습니다. 기억에 남아 있는 굴직한 변화를 더듬어 보면 버전 2.0은 XML 네임스페이스와 AspectJ 지원, 버전 2.5부터 애노테이션을 활용한 프로그래밍 기능이 추가되었습니다. 그리고 버전 3.0으로 올라가며 Java 5+ 기반으로 코드 구조가 바뀌고 자바 코드 기반 설정 기능이 추가되었습니다. 2013년 12월 13일에 버전 4.0 발표이 발표되었습니다. 주목할 변화는 바로 Java 8 지원과 제거 대상(@Deprecated)으로 선언되었던 많은 클래스와 메소드들이 삭제되었다는 것입니다. 이 외에도 많은 변화가 있습니다. 이번 시간에는 조금 높은 곳에서 내려다보는 느낌으로 무엇이 추가되었고, 어떤게 바뀌었는지 살펴보려고 합니다.
예제코드 : https://github.com/arawn/overview-of-spring4
스프링군살없이세팅하기(The way to setting the Spring framework for web.)EunChul Shin
깔끔하게 스프링 프레임워크 세팅하는 것에 대한 이야기 입니다.
군살없이 프레임워크를 세팅한다는 의미와 이유, 그리고 스프링 기본 설정 및 설정들의 역할에 대해서 정리해 보았습니다.
This presentation is about Spring framework.
I want to talk about the way to setting the spring framework as tidy in this presentation.
탑크리에듀교육센터(www.topcredu.co.kr)제공
15번째 스프링프레임워크 & 마이바티스(Spring Framework, MyBatis)자료입니다.
Spring JDBC에서 DB 접근하는 방법, Spring JDBC에서 DB 접근하는 방법 – jdbcTemplate, Maven, Gradle에서 오라클 설정에 대해 설명한 자료이니 많은 참고 바랍니다.
spark 1.6을 기준으로 spark sql에 대해서 개략적으로 설명한 자료입니다. 발표 자료가 친절하지 않으나 한글로 된 자료가 없길래 혹시나 도움 되시는 분들이 있을까 하여 공유합니다.
발표자료 보다는 마지막 페이지의 참고자료들을 읽어보시기를 권장 드립니다.
출처만 남겨주시면 자유롭게 가져가셔서 사용하셔도 무방합니다.
The MyBatis data mapper framework makes it easier to use a relational database with object-oriented applications. This document explain about MyBatis basic concept.
스프링 컨테이너는 base-package의 클래스를 검색해서 자동으로 자바빈으로 등록하는데 이에 해당하는것이 @Component, @Repository, @Service, @Contoroller, @RestController 어노테이션이다.
자동스캔을 위해서는 <context:component-scan /> 과 같이 base-package를 기술하며, 패키지가 여럿인 경우, 콤마로 구분하여
기술한다.
2. JSTL은 무엇인가?
자바 코드에 익숙하지 않은
개발자들도 Custom tag를 통해 jsp 개발을 할 수 있다.
Custom tag 중 널리 쓰이는 것을 모아
심사를 거쳐 표준으로 만든 라이브러리 모음이다.
코드의 가독성, 재사용성이 향상되어 널리 쓰이고 있다.
3. JSTL을 가지고 하는 일
태그종류 prefix 설명 URI
Core c 변수선언 / 출력 / 조건식 등 실행흐름제어
http://java.sun.com/
jsp/jstl/core
Formatting fmt 숫자, 날짜, 시간을 포메팅 함
http://java.sun.com/
jsp/jstl/fmt
Database sql DB의 데이터 CRUD기능을 제공
http://java.sun.com/j
sp/jstl/sql
XML x Xml문서 처리
http://java.sun.com/j
sp/jstl/xml
Function fn 문자열에 제공하는 함수, EL(Expression Language)에서 사용
http://java.sun.com/j
sp/jstl/functions
6. 1.Core tag(1)
<c:out>
데이터를 출력할 때 사용
<c:out value="값" escapeXml="boolean"/>
<c:set>
변수를 설정 할 때 사용
<c:set var="변수명" value="값" [scope="영역"] />
set을 통해 객체 멤버 변수 값을 설정 할 수도 음
<c:set target="대상" property=“이름" value="값" />
<c:remove>
set태그로 지정 된 변수를 삭제할 때 사용
<c:remove var="var명" scope="영역" />
<c:catch>
예외메세지를 잡을 때 사용한다.
<c:catch var="변수명">
7. 1.Core tag(2)
<c:if>
조건에 따른 행동을 수행함
<c:if test="조건"> . . . </c:if>
<c:choose>/<c:when>/<c:otherwise>
Switch/if-else 문을 합쳐 놓은 형태
Test>조건
<c:url>
<c:url value="URL" var="변수명", scope="영역">
<c:params>
url에 parameter를 추가해 줄 수 있다.
<c:param name="이름", value="값">
<c:redirect>
지정한 페이지로 redirect해주는 기능을 합니다.
<c:redirect url="URL">
8. 1.Core tag(3)
<c:import>
특정 url결과를 읽어와 현재 위치에 삽입하거나 외부의 자원을 불러올때 사용
<c:import url="URL" var="변수명" scope="영역" charEncoding="캐릭터셋">
<c:foreach>
for,while문과 같은 반복문
<c:forEach var="변수" items="아이템" begin="시작값" end="끝값" step="증가값">
<c:forTokens>
Item속성으로 넘겨받은 문자열을 delims구분자를 통해 나눠준다.
<c:forTokens var="token" items="문자열" delims="구분자">
9. 2.Function tag(1)(EL에서 사용)
${fn:length(~)}
:길이를 반환해준다.
${fn:toUpperCase(~)}
${fn:toLowerCase(~)}
:각각 대소문자로 바꿔준다.
${fn:substring(str1,3,10)}
:str1문자열에서 3~10번째 문자열을 빼서 출력하시오
${fn:substringAfter(str1,str2)}
:str1에서 str2가 나온 이후의 문자열을 출력하시오
${fn:substringbefore(str1,str2)}
:str1에서 str2가 들어간 이전 문자열을 출력하시오
${fn:replace(str1,”a”,”b”)}
:str1에서 a를 b로 바꿔준다.
10. 2.Function tag(2)(EL에서 사용)
${fn:indexOf(str1,str2)}
:str1에서 str2가 포함된 곳의 인덱스를 출력함
${fn:startsWith (str1,”aa”)}
:str1문자열에서 my로 시작 하는가를 boolean으로 알려줌
${fn:endsWith(str1,”aa”)}
:str1이 aa로 끝나는지를 boolean으로 알려줌
${fn:contains(str1,str2)}
:str1에 str2가 포함되는지를 알려줌
${fn:containsIgnoreCase(str1,str2)}
:대소문자 관계없이 str1에 str2가 포함되어 있는지 알려줌
${fn:split (array,’-’)}
:array를 –를 붙여 하나의 문자열로 만들어준다.
11. 3.Database tag
<sql:setDataSource>
:data source를 지정한다.
<sql:setDataSource
{dataSource="dataSource" | url ="jdbc Url“}
driver=“드라이버 클래스명"
user=“DB사용자계정“
password=“DB사용자비밀번호“
var=“Datasource 스펙저장"
scope="{page|request|session|application}"/>
<sql:query>
:query문을 사용할 수 있게 된다. 주로 결과set을 얻을 때 사용
<sql:query sql=“sqlQuery”
var="쿼리 결과 저장"
scope="{page|request|session|application}"
dataSource="dataSource"
maxRows="쿼리결과 포함 최대 행 수 “
startRow="시작 행" />
<sql:dataParam> / <sql:param>
:파라미터를 넘기는 방식은 날짜, 문자열이 있는데 날짜일때
dataParam, 문자열 일때 param을 쓴다.
<sql:dateParam value="value"type="{timestamp|time|date}"/>
<sql:param value="value"/>
<sql:update>
: query를 사용. 주로 적용된 행을 얻을 때 사용
<sql:update sql="sqlUpdate"
dataSource="dataSource"
var="varName"
scope="{page|request|session|application}"/>
12. 4.XML tag
<x:out>
Xpath의 값을 출력을 합니다.
<x:out select="<string>" escapeXml="<true|false>"/>
<x:if>
Xpath의 조건이 맞으면 해당 행동을 합니다.
<x:if select="XPathExpression" var="varName"[scope="{page|request|session|application}"]/>
<x:set>
Scope의 변수에 Xpath의 값을 저장시킴
<x:set var="<string>" select="<string>" scope="<string>"/>
<x:choose> / <x:when> / <x:otherwise>
Xml tag의 if-else 구문, 조건이 맞을 경우 수행
<x:when select="<string>">
<x:otherwise>
<x:choose>
<x:forEach>
반복문을 돌며 작업을 수행합니다.
<x:forEach
var="<string>"
select="<string>"
begin="<int>"
end="<int>"
step="<int>"
varStatus="<string>">
<x:parse>
xml file을 읽어 해당되는 tag로 파싱 시킨다.
<x:parse
var="<string>"
varDom="<string>"
scope="<string>"
scopeDom="<string>"
doc="<string>"
systemId="<string>"
filter="<string>"/>
13. 5.Formatting tag(1)
<fmt:requestEncoding>
요청파라미터에 맞게 캐릭터 인코딩을 지정한다.
<fmt:requestEncoding value="캐릭터셋" />
<fmt:message>
저장한 리소스 번들로 부터 메시지를 읽어와 실행한다
<fmt:bundle basename="번들명"><fmt:message key="키명">
<fmt:setLocale>
국제화 태그들이 사용할 로케일을 지정함
<fmt:setLocale value="언어코드_국가코드" scope="영역" />
<fmt:setBundle>
리소스 번들을 변수로 저장한 후 어디서든지 사용할 수 있게 됨
<fmt:setBundle var="변수명" basename="리소스번들명" />
<fmt:bundle>
사용할 메시지 번들을 지정한다.
<fmt:bundle basename="리소스번들명"> <fmt:message key="키명“>
15. 5.Formatting tag(3)
<fmt:formatDate>
날짜정보를 담고 있는 객체를 포매팅하여 출력한다.
<fmt:formatDate value="날짜값" type="타입" dateStyle="날짜스타일"
timeStyle="시간스타일" pattern="패턴" timeZone="타임존"
var="변수명" scope="영역" />
dateStyle>time / date
timeStyle>default / short / medium / long / full
<fmt:parseDate>
문자열로 된 날짜 / 시간 값을 java.util.Date()로 파싱한다.
<fmt:formatDate value="날짜값" type="타입" dateStyle="날짜스타일" timeStyle="시간스타
일" pattern="패턴" timeZone="타임존" parseLocale="로케일" var="변수명" scope="영역" />
<fmt:timeZone>
문자열로 된 날짜 / 시간 값을
java.util.Date()로 파싱한다.
<fmt:timeZone value=“이름">
<fmt:formatDate .. />
<fmt:setTimeZone>
액션태그가 실행된 뒤 이후의 모든
코드에 영향을 미친다.
<fmt:setTimeZone value="타임존명">
<fmt:formatDate . . . />