SpringBoot Web篇(二)

            上篇文章介绍了Spring Boot初级教程:SpringBoot框架入门篇(一),方便大家快速入门、了解实践Spring Boot特性本篇文章是接着上篇文章为大家介绍SpringBoot的其他特性。

            

             SpringBoot Web开发非常简单,包括json输出、自定义filterpropertydata操作等。

             工具:Eclipse

             项目工程:maven工程

             项目结构图

                                

搭建步骤

1) 添加pom.xml文件

2) 添加配置文件

3) 添加实体类和Dao

4) DAO类

5) Controller类

只需要类添加 @RestController  即可,默认类中的方法都会以json的格式返回。

6) 启动类Application

启动类运行main方法,

在浏览器访问:

localhost:8080/user/getuser

自定义过滤器

我们常常在项目中会使用filters用于记录调用日志、排除有XSS威胁的字符、执行权限验证等等。

1) 实现Filter接口,实现Filter方法。

2) 添加 @Configuration 注解,将自定义Filter加入过滤链。

 

配置类使用

在web开发的过程中,我们经常需要自定义一些配置文件,如何使用呢?

配置在application.properties中

       com.neo.title=码农新锐

       com.neo.description=分享技术

1) 配置类

2) 配置类的应用

常见问题

SpringBootWeb框架搭建时遇到路径问题?

这里需要注意Application启动类的位置,它的位置决定了它开启的时候是否能扫描bean、controller等,它主要扫描它所在的包目录及子目录。

 

Spring Data Repositories 介绍

让我们从 JpaRepository 开始 - 它扩展了PagingAndSortingRepository,反过来又扩展了CrudRepository

其中每个接口都定义了自己的功能。

因此,由于这种继承关系,JpaRepository包含CrudRepositoryPagingAndSortingRepository的完整API 。(通过下面图可以看到继承关系)

1) JpaRepository接口

1) findAll() - 获取实体的列表。

2) findAll(...) - 获取实体的列表,并使用提供的条件对它们进行排序。

3) save(...) - 批量保存。

4) flush() - 刷新对数据库的所有挂起更改。

5) saveAndFlush(...) -保存实体并立即刷新更改。

6) deleteInBatch(...) -删除一个可迭代的实体。在这里,我们可以传递多个对象来批量删除它们。

 

显然,上面的接口延伸

PagingAndSortingRepository这意味着它有存在于所有方法CrudRepository

 

2) CrudRepository 接口

1) save(...) - 在这里,我们可以传递多个对象以批量保存它们。

2) findOne(...) - 根据传递的主键值获取单个实体。

3) findAll() - 获取数据库中所有可用实体的Iterable。

4) count() - 计算表中总实体的数量。

5) delete(...) - 根据传递的对象删除实体。

6) exists(...) - 根据传递的主键值验证实体是否存在。

这个接口看起来非常通用和简单,但实际上,它提供了应用程序所需的所有基本查询抽象。

PagingAndSortingRepository接口

该接口提供了一个方法findAll(可分页可分页),这是实现分页的关键

因此,我们假设要显示按age排序的结果集的第一页,升序,每个不超过五个记录。这是我们使用PageRequestSort定义实现此目的的方法:

 

 

 

 

 

将可分页对象传递给Spring数据查询将返回有问题的结果

PageRequest的第一个参数从零开始)。

其他方法我们可以参考官方Api:https://docs.spring.io/spring-data/jpa/docs/2.0.3.RELEASE/api/org/springframework/data/jpa/repository/JpaRepository.html

本文中的代码在这里:

https://github.com/xiaonongOne/SpringBoot-Web

复制链接到浏览器查阅。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值