springBoot 调用 redis Demo (附项目源码)
案例比较简单,实现了springBoot通过接口,调用redis
可逐步扩展成redis工具模块,方便其他业务逻辑调用。
项目环境
- 开发工具:IDEA
- JAVA JDK:1.8
- NoSql数据库:redis
构建工具:Gradle
对的,没错~就只需要上面的这几个东西。
项目结构图
项目整体比较简单,新建个SpringBoot项目,需要构建的包配置好,一定要有“compile(“org.springframework.boot:spring-boot-starter-data-redis”)”
(ps:项目构建工具用的Gradle,其实和Maven一样的,只是语法不一样。Gradle把Maven的众多标签封装了起来,用起来更加简洁。)
简单讲下项目代码
项目中的配置文件,没有写链接配置,默认的是本机的redis数据库,端口也是默认的,如果需要配置指定Redis,修改“application.properties”就好。附上写法:
spring.redis.host= 101.201.155.140
spring.redis.password= 123456
spring.redis.port= 6379
对了,如果这中配置文件不习惯,也可以自己新建“*.yml”配置文件,SpringBoot这两种都支持的,相当于Gradle和Maven的关系,两者语法不同。附上yml配置文件的写法:
redis:
host: 101.201.155.140
password: 123456
port: 6379
pool:
max-active: 8
max-idle: 8
附上项目中已有的构建文件代码:build.gradle,需要引入需要的类库,就在这里边引入。
buildscript {
ext {
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.3.RELEASE")
}
}
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
jar {
baseName = 'api'
version = '0.1.0'
}
repositories {
mavenCentral()
jcenter()
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
configurations {
compile.exclude module: "spring-boot-starter-tomcat"
}
dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-jetty")
compile("org.springframework.boot:spring-boot-starter-data-redis")
}
以上是配置相关的代码,下面写下调用Demo的逻辑代码
存储对象User
- 这里要注意,对象要实现序列化(Serializable),否则你会在开发中出现一些莫名的错误的。
package com.redis.cache.Bean;
import java.io.Serializable;
/**
* Created by wjl on 2018/4/14.
*/
public class User implements Serializable {
private String userName;
private String passWord;
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;
}
}
- 控制层:RedisController
- 采用Rest接口,模拟调用
- ps:文件上方注解“@RestController”是封装了很多注解,可以点进去看看源码,还是很丰富的。
未完,待续。