목록전체보기 (190)
낭만 프로그래머
WPF에서 바인딩 로직을 작성했는데도 불구하고 바인딩 업데이트가 되지 않는 문제가 발생하였다. 확인해 본 결과 TextBox에서 포커스를 잃었을 경우에만 업데이트가 되었다. 구글을 검색해 보니 TextBox 바인딩 업데이트에 대한 옵션을 넣을 수가 있었다. 1. TextBox 값이 변경되는 즉시 업데이트 - UpdateSourceTrigger="PropertyChanged" 를 사용 2. 사용자가 업데이트를 수동으로 원할 경우 - UpdateSourceTrigger="Explicit" 를 사용 // 코드에서 수동으로 업데이트 메소드 호출 // itemNameTextBox is an instance of a TextBox BindingExpression be = itemNameTextBox.GetBindi..
c#에서 원본 PDF를 1장씩 잘라서 저장하는 기능을 확인 해 보자 라이브러리가 필요한데 무료이면서 한글을 잘 지원하는 것을 선택하다 보니 Pdfbox가 적합하였다. 사실 pdfbox는 java 계열의 Apache 라이브러리다. 이것을 .net으로 변경한 것으로 보인다. 1. PDF 라이브러리 설치 2. 사용법 using org.apache.pdfbox.pdmodel; using org.apache.pdfbox.util; using System; using System.Text; namespace PDFUtil { public class PDFUtil { /// /// 숫자 자리수에 맞추어 0을 채우기 /// /// /// /// private static String fitZero(int source,..
프로젝트 할 때마다 세팅하는것을 반복적으로 해서 이렇게 글을 올려 놓는다 Spring Tool Suite 4, Spring Boot v2.3.5, MS-SQL, Tomcat9 로 작업하였음. 1. UserMapper.java package com.ariulsoft.itassetmanagement.mapper; import java.util.List; import com.ariulsoft.itassetmanagement.model.User; public interface UserMapper { List getUsers() throws Exception; } 2. User.java package com.ariulsoft.itassetmanagement.model; public class User { priv..
회사에 Iptime 공유기를 사용하여 VPN 연결해서 사용하려고 하는데 VPN은 연결이 되는데 회사컴에 원격데스트톱이 연결이 되지 않았다. ㅜㅜ 구글링을 해본 결과 IP 대역대가 달라서 몇가지 방화벽 설정을 해야 한다고 한다. 원격데스크톱을 연결할 대상 PC에 아래와 같이 설정을 해보자. 1. 설정 2. 네트워크 및 인터넷 3. 상태 - 연결 속성 변경 4. 개인 으로 설정 5. 고급 보안이 포함된 Windows Defender 방화벽 6. 인바운드 규칙 - 새 규칙 7. 범위 - 사용자 지정 8. 다음 IP 주소 - 추가 9. 원격접속을 시도하려는 컴퓨터 IP 대역대 확인 (여기서는 192.168.10.x 이다) 10. IP대역대 확인 결과를 입력 ( 여기서는 192.168.10.0/24) -> .0/..
Java에서는 기본적으로 XML을 파싱할 수 있는 코드를 제공합니다. 하지만 일일이 작업하는 것이 힘들기에 Digester 를 사용하여 간단히 XML을 파싱 해봅니다. 1. XML 파일을 생성합니다 우리서점 재미난 낭만프로그래머 재미없는 낭만프로그래머 2. 객체화 시킬 BookStore, Book 클래스를 작성합니다 /** Book Store **/ public class BookStore { private String name; private List bookList = new ArrayList(); public String getName() { return this.name; } public void setName(String name) { this.name = name; } public List g..
Web에서 스케쥴링하기 위해서는 Spring을 사용하는 것이 가장 좋지만 가끔은 Spring을 사용하지 않고 순수하게 JSP/Servelt만을 이용하여 프로젝트를 할 경우가 있다. 때문에 Quartz 라이브러리를 이용하게 간단하게 스케쥴링 해보자. 1. 모든 문서와 예제는 www.quartz-scheduler.org/ 에 가면 있으니 참조 하시기 바랍니다 2. Maven을 사용하여 라이브러리를 다운로드 하세요 org.quartz-scheduler quartz 2.3.2 3. web.xml 에서 Quartz를 초기화 합니다 QuartzInitializer Quartz Initializer Servlet org.quartz.ee.servlet.QuartzInitializerServlet 1 config-fi..
C#에서 CSV 파일을 읽어오는 방법은 다양하다. 이번엔 Microsoft.VisualBasic.FileIO를 사용하여 읽어오는 방법을 소개 한다. * 기본적으로 Excel에서 작성후 CSV로 저장시에 항상 UTF-8 형태로 저장해야 한다. #소스 /// /// CSV 파일을 읽기 /// /// CSV 파일 경로 /// 첫번째 행의 헤더여부 /// 주석처리 문자열 /// 구분자 문자열 /// /// public static Dictionary readCSV(String filePath, bool isFirstHeader, String commentTokens, String delimiter, bool hasEnclosedInQutes) { Dictionary returnvalue = new Diction..
Android 에서 고급스러운 애니메이션을 만들기 위해서는 Lottie 라이브러리를 사용해야한다. Lottie를 사용하기 위해서는 애니메이션 소스가 작성되어야 하는데 애프터이펙트에서 작업하여 만들수 있다. 단지 애프터이펙트 파일을 바로 Android에서 Lottie가 바로 사용하지 못하므로 bodymovin 플러그인을 사용하여 로딩가능한 소스로 변환 시켜줘야 한다. 그 첫걸음으로 애프트이펙트에 bodymovin 플러그인을 설치해 보자 1. Lottie 사이트로 간다 ( https://airbnb.design/lottie/ ) 2. BodyMovin 링크를 클릭한다 3. build 링크를 클릭한다 4. extention 링크를 클릭한다 5. bodymovin.zxp 링크를 클릭한다 6. Download를 ..