Spring-data-redis 的使用记录

开始向导

添加 dependency spring-boot-starter-redis,它默认使用 jedis(还支持 JRedis,SRP 和 Lettuce)
一个简单的 Hash 示例:

@SpringBootApplication
public class RedisDemo implements CommandLineRunner {

    @Autowired
    private StringRedisTemplate stringRedisTemplate;

    public static void main(String[] args) {
        SpringApplication.run(RedisDemo.class).close();
    }

    public void run(String... args) throws Exception {
        BoundHashOperations<String, String, String> ops = stringRedisTemplate.boundHashOps("com.tjj");
        ops.put("name", "tangjiujun");
        ops.put("sex", "man");
        System.out.println(ops.entries()); // 打印结果:{name=tangjiujun, sex=man}
    }
}
Read more   2016/1/9 posted in  Java学习
 

使用 Spring JPA 建立一对一双向关联

使用注意

User user = new User();
user.setUsername("tangjiujun");
Email email = new Email();
email.setUser(user);  // 必须显示设置 user,否则关联字段值会为空
email.setEmail("jiujun.tang@gmail.com");
user.setEmail(email); 
userRepository.save(user);
Read more   2015/11/25 posted in  Java学习
 

使用 Spring JPA 建立一对多关联

一对多单向关联

通过有 @Id 注解的字段进行关联

public class User {
    @Id
    @GeneratedValue
    private Integer id;
    @Column
    private String username;
    @OneToMany(cascade = CascadeType.ALL)
    @JoinColumn(name = "user_id")
    private Set<Email> emails = new HashSet<>();
}
public class Email {
    @Id
    @GeneratedValue
    private Integer id;
    /* 默认关联字段名为:驼峰类名转为下划线方式 + "_" + @Id 注解的字段名。
    例如 User 的 username 字段有 @Id 注解,则 Email 表关联的字段就默认为 user_username */
    @Column(name = "user_id")
    private Integer userId; 
    @Column
    private String email;
}
Read more   2015/10/30 posted in  Java学习
 

在 JDK 1.7 中使用 WatchService 监控文件

在 Java 7 新增了 WatchService,它可以用来监控文件的变化

Read more   2015/10/15 posted in  Java学习
 

Spring Boot 的配置加载顺序

Read more   2015/9/26 posted in  Java学习