Java/Spring7 [Spring]Quartz 로 scheduler구현해보기 이벤트 기간이 지난 상품들을 등록대기 상태로 바꾸는 기능을 추가해야 했습니다. 스케줄러를 해본 적이 없어서 사용자가 상품페이지로 들어갈 때마다 이벤트 날짜를 체크해서 update하는 방법도 생각했었지만, 그건 좀 아닌 거 같아서 scheduler를 구현하기로 했습니다. Spring에서 Spring Scheduler와 Spring Quartz라는 2가지 방식으로 제공됩니다. 저는 Quartz 방법을 사용하기로 했습니다. 1. Quartz라이브러리 추가 pom.xml org.quartz-scheduler quartz 2.3.0 slf4j-api org.slf4j org.quartz-scheduler quartz-jobs 2.3.0 2.Service 설정 GoodsEventSchdule.java @Servic.. 2021. 4. 9. [eGovFramework] 폼 검증(Form validation)하기 유지보수 업무 중 컨텐츠 등록에서 Validation체크를 하나 더 추가해달라는 요청이 들어와 전자정부프레임워크의 폼 검증을 검색하여 알아보았다. Validation Bean설정 처음 Validation기능을 쓰기 위해 bean을 추가해 줘야 한다. 1 2 3 4 5 6 7 8 9 10 11 12 classpath:/egovframework/validator/validator-rules.xml classpath:/egovframework/validator/com/**/*.xml Colored by Color Scripter cs DefaultValidatorFactory는 사용되는 모든 규칙을 가지고 있는 validator-rules.xml 파일과 입력폼에서 규칙이 어떻게 적용되는지 정보를 가지고 있는 .. 2020. 6. 15. Math 클래스 Math의 필드값 1. Math.E : 오일러의 수, 자연로그의 밑 값으로 2.718을 나타냄 2. Math.PI :원주율 값 3.14159 random() 0.0이상 1.0미만의 범위에서 임의의 double형 값을 하나 생성하여 반환 Random클래스를 사용한 의사 난수 발생기를 사용하여 임의의 수를 생성한다. 난수를 생성할 수 있는 기능은 java.util패키지에 포함된 Random클래스의 nextInt()메소드로도 가능하다. Math는 생성자를 만들어서 사용하지않고 Math.메소드 이런식으로 사용한다. System.out.println((int)(Math.random()*100)); //0~100 System.out.println((int)(Math.random() * 6)); // 0 ~ 5 Sy.. 2020. 5. 25. String, StringBuffer String 클래스의 인스턴스는 한 번 생성되면 그 값을 읽기만 하고 변경할 수 없습니다. 즉, 불변 이다. StringBuffer 클래스는 그 값을 변경할 수도 있고, 추가할 수도 있다. 그게 가능한 이유는 StringBuffer 클래스는 내부적으로 버퍼라는 독립공간을 가지는데, 인스턴스 생성 시에 사용자가 설정한 크기보다 항상 16개의 문자를 더 저장할 수 있는 크기로 생성된다. 만약, 문자열을 합쳐야 될 경우, String을 사용하여 붙이면 항상 새로운 인스턴스가 생성되기 때문에 공간이 낭비되고, 속도도 느리기 때문에 비효율적이다. StringBuffer를 사용하면 문자열을 바로 추가가능하고 속도도 빨라진다. 하지만 String을 자주사용하는 이유는 멀티 스레드 환경에서 객체가 변화하는 상황이라면 .. 2020. 5. 25. 이전 1 2 다음