사용자 통계 서비스

개요

각종 사용자 현황에 대한 통계자료를 회원유형, 회원상태, 성별에 따라 기간별(연도별, 월별, 일별)로 그래프와 텍스트 형태 두가지 방식으로 제공한다.

기능흐름

기능명기능 흐름
사용자통계 집계사용자정보 요약 배치수행사용자요약정보 집계
사용자통계 검색검색조건 입력 → 조건별 사용자 통계 검색

설명

  • 사용자 통계 수치를 특정 검색 조건에 따라 정보를 조회하는 기능이다.

관련소스

유형대상소스명비고
Controlleregovframework.com.sts.web.EgovUserStatsController.java사용자 통계를 위한 컨트롤러 클래스
Serviceegovframework.com.sts.service.EgovUserStatsService.java사용자 통계를 위한 서비스 인터페이스
Serviceegovframework.com.sts.service.EgovUserStatsScheduling.java사용자 통계 집계를 위한 스케줄 클래스
ServiceImplegovframework.com.sts.service.impl.EgovUserStatsServiceImpl.java사용자 통계를 위한 서비스 구현 클래스
VOegovframework.com.sts.service.UserSummary.java사용자 통계를 위한 모델 클래스
VOegovframework.com.sts.service.StatsVO.java통계를 위한 VO 클래스
DAOegovframework.com.sts.service.impl.UserStatsDAO.java사용자 통계를 위한 데이터 처리 클래스
Query XMLresources/egovframework/sqlmap/com/sts/EgovUserStats_SQL.xml사용자 통계를 위한 Query XML
JSPWEB_INF/jsp/egovframework/sts/EgovUserStats.jsp사용자 통계 페이지

클래스 다이어그램

관련테이블

테이블명테이블명(영문)비고
사용자통계요약COMTSUSERSUMMARY사용자 통계 정보를 관리

환경설정

하루에 한번씩 사용자 정보를 모두 조회하여 회원유형, 회원상태, 성별 조건에 부합하는 회원수를 요약하는 작업이 배치형태로 구성되어야 한다.
본 기능은 전자정부 표준프레임워크 실행환경의 scheduling 기능을 활용하여 구성되어있다.

  • 작업 클래스 생성
public class EgovUserStatsScheduling {
 
	/** EgovUserStatsService */
	@Resource(name = "userStatsService")
        private EgovUserStatsService userStatsService;
 
	/**
	 * 사용자 통계를 위한 집계를 하루단위로 작업하는 배치 프로그램
	 * @exception Exception
	 */
	public void summaryUserStats() throws Exception {
		userStatsService.summaryUserStats();
	}
}
  • 작업 수행 Bean 설정
<bean id="userStats" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="egovUserStatsScheduling" />
    <property name="targetMethod" value="summaryUserStats" />
    <property name="concurrent" value="false" />
</bean>
  • 트리거 Bean 설정
<bean id="userStatsTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
    <property name="jobDetail" ref="userStats" />
    <!-- 시작하고 2분후에 실행한다. (milisecond) -->
    <property name="startDelay" value="120000" />
    <!-- 매 12시간마다 실행한다. (milisecond) -->
    <property name="repeatInterval" value="43200000" />
</bean>
  • 스케줄러 Bean 설정
<bean id="statsSummaryScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
            <ref bean="userStatsTrigger" />
        </list>
    </property>
</bean>

관련화면 및 수행매뉴얼

사용자 통계

ActionURLController methodQueryID
사용자 통계검색/sts/selectUserStats.doselectUserStatsUserStatsDAO.selectUserStats

하루 단위로 집계되는 사용자 요약 정보를 통해 조건별 사용자 통계 자료를 조회한다.

기간: 통계 검색을 할 시작-종료 기간을 입력한다.
기간구분: 연도별, 월별, 일별 기간별 통계 형태를 선택한다.
통계구분: 회원유형, 회원상태, 성별 구분을 선택한다.
세부통계구분: 선택된 통계구분에 해당되는 세부 구분을 선택한다.
검색: 조건에 맞는 사용자 통계를 검색한다.
초기화: 검색 조건을 초기화한다.

참고자료

 
egovframework/사용자통계.txt · 마지막 수정: 2023/12/21 05:21 (외부 편집기)
 
이 위키의 내용은 다음의 라이센스에 따릅니다 :CC Attribution-Noncommercial-Share Alike 3.0 Unported
전자정부 표준프레임워크 라이센스(바로가기)

전자정부 표준프레임워크 활용의 안정성 보장을 위해 위험성을 지속적으로 모니터링하고 있으나, 오픈소스의 특성상 문제가 발생할 수 있습니다.
전자정부 표준프레임워크는 Apache 2.0 라이선스를 따르고 있는 오픈소스 프로그램입니다. Apache 2.0 라이선스에 따라 표준프레임워크를 활용하여 발생된 업무중단, 컴퓨터 고장 또는 오동작으로 인한 손해 등에 대해서 책임이 없습니다.
Recent changes RSS feed CC Attribution-Noncommercial-Share Alike 3.0 Unported Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki