深入实践Spring Boot

在这里插入图片描述

Spring Boot为编程提供了新的范式,绝对是一个具有里程碑意义的开源框架,功能太强大了,结构太过优雅了,我已经被它深深吸引住了。 ——Dengchh

《深入实践Spring Boot》是华章科技的陈韶健老师写的一本关于Spring Boot的一本书,我个人读着感觉是非常棒的一本书,介绍了很多非常新的技术。整体读下来感觉Spring Boot是个非常强大且优雅的框架和工具。

在Spring Boot中使用数据库

  • Spring Boot几乎支持使用所有数据库!而且他本身提供了更高层的抽象来访问数据库,Spring Boot帮助开发者做了太多事情了。

MySQL

  • Spring Boot鼓励使用JPA来连接数据库,其中有一条非常重要的思想“约定优于配置”,这条思想极大程度上减少了那些繁琐的操作。例如我们要查找一条数据,我们就用findBy或者getBy,这是约定好的,当我们遵守这些约定时,JPA能够自动生成代理类来帮助我们实现功能。

  • 使用JPA连接数据库是比较轻松和简洁,基本都是语法问题,没有太多难点。

Redis

  • 关系型数据库在性能方面总是存在一些缺陷,我们往往会配合具有高效存取功能的缓存系统结合使用,以提高系统的访问性能。Redis是一种可以持久化存储的缓存系统,是一个高性能的key-value数据库。

  • Redis提供四类数据类型可供存取:

  1. string
  2. hash
  3. list
  4. set及zset
  • 对于Redis,Spring Boot没有提供像JPA那样相应的资源库接口,所以需要自己写服务类。不过实现Redis的存取并不困难,我们用RedisTemplate几乎可以实现对Redis所以的访问。

  • Redis没有表结构的概念,所以要实现MySQL数据库中表的数据POJO在Redis存取,必须做一些转换,我们使用JSON格式的文本作为Redis与POJO之间相互交换数据的存储格式。可以使用Gson工具进行POJO和Json的格式转换。

  • 保存在Redis的数据默认是永久存储的,我们可以指定一个时限来确定数据的生命周期,超过指定时间的将被Redis自动清除。

  • 一般情况下为了能够正确调用RedisTemplate,我们必须对其做一些初始化工作,即主要对它存取的字符串进行一个JSON格式的系列化初试配置。

MongoDB

  • MongoDB是文档型数据库,具有大数据量、高并发等优势,但缺点是不能建立实体关系,而且也没有事务管理机制。

  • 使用MongoDB和使用JPA方法类似。基本都是语法问题。

Neo4j

  • Neo4j是一种图形数据库—— The World’s Leading Graph Database
  • 三个关键的概念:节点、属性、关系。数据保存在节点的属性中,关系连接着不同的节点。

总结:Spring Boot完成了大量数据库的支持,我们可以很轻松地去使用,太厉害了。

提高数据库的访问性能

  • 对于大数据时代的互联网应用来说,要从根本上提升数据库的性能,主要还是应该着重关注数据库本身的设计和配置。例如使用分布式设计的集群系统,通过合理的配置和组装,可以达到横向扩展的目的,以后可以通过添加设备的方式,可以随时扩充数据库的容量和提升其访问性能。

Spring Boot安全设计

Web应用的安全管理,主要包括两个方面的内容:一方面是用户身份验证,即用户登录的设计;另一方面是用户授权,即一个用户在一个应用系统中能够执行哪些操作的权限管理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值