https://gs.saro.me/dev?tn=399





이전 강의에서 이것저것 많이 썼기 때문에, 이번 장에선 조금 쉴 겸 롬복을 다뤄보도록 하겠습니다. 롬복은 스프링에 관련된 것은 아니지만, 자바에서 전반적으로 사용할 수 있습니다. 스프링 또한 getter, setter 가 많이 쓰여, 소스가 어지러운 현상이 있기에 이번 장을 추가하게 되었습니다.

  • 롬복은 getter, setter 외에도 많은 기능들이 있습니다.
  • 참고 : /wiki?dn=70

이전 강의에 쓰여진 코드 일부

package com.first.jpa;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table(name="simple_comment")
public class SimpleComment implements Serializable
{
private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="comment_no")
private long comment_no;

@Column(nullable = false)
private String text;

@Column(insertable = false, updatable = false)
@Temporal(TemporalType.TIMESTAMP)
private Date datetime;

public long getComment_no()
{
return comment_no;
}
public String getText()
{
return text;
}
public void setText(String text)
{
this.text = text;
}
public Date getDatetime()
{
return datetime;
}
}

필요없는 getter, setter를 생략했는데도 소스가 get / set 으로 반은 차지하는 느낌이 듭니다.

1. 롬복을 설치해보자!

  • 이전 강의에서 작업했던 first 프로젝트를 불러옵니다.
  • pom.xml 의 <dependencies></dependencies> 사이에 아래 코드를 추가합니다.
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
<scope>provided</scope>
</dependency>
  • 롬복이 getter / setter 를 만들어주더라도 이클립스가 이를 인식해야 인텔리센스를 만들고 오류도 나지 않기 때문에 아래와 같은 작업을 해주셔야합니다. 방법 1
  • 메이븐repository경로/org/projectlombok/lombok/1.16.8/lombok-1.16.8.jar 실행 방법 2
  • https://projectlombok.org/mavenrepo/index.html 에서 lombok.jar 를 다운받아 실행. 실행이 안될때... 필자는 7zip을 쓰기 때문에 몰랐지만... 주변사람들 중 특정 압축 프로그램을 사용하고 있으면 jar를 해당프로그램이 선점하고있어서 압축파일이 열리는 경우가 있습니다. 해당 프로그램 옵션에서 제외하거나 java 명령어로 실행시켜주시면 됩니다. 실행 후 IDE(STS / 이클립스)를 찾아서 입력해줍니다. 이 과정이 끝나면 해당 IDE는 린트 / 오토컴파일 / 인텔리센스에서 롬복이 인식되어 사용할 수 있습니다. 기타
  • 이 과정에서 프로젝트 최상위에 오류표시가 되어있다면.
  • 우클릭 -> Maven -> Update Project 를 해주시면 됩니다.

2. 롬복을 적용해보자!

위 SimpleComment 클래스를 다음과 같이 바꿔줍니다.

package com.first.jpa;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import lombok.Data;
import lombok.Getter;
import lombok.Setter;

@Entity
@Table(name="simple_comment")
@Data
public class SimpleComment implements Serializable
{
private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="comment_no")
@Getter
private long comment_no;

@Column(nullable = false)
@Getter @Setter
private String text;

@Column(insertable = false, updatable = false)
@Temporal(TemporalType.TIMESTAMP)
@Getter
private Date datetime;
}
  • 이렇게 해서 훨씬 보기 깔끔해졌습니다.
  • 롬복을 사용할 클래스엔 @Data 를 써주고 @Getter @Setter 를 지정해주시면 됩니다.
  • 이제 직접 실행하여 제대로 작동하는지 확인해봅시다.

3. 좀 더 응용하면 아래와 같이 쓸 수 있습니다.

롬복을 적용하지 않은 예제 .......

import java.util.Date;

public class TextData
{
public long getNo()
{
return no;
}
public void setNo(long no)
{
this.no = no;
}
public String getSubject()
{
return subject;
}
public void setSubject(String subject)
{
this.subject = subject;
}
public String getText()
{
return text;
}
public void setText(String text)
{
this.text = text;
}
public String getLink()
{
return link;
}
public void setLink(String link)
{
this.link = link;
}
public Date getDate()
{
return date;
}
public void setDate(Date date)
{
this.date = date;
}

private long no;
private String subject;
private String text;
private String link;
private Date date;
}

롬복 적용

import java.util.Date;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

@Data
@Getter @Setter
public class TextData
{
private long no;
private String subject;
private String text;
private String link;
private Date date;
}
  • 까... 깔끔해!!

여기 까지 하셨다면 앞으로의 강의는 리눅스에 톰켓과 MySQL을 설치하고 war 배포를 해보는 강의를 하도록 하겠습니다.


Posted by w우주z
,

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

이클립스단축키

2015. 7. 20. 16:06

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

 

아웃룩의 기능 및 활용 방안에 대해 들어본 사람들은 아웃룩을 활용하고자 하나, 지금까지 오랫동안 엑셀 또는 휴대폰으로 관리해온 주소록을 활용하고자 한다.

그러나 기존의 주소록을 등록하는 과정에서 외부 주소록 '가져오기'라는 매우 기본적인 설정을 어렵게 생각하여 아웃룩의 세계로 감히 들어오지 못하는 경우가 있다.

 

여기서는 기존에 관리하던 주소록 또는 인맥 연락처가 엑셀로 되어 있을 경우(휴대폰으로 인맥 주소록을 관리하는 경우, 휴대폰 제조사에서 제공하는 프로그램으로 휴대폰 주소록을 엑셀로 변환할 수 있으므로 이 과정은 생략) 아웃룩 연락처로 가져오는 방법을 설명하고자 한다.

 

1. 먼저 엑셀 주소록 파일을 엑셀 프로그램에서 연다.

엑셀 주소록 파일에 있는 각 필드별로 잘못된 정보가 없는지 검토한다.

 

 

2. 해당 엑셀 주소록을 다른 이름으로 저장하되 파일 형식은 'CSV (쉼표로 분리) (*.csv)'으로 한다.

 

 

3. 다른 이름으로 저장한 주소록 파일이 CSV로 올바르게 저장되었는지 상단의 파일 제목을 통해 확인한다.

 

 

4. 아웃룩 프로그램의 파일 메뉴에서 '가져오기/내보내기'를 클릭한다.

 

 

5. 가져오기/내보내기 마법사에서 '가져오기-다른 프로그램이나 파일'을 선택한 후 다음을 클릭한다.

 

 

6. 가져올 파일 형식에서 '쉼표로 구분된 값(Windows)를 선택한 후 다음을 클릭한다.(DOS나 다른 형식을 선택하지 않도록 주의한다.)

 

 

7. 가져올 파일을 찾아보기를 통해 선택한다.

 

 

 

8. 가져올 파일을 선택했으면 옵션을 선택한 후 다음을 클릭한다.

  • 같은 항목은 가져온 항목으로 바꿈 : 엑셀 주소록이 가장 최신의 정보를 포함하고 있는 경우
  • 같은 항목을 둘 이상 만들 수 있음 : 특정 연락처 항목에 있어, 엑셀주소록과 아웃룩 연락처 모두에서 최신 정보를 포함하고 있을 경우
  • 같은 항목은 가져오지 않음 : 아웃룩 연락처가 가장 최신의 정보를 포함하고 있는 경우

 

9. 가져올 주소록 파일을 어떤 아웃룩 폴더로 가져올 것인지 선택한다. 대상 폴더 선택에서 연락처를 선택한다.

 

10. 가져올 주소록 파일(CSV형식)의 대상자별 관리 항목(이름, 휴대폰 등 엑셀의 필드명)과 아웃룩의 연락처 항목(성, 이름, 회사, 부서, 직함, 전자메일 등)과의 매핑 작업을 수행하기 위해 '사용자 지정 필드 매핑' 버튼을 클릭한다.

 

 

11. 엑셀 주소록의 필드명과 아웃룩 연락처 필드명을 드래그앤드랍을 통해 사용자 지정 필드 매핑작업을 수행한다.(매핑할 필드가 같은 이름인 경우 매핑작업이 특정 필드에 적용되어 있을 수도 있다.)

 

 

 

12. 매핑작업을 완료한 후 마침을 클릭하여 주소록을 연락처로 가져오기를 완료한다.

 

 

 

 

 

13. 가져온 주소록이 연락처에 제대로 반영되었는지 아웃룩 프로그램의 연락처를 클릭하여 확인한다.

 

 

 

 

 

 

 

 출처 : http://yoon2848.blog.me/130085352357

Posted by w우주z
,

USB 방식

분야/Settop 2014. 1. 6. 15:19

'분야 > Settop' 카테고리의 다른 글

IR 관련 프로토콜 설명  (0) 2013.09.05
DLNA 란 무엇인가  (0) 2013.07.09
PID 패킷 식별자  (0) 2013.05.28
4K? UD? UHD? 혼란스러운 차세대TV 명칭  (0) 2013.05.21
오디오 포맷, 기술적 특징들 + 추가 설명  (0) 2013.05.16
Posted by w우주z
,