![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
web开发
文章平均质量分 75
梦想画家
开源软件爱好者,乐于博客分享,业余时间喜欢跑步和科幻,希望与意趣相投朋友一起学习交流。
展开
-
Golang实现更安全的HTTP基本认证(Basic Authentication)
本文介绍了Go如何实现安全http基本认证,首先介绍原理,后面给出详细实现过程,最后通过curl和GO http客户端进行验证。详细内容参考:https://www.alexedwards.net/blog/basic-authentication-in-go。原创 2023-04-10 18:00:14 · 2955 阅读 · 2 评论 -
快速学习 Golang RPC 教程
Remote Procedure Call (RPC) 是一种使用TCP协议从另一个系统调用应用程序功能执行的方法。Go有原生支持RPC服务器实现,本文通过简单实例介绍RPC的实现过程。原创 2022-12-10 22:10:00 · 930 阅读 · 0 评论 -
使用GSON把数据保存为json格式文件
当然也可以存储自定义类型对象为json格式。}}}如果字段标记为transient,gson默认会忽略,json序列化和反序列化过程中不会包括该字段。因此输出中没有出现nationality字段。{"id":1}如果需要保留null字段,请继续往下浏览。本文介绍使用gson库把java不同数据类型序列化为json文件。原创 2022-11-23 17:36:04 · 2307 阅读 · 0 评论 -
Spring5.1新特性—接口驱动开发Controller
本文介绍Spring MVC新特性,使用java接口定义web请求。1. 概述通常在SpringMVC中定义Controller,在其方法上使用不同的注解用于描述请求URL入口地址,HTTP请求方法,路径变量等。举例,我们在普通方法上增加@PostMapping("/save/{id}"),指定请求地址和路径变量:@PostMapping("/save/{id}")@ResponseBodypublic Book save(@RequestBody Book book, @PathVariable原创 2021-03-14 11:44:12 · 377 阅读 · 0 评论 -
Spring Boot 启用 http2 协议
Spring Boot 启用 http2 协议HTTP2是万维网(WWW)发布的HTTP网络协议主流版本,也是当前HTTP协议的最新版本(1997年发布的HTTP 1.1)。它来源于SPDY协议,最初由谷歌开发。1. HTTP2的优势所有主流的浏览器,如Chrome, Opera, Firefox, Safari, Edge浏览器都支持这个协议。相对于HTTP1.1协议,HTTP2的优势主要包括下面几点。1.1 多路复用和并发性一般渲染HTML页面可能需要JS, CSS,图像等多个资源文件,需要原创 2020-09-02 16:56:30 · 10759 阅读 · 1 评论 -
Jackson 生成xml格式文件
Jackson 生成xml格式文件Jackson是java应用中流行的操作Json工具库,很快成为Java生态中事实标准,Spring boot默认也使用Jackson。从版本2开始,支持json的同时引入成熟的xml实现。1. 环境依赖增加Jackson xml 模块,仅需要一个依赖:<dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>原创 2020-08-21 11:50:57 · 10690 阅读 · 2 评论 -
使用Jackson和JSON Pointer查询解析任何JSON节点
使用Jackson和JSON Pointer查询解析任何JSON节点JSON Pointer是字符串表达式,用于标识JSON文档特定节点。RFC 6901规范有定义,用于查询复杂Json文档结构。1.示例Json文档{ "firstName": "John", "lastName": "Doe", "address": { "street": "21 2nd Street", "city": "New York", "postal原创 2020-06-03 18:14:57 · 5372 阅读 · 2 评论 -
介绍 Java RabbitMQ Client
介绍 RabbitMQ解耦组件是软件设计的重要部分,其中一种实现是使用消息系统。其提供异步方式实现组件或服务间通信。本文我们介绍其中一个消息系统实现:RabbitMQ。RabbitMQ是实现Advanced Message Queuing Protocol (AMQP)协议的消息代理中间件,对主流语言都提供了客户端库。除了对软件组件进行解耦,还可以用于下列场景:执行后端操作执行异步操作...原创 2019-12-15 09:57:41 · 544 阅读 · 0 评论 -
Spring mvc展示RSS Feed
Spring mvc展示RSS Feed本文介绍如何使用Spring mvc及AbstractRssFeedView 类构建简单Rss Feed。同时实现简单REST API发布feed。1. RSS FeedFeed:信源,理解成信息的源泉,英文是feed。信息发布网站将网站全部或者部分信息整合到一个 RSS 文件中,这个文件就被称之为 feed 。信源中包含的数据都是标准的 XML 格...原创 2019-08-24 21:34:16 · 536 阅读 · 0 评论 -
Spring Data JPA 分页教程
Spring Data JPA 分页教程分页查询避免一次性加载过多信息至内存,Spring Data JPA 分页功能非常强大且简单。本文带你一起了解如何使用。1. 分页实现对数据库记录进行分页查询需要下面步骤:获得包括分页请求信息的Pageable对象把分页对象作为参数传给相应的repository 方法下面看看如何获得分页请求对象。2. 分页对象我们可以通过两种方法获取分页...原创 2019-08-27 12:55:19 · 4462 阅读 · 3 评论 -
Jackson 反序列化数组类型json值
Jackson 反序列化数组类型json值本文介绍如何使用Jackson 2反序列化json数组值至Java 数组或集合。反序列化为ArrayJackson可以很容易反序列化为Java数组:@Testpublic void givenJsonArray_whenDeserializingAsArray_thenCorrect() throws JsonParseException,...原创 2019-08-31 11:56:07 · 6235 阅读 · 4 评论 -
RestTemplate使用JSON发送Post请求
RestTemplate使用JSON发送Post请求本文我们说下如何使用Spring的 RestTemplate调用post请求,发送json内容。1. 定义服务端web接口1.1. 定义业务接口先定义Person实体类表示post请求的数据:public class Person { private Integer id; private String name; ...原创 2019-09-01 16:56:44 · 76803 阅读 · 1 评论 -
RestTemplate简明教程
RestTemplate简明教程本文我们学习Spring REST 客户端 – RestTemplate,包括其各种操作如何使用。1. 使用GET方法获取资源示例中使用到的Foo实体类定义:@Datapublic class Foo { private long id; private String name; public Foo() { su...原创 2019-09-11 21:02:10 · 1519 阅读 · 0 评论 -
Spring Boot TestRestTemplate教程
Spring Boot TestRestTemplate教程本文介绍 Spring Boot TestRestTemplate。建议阅读之前先阅读RestTemplate简明教程,TestRestTemplate可认为是RestTemplate有吸引力的替代方案。1. maven依赖使用TestRestTemplate之前需要加入相应依赖:<dependency> &l...原创 2019-09-11 22:05:00 · 5272 阅读 · 0 评论 -
Java 实现RSA签名和加密
Java 实现RSA签名和加密RSA在1977年发明,是公钥加密方式的事实标准,名称有其三位作者首字母组成。本文我们介绍Java中如何使用RSA实现加密和签名。RSA属于非对称加密算法,有两个密钥。区别于共享密钥的对称加密算法,如DES和AES。公钥可以共享给任何人,私钥自己进行保管。公钥用于加密数据,使得该加密数据只能用私钥进行解密;私钥也可用于签名数据,签名和数据一起发送,然后使用公钥验证...原创 2019-09-30 17:10:24 · 11736 阅读 · 2 评论 -
Spring的 RequestBody 和 ResponseBody注解
Spring的 RequestBody 和 ResponseBody注解本文我们简要讨论下spring两个注解:RequestBody 和 ResponseBody注解。@RequestBody 注解@RequestBody注解可以映射httpRequest请求体至域对象,启用自动把httpRequest请求体反序列化为java对象。在实际应用中比如非常复杂的业务表达提交,如主子表嵌套情况。...原创 2018-12-22 17:24:49 · 1117 阅读 · 0 评论 -
Vue.js 和 spring boot 入门教程
Vue.js 和 spring boot 入门教程本文我们通过示例说明如何整合使用vue和spring boot,示例通过vue渲染单个页面,spring boot作为后端提供数据。为了对比说明,也使用Thymeleaf模板技术渲染页面部分内容。搭建spring boot应用pom.xml使用spring-boot-starter-web 和 spring-boot-starter-thy...原创 2018-12-15 09:55:58 · 2984 阅读 · 0 评论 -
spring Controller中返回自定义状态码
spring Controller中返回自定义状态码本文我们讨论几种方式从spring mvc conroller中返回自定义的Http状态码。为了更清楚地给客户端描述请求结果,使用丰富的HTTP协议语言比较重要。例如,当发生请求错误时,针对不同的错误类型发送一个特定的错误代码,客户端根据错误消息展示相应的错误消息。返回自定义状态码spring 提供多种方式从Controller类...原创 2018-08-25 11:52:35 · 24040 阅读 · 5 评论 -
freemarker乱码问题
数据不是乱码,模板文件中的中文是乱码,是模板的文件格式不正确造成的;其他的地方编码设置:config.setEncoding(Locale.CHINA, "UTF-8"); config.setDirectoryForTemplateLoading(new File(base+"configuration\\template\\jsp"原创 2012-05-16 16:42:25 · 1283 阅读 · 0 评论 -
sqlserver 调用qq map 服务,根据地点获取所在城市
使用sqlserver 调用腾讯 map 服务,根据地点获取所在城市;定义存储过程调用web服务,并解析返回的JSON字符串。原创 2015-01-02 18:09:13 · 2465 阅读 · 0 评论 -
java开源验证框架OVAL应用实例
对oval验证框架进行分类,并针对常用的验证规则进行总结,从而可以抽象成模型可以定义,达到定义后自动生成,减少开发人员的工作量,同时也规范化代码结构。原创 2015-10-21 11:58:08 · 4579 阅读 · 0 评论 -
springmvc中使用thymeleaf乱码完整方案
springmvc中使用thymeleaf乱码完整方案 在springmvc项目中,使用thymeleaf视图,出现中文乱码,尤其是message.properties文件中文,多次调试并总结如下。本文统一采用java config方式说明,如果你仍然是xml配置,相应修改xml配置即可。thymeleaf模板文件<!DOCTYPE html><html xmlns:th="http://w原创 2017-09-22 10:35:21 · 3621 阅读 · 0 评论 -
QueryDsl查询mongodb数据2
QueryDsl查询实例 上节已经生成了Query类,本文通过示例说明如何通过Query类实现灵活查询。示例类及查询类 为了说明示例,这里定义简单的User类,以及依据User类生成的QUser类。User类:@Document public class User {@Idprivate String id;private String name;private Integer原创 2017-10-27 15:54:27 · 3692 阅读 · 0 评论 -
如何使用spring mvc 主题
如何使用spring mvc 主题主题是一组静态资源的集合,一般包括影响应用程序界面样式的资源,如样式表和图像文件。本文详细说明使用 Spring MVC 的主题实现不同风格切换。配置Spring MVC 主题在spring web 应用中使用主题,需要配置一个实现org.springframework.ui.context.ThemeSource接口的类,这里我们使用org.sp翻译 2018-01-31 10:19:03 · 2290 阅读 · 0 评论 -
spring 和 spring boot 中属性配置
spring 和 spring boot 中属性配置本文我们介绍如何在spring中配置和应用属性——通过xml的 或java Configuration 的@PropertySource。在Spring 3.1之前,将新的属性文件添加到Spring中及使用属性值并不是那么灵活和健壮。从Spring 3.1开始,新的Environment 和 PropertySource 抽象已经简化整...原创 2018-05-25 19:41:38 · 2323 阅读 · 0 评论 -
获取所有spring管理的bean
获取所有spring管理的bean #本文我们探索使用不同的方式获取spring容器中所有bean。## IOC容器 ##bean是基于spring应用的基础,所有bean都驻留在ioc容器中,由容器负责管理bean生命周期有两种方式可以获取容器中的bean:- 使用ListableBeanFactory接口- 使用Spring Boot Actuator## 使用L...原创 2018-05-26 20:52:52 · 10978 阅读 · 0 评论 -
Spring Security Basic 认证
Spring Security Basic 认证本文介绍如何在spring security中搭建、配置、自定义Basic认证。读者需要在spring mvc 基础上进行配置测试。Spring Security配置使用java config方式配置如下:@Configuration@EnableWebSecuritypublic class CustomWebSecurit...原创 2018-06-07 22:24:12 · 8133 阅读 · 0 评论 -
介绍Spring WebUtils 和 ServletRequestUtils
介绍Spring WebUtils 和 ServletRequestUtils文本我们介绍spring mvc内置的web request工具WebUtils 和 ServletRequestUtils。场景在大多数应用中,我们经常遇到从输入http request中取一些参数场景,通常实现代码如下:HttpSession session = request.getSess...原创 2018-07-01 14:16:38 · 4298 阅读 · 0 评论 -
介绍Querydsl Web Support实现REST Query Language
介绍Querydsl Web Support实现REST Query Language文本我们讨论sprin data Querydsl web支持功能。Maven 依赖配置<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring...原创 2018-07-01 14:46:24 · 1638 阅读 · 0 评论 -
spring 事件
spring 事件本文我们讨论如何使用spring event。事件是spring中容易被忽略的功能,但也是最有用的功能之一。和其他的spring特性一样,事件发布功能由ApplicationContext提供。事件遵循下面几点简单约定: - 事件应该继承自 ApplicationEvent - 发布类应该注入 ApplicationEventPublisher 对象 - 监听器应该...原创 2018-07-01 21:56:20 · 1208 阅读 · 1 评论 -
URL 和 URI 区别
URL 和 URI 区别本文我们讨论URL 和 URI 的主要区别,并通过示例说明这些差异。URL 和 URI直接差异来自其定义:Uniform Resource Identifier (URI) − 对任何抽象或物理资源进行完整标识的字符序列。 UniformResource Locator (URL) − 除了标识资源可用的位置之外,URI的一个子集描述了访问该资源的主...原创 2018-07-15 22:19:09 · 12622 阅读 · 1 评论 -
图像转换为Base64字符串
图像转换为Base64字符串本文我们讨论使用Apache Common IO 和 Java 8 自带 Base64 功能把图像文件转为Base64字符串,并反向解码为原图像.该转换可以应用于任何二进制文件或二进制数组。当我们需要将JSON格式的二进制内容(例如从移动应用程序到REST端点)传输到REST端点时,它非常有用。maven 依赖首先我们需要在项目引入依赖,这里示例ma...原创 2018-08-30 19:50:28 · 2595 阅读 · 0 评论 -
IIS Web 服务器的权限设置
IIS Web 服务器的权限设置有两个地方,一个是 NTFS 文件系统本身的权限设置,另一个是 IIS 下 网站->默认网站->右击属性->虚拟目录 面板上。这两个地方是密切相关的。下面我会以实例的方式来讲解如何设置权限。 IIS5.1下 网站->默认网站->右击属性->虚拟目录 面板上有: 脚本资源访问:用户可以对网站目录的脚本文件有操作的权限,前提是开启读取或者写入权限,开启读转载 2009-11-08 13:59:00 · 2778 阅读 · 0 评论