รู้เบื้องต้นเกี่ยวกับ Redis
Redis เป็นที่เก็บข้อมูลหน่วยความจำที่ใช้กันอย่างแพร่หลายในอุตสาหกรรม เมื่อเปรียบเทียบกับ Memcached, Redis รองรับโครงสร้างข้อมูลที่สมบูรณ์ยิ่งขึ้นเช่นแฮชรายการรายการชุด ฯลฯ และยังรองรับการคงอยู่ของข้อมูล นอกจากนี้ Redis ยังมีคุณสมบัติคล้ายฐานข้อมูลบางอย่างเช่นธุรกรรม, HA และ Libraries Master-Slave อาจกล่าวได้ว่า Redis มีลักษณะบางอย่างของระบบแคชและฐานข้อมูลดังนั้นจึงมีสถานการณ์แอปพลิเคชันที่หลากหลาย
การแนะนำ
สำหรับการทดสอบหน่วยเราควรพยายามรักษาสภาพแวดล้อมเดียวและไม่สื่อสารกับทรัพยากรเครือข่ายเพื่อให้แน่ใจว่าความมั่นคงและความเป็นกลางของการทดสอบ สำหรับ Framework Springboot มันรวมการทดสอบหน่วย Junit ในเวลาเดียวกันเมื่อออกแบบโครงการคุณสามารถใช้เครื่องมือจัดเก็บข้อมูลที่ฝังได้หลากหลายเช่น MongoDB, Redis, MySQL ฯลฯ วันนี้ฉันจะพูดคุยเกี่ยวกับการใช้ Embedded-redis เป็นหลัก
วิธีใช้เป็นดังนี้:
เพิ่มแพ็คเกจอ้างอิง build.gradle
TestCompile ('com.github.kstyrc: Embedded-redis: 0.6')เพิ่มการฉีดการกำหนดค่า
นำเข้า org.springframework.beans.factory.annotation.autowired; นำเข้า org.springframework.context.annotation.bean; นำเข้า org.springframework.context.annotation.configuration; org.springframework.data.redis.core.hashoperations; นำเข้า org.springframework.data.redis.core.listoperations; นำเข้า org.springframework.data.datis.core.dramwork.data.core.core. org.springframework.data.redis.core.valueOperations; นำเข้า org.springframework.data.redis.core.zsetoperations; นำเข้า org.springframework.data.redis.serializer org.springframework.data.redis.serializer.stringredisserializer; @configurationpublic คลาส redisconfig { / ** * ฉีด redisconnectionfactory * / @autowired redisconnectionFactory redisconnectionFactory; / ** * อินสแตนซ์วัตถุ Redistemplate * * @return */ @bean Redistemplate สาธารณะ <String, Object> functionDomainredistemplate () {redistemplate <สตริง, วัตถุ> redistemplate = ใหม่ redistemplate <> (); Intedomainredistemplate (redistemplate, redisconnectionFactory); ส่งคืน redistemplate; } / ** * ตั้งค่าวิธีการจัดเก็บข้อมูลของการจัดเก็บข้อมูลเป็น redis * * @param redistemplate * @param Factory * / private void initdomainredistemplate (redistemplate <string, object> redistemplate, redisconnectionfactory โรงงาน) REDISTEMPLATE.SETHASHKEYSERIALIZER (ใหม่ StringRedisserializer ()); REDISTEMPLATE.SETHASHVALUEIALIALIZER (ใหม่ JDKSERIALIALIATIONEDISESERIALIAZ ()); REDISTEMPLATE.SETVALUESERIALIALIZER (ใหม่ JDKSERIALIALIATIONEDISESERIALIARIAR ()); Redistemplate.SetConnectionFactory (โรงงาน); } / ** * วัตถุ hashoperations instanced คุณสามารถใช้การดำเนินการประเภทแฮช * * @param redistemplate * @return * / @bean public hashoperations <สตริง, สตริง, วัตถุ> hashoperations (redistemplate <สตริง, วัตถุ> redistemplate) } / ** * วัตถุ Instanced ValueOperations คุณสามารถใช้การดำเนินการสตริง * * @param redistemplate * @return * / @bean ค่า public ValueOperations <String, Object> ValueOperations } / ** * อินสแตนซ์วัตถุ ListOperations คุณสามารถใช้การดำเนินการรายการ * * @param redistemplate * @return * / @bean สาธารณะ listoperations <String, Object> listoperations (redistemplate <string, object> redistemplate) } / ** * อินสแตนซ์วัตถุ SetOperations คุณสามารถใช้การดำเนินการตั้งค่า * * @param redistemplate * @return * / @bean public setoperations <String, Object> setOperations (redistemplate <string, Object> Redistemplate) } / ** * อินสแตนซ์วัตถุ ZSetOperations คุณสามารถใช้การดำเนินการ ZSET * * @Param redistemplate * @return * / @Bean สาธารณะ ZSetOperations <String, Object> ZSetOperations -ใช้ Redis ในชั้นธุรกิจ
@autowired redistemplate <string, Object> rediscachetemplate;
ในระหว่างการใช้งานวัตถุ redistemplate ของเราถูกฉีดโดยอัตโนมัติ
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่าเนื้อหาของบทความนี้จะมีค่าอ้างอิงบางอย่างสำหรับการศึกษาหรือที่ทำงานของทุกคน หากคุณมีคำถามใด ๆ คุณสามารถฝากข้อความไว้เพื่อสื่อสาร ขอบคุณสำหรับการสนับสนุน Wulin.com