1.依赖与数据库设置
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-data-redis</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-pool2</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.session</groupId>
- <artifactId>spring-session-data-redis</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
- </dependency>
- spring.redis.database=0
-
- spring.redis.host=localhost
-
- spring.redis.port=6379
-
- spring.redis.password=123 #自己的密码
-
- spring.redis.lettuce.pool.max-active=8
-
- spring.redis.lettuce.pool.max-wait=-1
-
- spring.redis.lettuce.pool.max-idle=8
-
- spring.redis.lettuce.pool.min-idle=0
2.redis和session配置
- @Configuration
- @EnableCaching
- public class RedisConfig extends CachingConfigurerSupport{
-
- @Bean
- public KeyGenerator keyGenerator() {
- return new KeyGenerator() {
- @Override
- public Object generate(Object target, Method method, Object... params) {
- StringBuilder sb = new StringBuilder();
- sb.append(target.getClass().getName());
- sb.append(method.getName());
- for (Object obj : params) {
- sb.append(obj.toString());
- }
- return sb.toString();
- }
- };
- }
- }
-
- @Configuration
- @EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400*30)
- public class SessionConfig {
- }
3.实体与controller层
- public class User implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Long id;
- private String userName;
- private String password;
- private String email;
- private String nickname;
- private String regTime;
-
- public User() {
- super();
- }
- public User(String email, String nickname, String password, String userName, String regTime) {
- super();
- this.email = email;
- this.nickname = nickname;
- this.password = password;
- this.userName = userName;
- this.regTime = regTime;
- }
-
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public String getUserName() {
- return userName;
- }
-
- public void setUserName(String userName) {
- this.userName = userName;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-
- public String getEmail() {
- return email;
- }
-
- public void setEmail(String email) {
- this.email = email;
- }
-
- public String getNickname() {
- return nickname;
- }
-
- public void setNickname(String nickname) {
- this.nickname = nickname;
- }
-
- public String getRegTime() {
- return regTime;
- }
-
- public void setRegTime(String regTime) {
- this.regTime = regTime;
- }
-
- @Override
- public String toString() {
- return "User{" +
- "id=" + id +
- ", userName='" + userName + '\'' +
- ", password='" + password + '\'' +
- ", email='" + email + '\'' +
- ", nickname='" + nickname + '\'' +
- ", regTime='" + regTime + '\'' +
- '}';
- }
- }
- @RestController
- public class UserController {
-
- @RequestMapping("/getUser")
- @Cacheable(value="user-key")
- public User getUser() {
- User user=new User("aa@126.com", "aa", "aa123456", "aa","123");
- System.out.println("测试缓存");
- return user;
- }
-
-
- @RequestMapping("/uid")
- String uid(HttpSession session) {
- UUID uid = (UUID) session.getAttribute("uid");
- if (uid == null) {
- uid = UUID.randomUUID();
- }
- session.setAttribute("uid", uid);
- return session.getId();
- }
- }
4.运行
- @SpringBootApplication
- public class RedisApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(RedisApplication.class, args);
- }
- }
运行结果:



同时也可以用专门的图形界面工具查看:

到此这篇关于springboot使用Redis作缓存使用入门的文章就介绍到这了,更多相关springboot Redis缓存内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!