본문 바로가기

프로그래밍

(55)
특정 함수 일정시간마다 반복 실행하기 특정시간마다 반복실행 가능하도록 쓰레드를 사용하고싶다 import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; public class ScheduleExecTest { public static void main(String[] args) { // TODO Auto-generated method stub // 실행간격 지정(3초) int sleepSec = 3 ; // 시간 출력 포맷 final SimpleDateFormat fmt = new SimpleDateFormat("HH:mm:..
코드 실행 시간 측정하기 (System.currentTimeMillis()) long start = System.currentTimeMillis(); //시작하는 시점 계산 /* 실행시간을 측정하고싶은 코드 */ long end = System.currentTimeMillis(); //프로그램이 끝나는 시점 계산 System.out.println( "실행 시간 : " + ( end - start )/1000.0 +"초"); //실행 시간 계산 및 출력 개발할때 특정 부분의 실행 시간을 확인해야하는 상황이 간혹 발생된다. 그럴 때에 아래와 같이 System.currentTimeMillis() 함수를 사용하면 밀리초 단위로 시간을 확인 할 수 있다. System.currentTimeMillis() 의 반환 변수 형식은 long 입니다. Reference https://emmadeve..
문자열 한줄씩 읽도록 만들기 텍스트 파일이나 파일로 읽은 많은 내용을 한줄씩 있는 방법은 FileReader를 쓰면되고 String str = 한줄식 대량으로 많은 데이터 입력; 을 한줄씩 꺼내 쓰기위해서 사용가능하다 방법 1. BufferedReader reader = new BufferedReader(new StringReader()); reader.readLine(); 방법2. String[] lines = string.split(System.getProperty("line.separator")); 기타 1. (콘솔로 한줄씩 입력받을 때) Scanner scanner = new Scanner(System.in); while (scanner.hasNextLine()) { String line = scanner.nextLine()..
자바로 여러명에게 메일보내기 네이버 SMTP활용. 네이버를 활용하여 자바로 메일을 보내는 기본 코드를 해보겠습니다. 네이버로 로그인 후 몇가지 설정이 필요. 네이버 로그인 > 환경설정 > POP3/IMAP설정 개발은 설정이 반이죠... 여기까지 하셨으면 반은 오신겁니다 ㅋㅋㅋ 이제 개발을 해보죠. 우선 라이브러리를 받아볼께요 pom.xml에 추가합니다 com.sun.mail javax.mail 1.5.6 이제 필요한 라이브러리까지 받았으니 코드를 짜보죠 import java.util.Properties; import javax.mail.Message; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.m..
이클립스 window builder 설치 1. 이클립스 상단 메뉴 > Help > Install New Software 를 선택합니다. 2. https://download.eclipse.org/windowbuilder/latest/ 3. 전체 설치 후 재시작 이제 Swing 개발을 좀 쉽게 할 수 있을것 같네요ㅋㅋ
Springloaded를 활용한 빠른 톰캣 재시작 로컬개발시 톰캣서버가 실행되있을때 java 코드를 수정하고 저장했을때 클래스 파일을 다시 로딩합니다.이때 톰캣 재시작의 속도를 줄일수 있어 매우 편리함.(JRebel과 비슷한 기능) 이클립스에 SpringLoaded 적용방법 1. Springloaded jar파일을 다운받는다.참조: http://mvnrepository.com/artifact/org.springframework/springloaded/ 2. 이클립스 상단 메뉴 > Run > Run Configurations 선택 3. Apache Tomcat 하위에 적용할 서버 선택 4. 우측 Arguments 탭 아래 VM arguments 란에 javaagent를 추가합니다.-javaagent:C:\경로\springloaded-버전.RELEASE.j..
mybatis cashe사용 방법 1. sql-mapper-config.xml설정 2. 각 cashe를 사용할 sql.xml설정 eviction: 캐시 알고리즘 속성으로 기본은 LRU(사용빈도가 낮은것)이고 그 외에 3가지가 있음. FIFO(선입선출). flushInterval: 캐시 유지 설정30분 뒤 캐시 비움.(단, 특정 시각을 정하지는 못함) size: 디폴트 값은 1024이며, 메모리 여부를 확인 후 사용해야 할 듯. readOnly: 캐시 데이터를 읽기만 가능하게 할지 설정. (읽기/쓰기 모두 가능한 경우에는 반환된 캐시 데이터에 대한 변경이 가능하며, 캐시 복사본을 반환한다고 함) LRU – Least Recently Used: 가장 오랜시간 사용하지 않는 객체를 제거FIFO – First In First Out: 캐시에 들..
JSTL, <c:foreach> 태그 상태 속성 입니다. 태그 상태 속성 입니다.속성을 이용해서 제어하면 좀더 쉽게 제어할수있습니다.${status.current} ${status.index} ${status.count} ${status.first} ${status.last} ${status.begin} ${status.end} ${status.step}