Java 세션에 대한 Maven 종속성 및 데이터 필터 추가
이 페이지에서는 Maven 종속성을 추가하고 단일 사이트 및 다중 사이트 세션 공급자에 대한 필터를 정의하여 웹 세션을 구성하는 단계를 제공합니다. NCache.
Java 세션에 대한 Maven 종속성 추가
사용자는 다음과 같은 Maven 종속 항목을 추가해야 합니다. pom.xml
작업하는 동안 파일 NCache Tomcat 버전 10 이하의 세션 캐싱 모듈. 그것은 모든 것을 추가할 것이다 .JAR 파일을 프로젝트에 추가합니다.
<dependency>
<groupId>com.alachisoft.ncache</groupId>
<artifactId>ncache-javax-sessions</artifactId>
<version>x.x.x</version>
</dependency>
Tomcat 버전 10+의 경우 다음 Maven을 추가하세요.dependency
>에서 pom.xml
파일.
<dependency>
<groupId>com.alachisoft.ncache</groupId>
<artifactId>ncache-sessions</artifactId>
<version>x.x.x</version>
</dependency>
주의 사항
사용 메이븐 패키지 NCache Professional, <artifactId>
다음과 같이 표시됩니다.
<artifactId>ncache-professional-sessions</artifactId>
.
Java 세션에 대한 필터 정의
애플리케이션에 필요한 Maven 종속성을 추가한 후 웹 애플리케이션의 배포 설명자에 필터를 추가해야 합니다. 배포 설명자는 다음과 같은 이름의 XML 파일입니다. web.xml 응용 프로그램 루트 디렉터리 아래의 WEB-INF 디렉터리에 있습니다. 올바른 세션 캐싱을 보장하려면 이를 배포 설명자의 첫 번째 필터로 적용하세요(필터는 배포 설명자에 정의된 순서대로 실행됨). 필터 구현을 포함하는 클래스 파일은 아래와 같습니다.
com.alachisoft.ncache.web.sessionstate.NCacheSessionStoreProvider
필터를 구성하려면 먼저 아래에서 필터를 정의해야 합니다.필터링> 태그를 사용하여 필터에 대한 URL 매핑을 제공합니다.필터 매핑> 태그. 다음 필터 구성은 필터가 웹 애플리케이션의 모든 URL에 적용됨을 의미합니다.
<filter>
<filter-name>NCacheSessionProvider</filter-name>
<filter-class>com.alachisoft.ncache.web.session.NCacheSessionProvider</filter-class>
</filter>
<filter-mapping>
<filter-name>NCacheSessionProvider</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
다음을 구성 할 수 있습니다. NCache 세션 필터에 지정된 설정을 사용하여 세션.xml 파일 위치 %NCHOME%/config
. 구성 설정을 로드하려면 필터 초기화 매개변수로 configPath를 지정해야 합니다.
<init-param>
<param-name>configPath</param-name>
<param-value>%NCHOME%/config</param-value>
</init-param>
주의 사항
configPath의 값은 다음의 설치 디렉터리여야 합니다. NCache.
다음은 필터를 정의한 후 배포 설명자가 어떻게 보여야 하는지에 대한 예입니다.
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<filter>
<filter-name>NCacheSessionProvider</filter-name>
<filter-class>com.alachisoft.ncache.web.session.NCacheSessionProvider</filter-class>
<init-param>
<param-name>configPath</param-name>
<param-value>%NCHOME%/config</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>NCacheSessionProvider</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
세션 모듈을 단일 지역 또는 다중 지역으로 구성할 수 있습니다.
단일 사이트 세션 상태 제공자
단일 지역 세션 상태 공급자의 경우 다음을 지정합니다. 세션.xml 다음과 같이 :
<?xml version="1.0" encoding="UTF-8"?>
<servlet-session-config>
<cache id="demoCache"/>
<log log-props="log4j.properties"/>
<locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
</servlet-session-config>
다중 사이트 세션 상태 제공자
각 웹 팜에 대해 하나의 기본 캐시와 하나 이상의 보조 캐시를 지정해야 합니다. 세션.xml 파일. 기본 캐시는 모든 로컬 트래픽에 사용되고 모든 보조 캐시는 사용자가 다른 지역으로 리디렉션될 때 사용됩니다. 각 캐시에 대해 정의된 sid 접두사 세션.xml 파일이 세션 ID에 추가됩니다. 이 sid 접두사는 클라이언트가 세션을 보유하고 있는 캐시로 연결되는 데 도움이 됩니다.
다중 지역 세션 모듈의 경우 다음 구성을 지정합니다. 세션.xml 파일 :
<servlet-session-config>
<log log-props="log4j.properties"/>
<locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
<multi-site-cache>
<primary-cache id="LondonCache" sid-prefix="LDNC"/>
<secondary-cache id="TokyoCache" sid-prefix="TKYC"/>
<secondary-cache id="NewYorkCache" sid-prefix="NYKC"/>
</multi-site-cache>
</servlet-session-config>