Redis 소개
Redis (공식 웹 사이트 : https://redis.io)는 메모리 기반 로그 타입 영구 캐시 데이터베이스로, 키 값 형식으로 저장되었습니다. Redis는 완전히 무료이며 오픈 소스입니다. ansi c 언어로 작성되었습니다. 다른 키 값 캐시 제품과 마찬가지로 Redis에는 다음 세 가지 기능이 있습니다.
• Redis는 데이터의 지속성을 지원하여 디스크의 메모리에 데이터를 저장할 수 있으며 다시 시작하는 동안 사용하기 위해 다시로드 할 수 있습니다.
• Redis는 간단한 키 값 유형 데이터를 지원할뿐만 아니라 문자열, 링크 된 목록, 컬렉션, 주문 컬렉션 및 해시와 같은 데이터 구조를 저장할 수 있습니다.
• Redis는 데이터 백업, 즉 마스터 슬레이브 모드의 데이터 백업을 지원합니다.
Mac 시스템에서는 사용하려면 Redis를 다운로드 할 필요가 없습니다. 다음은 Redis의 호스팅 서버에서 Redis의 압축 패키지를 다운로드하고 압축을 풀기위한 관련 명령입니다.
wget http://download.redis.io/releases/redis-4.0.8.tar.gztar xzf redis-4.0.8.tar.gzcd redis-4.0.8make
Redis가 제공하는 서비스를 사용하기 전에 먼저 Redis 관련 서비스를 시작해야합니다. Mac 시스템에서 Redis를 시작하라는 명령은 다음과 같습니다.
src/redis-server
그런 다음 redis 클라이언트를 다시 열고 다음 명령을 사용하여 Redis 서버에 연결하십시오.
src/redis-cliredis> set foo barokredis> get foo "bar"
Redis 데이터베이스를 통합합니다
Redis를 사용하기 전에 관련 종속성을 소개해야합니다. Maven 방법에 의존하는 스크립트는 다음과 같습니다.
<pectionency> <groupId> org.springframework.boot </groupid> <artifactid> 스프링 부트 스타터-데이터-레 디스 </artifactid> </fectionency>
그 후, 우리는 Redis의 관련 구성을 YML에 작성합니다. 여기서는 이전에 다른 환경에 따라 다른 구성을 작성하는 것이 좋습니다. Redis가 사용하는 기본 포트는 6379입니다. 일반적으로 Redis는 기본적으로 데이터베이스 No. 0을 사용하며 기본적으로 16 개의 데이터베이스가 있습니다.
#REDIS 구성 REDIS :# 데이터베이스 인덱스 데이터베이스 : 0# 서버 주소 호스트 : 127.0.0.1# 서버 연결 포트 : 6379# 링크 암호 비밀번호 :# 링크 풀 풀 :# 최대 숫자 연결 (음수 값이 한계 없음) 최대 활동 : 8# 최대 차단 시간 (음수 값이 제한 없음) 최대 링크 : 1# 최대 링크 링크 Max-IDLE MAX-IDLE MAX-IDLE MAX-IDLE. 시간 초과 (밀리 초) 시간 초과 : 0
Application.Properties 메소드 인 경우 일부 구성은 다음과 같습니다.
spring.redis.hostname = 127.0.0.1spring.redis.redis.port = 6379 Spring.redis.pool.maxActive = 8 spring.redis.pool.maxwait = -1 spring.redis.pool.maxidle = 8 spring.redis.pool.minidle = 0 spring.redis.redis.redout = 0
구성 파일을 저장하려면 새 readisconfig.java 파일을 만듭니다.
@Configuration @enableCaching // 주석 공개 클래스 개방 공개 클래스 readisconfig 확장 CachingConfigurersUpport {@bean public cachemanager cachemanager (redistemplate <?,?> redistemplate) {cachemanager cachemanager = new readiscaceManager (redistemplate); 반환 캐시미너; } @bean public redistemplate <string, string> redistemplate (readisconnectionfactory factory) {redistemplate <string, string> redistemplate = new redistemplate <String, String> (); redistemplate.setConnectionFactory (Factory); redistemplate를 반환합니다. }}서비스 패키지에서 redisservice.java 클래스를 만듭니다.
공개 인터페이스 redisservice {public void set (문자열 키, 개체 값); 공개 객체 get (문자열 키); }새 서비스 구현 클래스 RedisserViceImpl.java를 만듭니다.
@ServicePublic 클래스 RedissErviceImpl은 RedissErvice {@Resource private redistemplate <string, object> redistemplate; public void set (문자열 키, 객체 값) {valueOperations <string, object> vo = redistemplate.opSforValue (); Vo.Set (키, 값); } public Object get (string key) {valueOperations <string, object> vo = redistemplate.opSforValue (); return vo.get (키); }}새 컨트롤러 계층 코드를 만듭니다. usercontroller.java
@controller @requestMapping (path = "/user") public class usercontroller {@autowired private userervice userervice; @autowired 비공개 재조산 재조류; // redis@requestMapping (value = "/getUserFromedis", method = requestMethod.get) public @ResponseBody user getRedis (@requestParam String key) {return (user) retisservice.get (key); } // 모든 사용자 가져 오기 @RequestMapping (value = "/getUsers", method = requestMethod.get) public @ResponseBody Page <user> 목록 (모델 모델, pagable pagable) {return userervice.findall (pagable); } // 사용자 추가 @getMapping (value = "/adduser") public @ResponseBody String addUser (@requestParam String Dictum, @requestParam String password, @requestparam String username) {user user = new user (); user.setdictum (dictum); user.setpassword (비밀번호); user.setusername (사용자 이름); System.out.println (사용자); uservice.saveuser (사용자); redisservice.set (user.getid ()+"", 사용자); "저장된"반환; }}이 기사에서 설계된 엔티티 클래스 user.java의 코드는 다음과 같습니다. redis에 객체를 저장하려면 직렬화가 필요합니다.
@Entity@table (name = "s_user") 공개 클래스 사용자는 시리얼이즈 가능한 {private static final long serialversionuid = 1l; @id @generatedValue (전략 = GenerationType.Auto) 개인 정수 ID; 개인 문자열 사용자 이름; 개인 문자열 비밀번호; 개인 문자열 dictum; @onetomany (mappedby = "user", fetch = fetchType. Lazy, Cascade = {CascadEtype. All}) private set <photo> setphoto; // getter and setter @override public string toString () {return "user [id =" + id + ", username =" + username + ", password =" + password + ", dictum =" + dictum + ", setphoto =" + setphoto + "]; }}요약
위는 편집자가 소개 한 Redis 데이터베이스를 통합하는 SpringBoot 방법입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!