Alibaba Cloud Toolkit( 阿里云开发者插件,简称:Cloud Toolkit )是一个面向 IntelliJ IDEA、Eclipse 和 Maven 平台的免费插件,旨在帮助开发者在本地开发平台(IDE)中更便捷的使用阿里云,从而高效地开发、测试、诊断并部署应用。
Cloud Toolkit 帮助开发者将本地应用程序一键部署到线下自有 VM,或阿里云 ECS、EDAS、Kubernetes 中去;并支持快速 SSH 登录到机器,高效执行终端命令和文件上传等。钉钉群号:23341694Cloud Toolkit产品说明
多条件查询遵循 Restful API 规范的改如何设计?
SF提问
1 | #### 问题描述 |
回答
如果Action不符合CRUD操作那该怎么办?
- 重新构造这个Action,使得它像一个资源的field(我理解为部分域或者部分字段)。这种方法在Action不包含参数的情况下可以奏效。例如一个有效的action可以映射成布尔类型field,并且可以通过PATCH更新资源。
- 利用RESTful原则像处理子资源一样处理它。例如,Github的API让你通过
PUT /gists/:id/star
来 star a gist ,而通过DELETE /gists/:id/star
来进行 unstar 。- 有时候你实在是没有办法将Action映射到任何有意义的RESTful结构。例如,多资源搜索没办法真正地映射到任何一个资源接入点。这种情况,
/search
将非常有意义,虽然它不是一个名词。这样做没有问题 - 你只需要从API消费者的角度做正确的事,并确保所做的一切都用文档清晰记录下来了以避免(API消费者的)困惑。
所以题主完全可以提供 /app/names/search
服务专门用于搜索功能,查询参数一般是通过 query parameters
的方式传递。
SpringBoot整合shiro 密码加密
数据库中密码相关字段都不是明文,肯定是加密之后的,传统方式一般是使用MD5加密。
单纯使用不加盐的MD5加密方式,当两个用户的密码相同时,会发现数据库中存在相同内容的密码,这样也是不安全的。我们希望即便是两个人的原始密码一样,加密后的结果也不一样。
Spring Boot web 应用加速
浅谈摘要、数字签名、数字证书
CIA 原则
所有互联网企业都要建立一套完整的信息安全体系,遵循 CIA 原则,即保密性(Confidentiality)、完整性(Integrity)、可用性(Availability)
- 保密性。对需要保护的数据(比如用户的私人信息等)进行保密操作,无论是存储还是传输,都要保证用户数据及相关资源的安全。比如,在存储文件时会进行加密,在数据传输中也会通过各种编码方式进行加密等。在实际编程中,通常使用加密等手段保证数据的安全。黑客不只是外部的,有可能从内部窃取数据,所以现在大多数企业的用户名敏感信息都不是以明文存储的,避免数据管理员在某些利益的驱动下,直接托库下载。数据泄露可能导致黑客进一步利用这些数据进行网站攻击,造成企业的巨大损失。
上面这段介绍是出自《码出高效:Java开发手册》
WireMock 伪造REST服务
焦油坑,没有银弹
没事就多聚聚,反正也是不归路
我总算体会到了, 以前那本我只愿意抬一眼看看封面那宛如动物世界一般的图片的<<人月神化>>. 从现在体会开来软件开发就是如此, 一个焦油坑. 没有银弹, 就看有人否让我们不越陷越深而已. 别期望写出令自己可以满意的代码, 除非你有充足的时间可以去每天涂涂改改. 面对前辈留下的心血, 我们接过他们的枪(冠冕堂皇点是, 说穿就是烂滩子), 理解多个人的思想, 最后才发觉每个人思想不统一, 他们之间的思想又可以排列组合出不同的思想. 最后发觉自己在那焦油坑里又陷下去一点. 接着把能骂的能发泄的话都说出来,吃着instant food做完最大的补救, 然后同样的结局和场景会发生在接过你的烂摊子的那个人身上.
RabbitMQ安装和详解
RabbitMQ介绍
RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。RabbitMQ主要是为了实现系统之间的双向解耦而实现的。当生产者大量产生数据时,消费者无法快速消费,那么需要一个中间层。保存这个数据。
AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。
RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。