SPRING ROLL 二月 14, 2020

集成 Spring Roll 的通用导出列表数据为 Excel 功能

文章字数 6.7k 阅读约需 6 mins.

Spring Roll 中提供了一个基于业务 REST Controller 实现的通用 Excel 导出功能,可将列表页查询结果直接导出为 Excel 文件。

本文描述如何集成 roll-export...

查看全文

SPRING ROLL 二月 14, 2020

集成 Spring Roll 的通用导出列表数据为 Excel 功能

文章字数 6.7k 阅读约需 6 mins.

Spring Roll 中提供了一个基于业务 REST Controller 实现的通用 Excel 导出功能,可将列表页查询结果直接导出为 Excel 文件。

本文描述如何集成 roll-export 模块,获得通用导出功能。

Spring Roll 的包目前发布在 GitHub Packages 中,可参照 GitHub Packages in Action 或官方文档,对构建工具进行配置。

之后可在 Maven 中添加:

<dependency>
    <groupId>...
查看全文

TEST 二月 05, 2020

微服务的自动化集成测试实战

文章字数 8.1k 阅读约需 7 mins.

利用 How to integrate SEATA AT mode with Spring Cloud 中定义好的微服务,进行集成测试。

包含以下服务:

  1. 库存服务(storage)
  2. 用户账户服务(account)
  3. 订单服务(order)
  4. 业务服务(business)

业务服务作为直接被调用的接口,组织关联其他三个服务。下订单时,服务的调用顺序如下:

1. 减库存(storage)
2. 创建订单
2.1. 扣减用户账户(account)
2.2. 生成订单(order)

服务之间存在依赖关系,...

查看全文

GFW 一月 29, 2020

利用 Gooreplacer 科学访问 Codecov

文章字数 4.3k 阅读约需 4 mins.

Codecov 是一个测试覆盖率结果可视化展现网站,并与 GitHub 和 Pull Request 有较好的集成,可以在 Pull Request 中展现覆盖率变化结果,协助保证代码质量。

不过在 GFW 环境下访问 Codecov 不是很稳定,因为网站使用了一些 Google 的 CDN 资源(主要是 js 和 css)。利用 Gooreplacer 可以将这些资源重定向到可访问的地址,科学使用 Codecov 提供的服务。

因无法直接在线安装 Chrome 插件,可以从 Gooreplacer...

查看全文

JAVA 一月 22, 2020

How to integrate SEATA AT mode with Spring Cloud

文章字数 6.4k 阅读约需 6 mins.

本文基于一个 Spring Cloud 业务实例,说明如何集成 SEATA AT 模式,进行分布式事务控制。

SEATA 是什么?

Seata: Simple Extensible Autonomous Transaction Architecture

Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 —— 引用自 SEATA 官方文档

AT 模式是...

查看全文

JAVA 一月 17, 2020

GitHub Packages in Action

文章字数 9.4k 阅读约需 9 mins.

GitHub Packages 可以用来当做 Release 版本 jar 包的 Maven 仓库。

与 Maven 中央库比,没有繁琐的申请流程,可以快速的将 jar 包发布出去供他人使用。

与 Nexus 私服相比,无需架设公网访问环境。

缺点 是只支持 Release 版本的发布和下载,Snapshot 版本虽然可以发布上去,但无法被其他项目依赖。目前尚不支持自行删除已上传的 jar 包,需联系 GitHub 协助处理。

本文以实例说明,在 Gradle 中如何利用 GPR(GitHub ...

查看全文

JAVA 一月 05, 2020

Using Gradle Behind Proxy

文章字数 5.1k 阅读约需 5 mins.

在网络代理环境下使用 Gradle 时,可能会遇到以下三个问题:

  1. gradlew 下载对应 Gradle 发布版时无法下载
  2. 下载依赖时,提示连接超时
  3. SSL 证书无效

错误提示

Unable to tunnel through proxy. Proxy returns "HTTP/1.1 407 Proxy Authorization Required"

原因

wrapper 下载发布包时也需要配置代理

解决办法

试遍各种为 wrapper 配置代理的方法,均无果。用最直接的办...

查看全文

JAVA 五月 15, 2018

Using Liquibase with Gradle in Spring Project

文章字数 14k 阅读约需 13 mins.

Spring 项目通过 Gradle 插件使用 Liquibase 的简易说明

引用 Liquibase 官网 的一张图片:

类似的工具还有 Flyway

Flyway 官网 上有一个同类工具特性的对比,详见 Feature Comparison 部分或下图:

看图的话,Flyway 完胜,不过 等等!看完下面内容再做决定

查看全文

JAVA 六月 15, 2016

TeamCity for Java Project on GitHub

文章字数 4.8k 阅读约需 4 mins.

GitHub 上 Java 项目使用 TeamCity 和 Codecov 的简易说明

  • 利用 TeamCity 构建 GitHub 上的 Java 项目
  • 构建时进行静态代码质量检查及单元测试,并生成测试覆盖率报告
  • 确保每个 PR 和 master 分支的每次提交都能触发构建
  • 将构建结果和覆盖率情况可视化展现

使用 Docker 镜像搭建基础环境:

$ docker pull propersoft/docker-teamcity:server
$ docker pull propersoft/...
查看全文

JAVA 二月 02, 2016

Web Resource Optimizer for Java (wro4j) Demo

文章字数 3.5k 阅读约需 3 mins.

wro4j 代码仓库

wro4j 文档

在 web 项目中配置一个 Filter,页面上需要 css 或 js 资源时,将请求发送至 Filter,Filter 将按照 wro.xml 配置文件中配置的 group 将资源编译后返回。

步骤 1:添加 WroFilter

<filter>
    <filter-name>WebResourceOptimizer</filter-name>
    <filter-class>ro.isdc.wro.http.WroFilter...
查看全文

WEB 十二月 31, 2015

使用 Clear Key 加密 MP4 视频并播放

文章字数 15k 阅读约需 14 mins.

使用 HTML5 技术播放视频简单方便,但同时也将视频源直接暴露了出去。针对一些需要保护以避免用户随意下载的视频,有没有鱼和熊掌兼得之策呢?

在现代浏览器中,使用 HTML5 技术在线播放视频已不是难事,只需浏览器支持和视频格式兼容即可(参见 使用 HTML5 技术播放视频)。<video> 标签带给我们便利的同时,也将视频源地址直接暴露了出去。虽然 开放 是互联网精神之一,但总会有些内容需要限制传播或独家提供。在 HTML5 视频播放技术中,有没有一些可用的版权保护策略呢?

既然 ...

查看全文
加载更多
0%