
后端技术/Java
文章平均质量分 89
后端技术/Java
不夜De星空
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
错误码如何设计才合理?
一 前言在工作中,接触过不少外部接口,其中包括:支付宝,微信支付,微博开发平台,阿里云等等。每家公司错误码风格都不尽相同,有使用纯数字的,有使用纯英文的,也有使用字母和数字组合的。也接触过很多内部系统,错误码设计也不尽相同。错误码的输出路径面向日志输出 服务内传递,最终是输出到日志。 域内服务间,比如同时大麦电商之间的系统,最终目的是输出到日志。 面向外部传递 域内向域外 服务端传递到前端 OpenAPI 错...转载 2020-07-01 09:25:27 · 460 阅读 · 0 评论 -
SpringBoot配置属性之MQ
activemq spring.activemq.broker-url 指定ActiveMQ broker的URL,默认自动生成. spring.activemq.in-memory 是否是内存模式,默认为true. spring.activemq.password 指定broker的密码. spring.activemq.pooled 是否创建Pool...转载 2019-06-21 13:58:59 · 1656 阅读 · 0 评论 -
SpringBoot配置属性之DataSource
datasource spring.dao.exceptiontranslation.enabled 是否开启PersistenceExceptionTranslationPostProcessor,默认为true spring.datasource.abandon-when-percentage-full 设定超时被废弃的连接占到多少比例时要被关闭或上报 sprin...转载 2019-06-21 13:50:15 · 630 阅读 · 0 评论 -
SpringBoot配置属性之MVC
序主要是mvc相关的一些配置mvc spring.mvc.async.request-timeout 设定async请求的超时时间,以毫秒为单位,如果没有设置的话,以具体实现的超时时间为准,比如tomcat的servlet3的话是10秒. spring.mvc.date-format 设定日期的格式,比如dd/MM/yyyy. spring.mvc.favic...转载 2019-06-21 13:52:20 · 345 阅读 · 0 评论 -
Springboot监控之二:Spring Boot Admin对Springboot服务进行监控
概述Spring Boot 监控核心是 spring-boot-starter-actuator 依赖,增加依赖后, Spring Boot 会默认配置一些通用的监控,比如 jvm 监控、类加载、健康监控等。我们之前讲过Docker容器的可视化监控,即监控容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息。同样利用SpringBoot作为微服务单元的实例化技术...转载 2019-12-10 16:55:21 · 538 阅读 · 0 评论 -
微服务架构实施原理
一:题记 基于微服务架构和Docker容器技术的PaaS云平台建设目标是给我们的开发人员提供一套服务快速开发、部署、运维管理、持续开发、持续集成的流程。 平台提供基础设施、中间件、数据服务、云服务器等资源,开发人员只需要开发业务代码并提交到平台代码库,做一些必要的配置,系统会自动构建、部署,实现应用的敏捷开发、快速迭代。在系统架构上,PaaS云平台主要分为微服务架构、Docker容...转载 2019-01-28 12:14:03 · 232 阅读 · 0 评论 -
基于DDD的微服务设计和开发实战
基于DDD的微服务设计和开发实战作者:欧创新、邓頔、文艺目录基于DDD的微服务设计和开发实战1 目标2 适用范围3 DDD 分层架构视图展现层应用层领域层基础层4 服务视图微服务内的服务视图1、接口服务2、应用服务3、领域服务4、基础服务微服务外的服务视图1. 前端应用与微...转载 2019-06-22 15:16:00 · 17335 阅读 · 3 评论 -
史上最全面的Spring Boot Cache使用与整合
一:Spring缓存抽象Spring从3.1开始定义了org.springframework.cache.Cache和org.springframework.cache.CacheManager接口来统一不同的缓存技术;并支持使用JCache(JSR-107)注解简化我们开发; Cache接口为缓存的组件规范定义,包含缓存的各种操作集合; Cache接口下Spring提供了各种...转载 2019-05-09 13:15:10 · 229 阅读 · 0 评论 -
SpringBoot配置属性之Security
spring security是springboot支持的权限控制系统。 security.basic.authorize-mode 要使用权限控制模式. security.basic.enabled 是否开启基本的鉴权,默认为true security.basic.path 需要鉴权的path,多个的话以逗号分隔,默认为[/**] ...转载 2019-06-21 13:48:18 · 583 阅读 · 0 评论 -
Spring Boot Actuator:健康检查、审计、统计和监控
Spring Boot Actuator可以帮助你监控和管理Spring Boot应用,比如健康检查、审计、统计和HTTP追踪等。所有的这些特性可以通过JMX或者HTTP endpoints来获得。Actuator同时还可以与外部应用监控系统整合,比如 Prometheus, Graphite, DataDog, Influx, Wavefront, New Relic等。这些系统提供了非常好...转载 2019-12-10 16:51:02 · 544 阅读 · 0 评论 -
SpringBoot配置属性之NOSQL
cache spring.cache.cache-names 指定要创建的缓存的名称,逗号分隔(若该缓存实现支持的话) spring.cache.ehcache.config 指定初始化EhCache时使用的配置文件的位置指定. spring.cache.guava.spec 指定创建缓存要使用的spec,具体详见CacheBuilderSpec. spr...转载 2019-06-21 13:58:15 · 214 阅读 · 0 评论 -
SpringBoot配置属性之Server
server配置 server.address 指定server绑定的地址 server.compression.enabled 是否开启压缩,默认为false. server.compression.excluded-user-agents 指定不压缩的user-agent,多个以逗号分隔,默认值为:text/html,text/xml,text/plain,te...转载 2019-06-21 13:51:24 · 7813 阅读 · 0 评论 -
SpringBoot配置属性之Migration
SpringBoot支持了两种数据库迁移工具,一个是flyway,一个是liquibase。其本身也支持sql script,在初始化数据源之后执行指定的脚本。flyway flyway.baseline-description 对执行迁移时基准版本的描述. flyway.baseline-on-migrate 当迁移时发现目标schema非空,而且带有没有元数据的表时,是...转载 2019-06-21 13:59:51 · 844 阅读 · 0 评论 -
微服务的4个设计原则和19个解决方案
微服务架构现在是谈到企业应用架构时必聊的话题,微服务之所以火热也是因为相对之前的应用开发方式有很多优点,如更灵活、更能适应现在需求快速变更的大环境。本文将介绍微服务架构的演进、优缺点和微服务应用的设计原则,然后着重介绍作为一个“微服务应用平台”需要提供哪些能力、解决哪些问题才能更好的支撑企业应用架构。微服务平台也是我目前正在参与的,还在研发过程中的平台产品,平台是以SpringCloud为...转载 2019-04-23 16:36:13 · 629 阅读 · 0 评论 -
分享 - 7 个开源的 Spring Boot 前后端分离优质项目
前后端分离已经在慢慢走进各公司的技术栈,不少公司都已经切换到这个技术栈上面了。即使贵司目前没有切换到这个技术栈上面,松哥也非常建议大家学习一下前后端分离开发,以免在公司干了两三年,SSH 框架用的滚瓜烂熟,出来却发现自己依然没有任何优势!其实前后端分离本身并不难,后段提供接口,前端做数据展示,关键是这种思想。很多人做惯了前后端不分的开发,在做前后端分离的时候,很容易带进来一些前后端不分时候的开...转载 2020-03-09 09:11:13 · 411 阅读 · 0 评论 -
Spring Cloud架构的各个组件的原理分析
我们先认识一下SpringCloud的各个组件,然后知其所以然。原理讲解前,先看一个最经典的业务场景,如开发一个电商网站,要实现支付订单的功能,流程如下:创建一个订单之后,如果用户立刻支付了这个订单,我们需要将订单状态更新为“已支付” 扣减相应的商品库存 通知仓储中心,进行发货 给用户的这次购物增加相应的积分如上,微服务的应用场景和核心竞争力:降低耦合:每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复...转载 2020-11-23 10:21:08 · 606 阅读 · 0 评论 -
苏宁Spring Cloud微服务脚手架工具vole实践分享
为应对传统单体架构的缺陷,微服务架构被企业广泛应用。Spring Cloud 为开发人员提供了快速构建微服务的系列工具,但是并没有进行相关整合, vole 是在其基础上搭建的一套可以快速实现微服务的基础脚手架工具。1、传统单体架构的缺陷传统单体应用将所有功能的表示层、业务逻辑层、数据访问层、包括静态资源等全部糅合在一个工程内,编译 打包 部署在单台服务器上线,比如打成 war 包...转载 2019-06-15 18:52:36 · 2157 阅读 · 0 评论 -
RESTful 架构详解
1. 什么是RESTREST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一转载 2017-08-26 10:32:34 · 242 阅读 · 0 评论 -
UnderTow 核心配置
在我们的容器中,我们将微服务实例的容器内的 TCP Socket Buffer 的读写 buffer 大小成一模一样的配置(因为微服务之间调用,发送的请求也是另一个微服务接受,所以调整所有微服务容器的读写 buffer 大小一致,来优化性能,默认是根据系统内存来自动计算出来的)。我们这一节详细介绍了 Undertow 的核心配置,主要包括线程池以及 buffer 配置,以及关于 http 协议的一些配置。对应 Undertow 的相关配置,配置类是。对应 XNIO 的相关配置,配置类是。转载 2023-04-06 14:37:35 · 1197 阅读 · 0 评论 -
云计算之概念——IaaS、SaaS、PaaS、Daas
云计算通俗来说就是输入/输出和计算不在一个主机上。计算要用到计算设备,计算设备一般是指CPU、内存和硬盘,输入/输出设备一般是指键盘、鼠标、显示器、耳机、音响、话筒等外设。而我们的个人计算机是使用主板将这些东西连接到一起来协调工作。 一个软件在执行以完成某项任务的时候,如果用到的计算设备和输入/输出设备不是通过主板连接,而是通过网络连接,那么这个过程就叫云计算。...转载 2019-04-01 14:52:44 · 41034 阅读 · 3 评论 -
远程通信的几种选择(RPC,Webservice,RMI,JMS的区别)
RPC(Remote Procedure Call Protocol)RPC使用C/S方式,采用http协议,发送请求到服务器,等待服务器返回结果。这个请求包括一个参数集和一个文本集,通常形成“classname.methodname”形式。优点是跨语言跨平台,C端、S端有更大的独立性,缺点是不支持对象,无法在编译器检查错误,只能在运行期检查。Web ServiceWeb Serv转载 2015-03-30 22:43:39 · 467 阅读 · 0 评论 -
Apache Axis2 环境搭配详解
配置Eclipse,Eclipse自带了开发WebService的工具。打开Eclipse-->点击菜单windows-->Preferences-->WebServices-->Axis2Preferences-->设置Axis2 runtime location为Axis2下载后并解压的核心包的位置:选择后Eclipse会自动检测包是否正确。如果suc...转载 2015-06-11 17:29:29 · 569 阅读 · 0 评论 -
UniEAP Platform开发环境搭建
一、准备工作UniEAP Platform V4.6UniEAP Platform V4.6基础工程包UniEAP Platform V4.6支撑库脚本数据库驱动jar(默认Oracle,使用其他数据库需提供驱动)unieap.license二、搭建过程运行UniEAP Platform,并选择一个新的工作空间导入已有的工程到工作空间,选择准备好原创 2016-06-07 10:10:46 · 5348 阅读 · 6 评论 -
效率提高 10 倍 !一份不可多得的 Lombok 学习指南
一、Lombok 简介Lombok 是一款 Java 开发插件,使得 Java 开发者可以通过其定义的一些注解来消除业务工程中冗长和繁琐的代码,尤其对于简单的 Java 模型对象(POJO)。在开发环境中使用 Lombok 插件后,Java 开发人员可以节省出重复构建,诸如 hashCode 和 equals 这样的方法以及各种业务对象模型的 accessor 和 toString 等方...转载 2019-11-11 08:53:47 · 276 阅读 · 0 评论 -
SpringBoot配置属性之其他
aop spring.aop.auto 是否支持@EnableAspectJAutoProxy,默认为: true spring.aop.proxy-target-class true为使用CGLIB代理,false为JDK代理,默认为false application spring.application.admin.enabled 是否启用admin特性,默认为...转载 2019-06-21 14:00:40 · 193 阅读 · 0 评论 -
Spring Tools Suite (STS) 简介
首先,sts是一个定制版的Eclipse,专为Spring开发定制的,方便创建调试运行维护Spring应用。 官方页面、下载地址(3.8.1 win x64)。其次,没什么好介绍的,用一下就明白了。 创建Spring应用的过程同 https://start.spring.io/ 中所示--实际上访问的接口一致。 下载之后,可以看到一个st转载 2017-09-06 16:27:37 · 1193 阅读 · 0 评论 -
JWT - JSON Web Token
JWTJson Web Token ,是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC 7519),被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。单点登录(Single Sign On,以下简称SSO),是指在多系统应用群中登录一个系统,便可在该应用群其他所有系统中得到授权而无需再次登录。 单系统登录(session)认证和单点(tok...转载 2019-01-10 20:48:25 · 198 阅读 · 0 评论 -
微服务为什么一定要用docker
引言早在2013年的时候,docker就已经发行,然而那会还是很少人了解docker。一直到2014年,Martin Fowler提出了微服务的概念,两个不相干的技术终于走在了一起,创造了今天的辉煌!近几年来,很多互联网关系开始跟风,构建docker+微服务的架构体系。然而,根据笔者观察发现,有些童鞋在使用过程中,只是会用,而根本不了解为什么使用docker,反正对他们来说,公司让用就用!...转载 2019-04-03 17:20:22 · 652 阅读 · 0 评论 -
Hibernate各种主键生成策略与配置详解
Hibernate各种主键生成策略与配置详解转载 2016-07-06 20:52:09 · 306 阅读 · 0 评论 -
SpringBoot四大神器之Starter
SpringBoot的starter主要用来简化依赖用的。本文主要分两部分,一部分是列出一些starter的依赖,另一部分是教你自己写一个starter。部分starters的依赖Starter(Group ID: org.springframework.boot) 传递依赖于 spring-boot-starter-log4j2 ■ org.apache.logging....转载 2019-06-21 14:03:19 · 637 阅读 · 0 评论 -
WebService的两种方式SOAP和REST比较
第一次接触WebService,对于很多概念不太理解,尤其是看到各个OpenAPI的不同提供方式时,更加疑惑。如google map api采用了AJAX方式,通过javascript提供API,而淘宝TOP则采用直接的HTTP+XML请求方式,最令我疑惑的是教材上讲的WSDL,UDDI从没有在这些API中出现过。现在知道了WebService原来有两种方式,一是SOAP协议方式,在这种方式下转载 2016-06-14 23:53:53 · 2100 阅读 · 0 评论 -
javax.inject.jar:依赖注入非常方便的jar包
用过Spring框架的我们都知道,每当生成依赖注入的时候,我们都必须生成相应类的set方法,而且要在set方法上面写上@Autowired,才能实现依赖注入,如下:package com.kaishengit.web;import com.kaishengit.service.ProjectService;import org.springframework.beans.factory.转载 2016-06-02 22:38:33 · 11733 阅读 · 0 评论 -
Jedis的Publish/Subscribe功能的运用
一、Redis服务器端的安装和客户端Jedis的安装1.下载Redis 下载地址:http://redis.googlecode.com/files/redis-2.4.8.tar.gz 2.安装Redis在linux下运行如下命令进行安装。$ tar xzf redis-2.4.8.tar.gz$ cd redis-2.4.8$ make转载 2017-09-21 10:53:12 · 1008 阅读 · 0 评论 -
Springboot AOP 自定义注解实现系统日志
一、添加AOP依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>二、AOP切点类@Slf4j@Comp...原创 2019-08-08 16:00:31 · 1282 阅读 · 0 评论 -
23种设计模式汇总整理
设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两类:并发型模式和线程池模式。转载 2017-06-05 15:12:50 · 290 阅读 · 0 评论 -
在jpa的JpaRepository需要对符合主键@EmbeddedId 中的一个字段进行查询的用法
在jpa的JpaRepository需要对符合主键@EmbeddedId 中的一个字段进行查询的用法:在JpaRepository Interface中使用findByIdRoleId 这样的语法。jpa会自动生成正确的sql语句。例子:1.pojo 类RoleMenu.javapackage com.ninelephas.whale.pojo; import j...转载 2019-07-16 16:30:24 · 1473 阅读 · 0 评论 -
Java分布式锁方案和区别
分布式锁的实现在常见的分布式锁中有以下三种实现:Redis 实现 Zookeeper 实现 数据库实现1. 基于 Redis 的实现在 Redis 中有 3 个重要命令,通过这三个命令可以实现分布式锁setnx key val:当且仅当key不存在时,set一个key为val的字符串,返回1;若key存在,则什么都不做,返回0。 expire key timeout:为key设置一个超时时间,单位为second,超过这个时间 key 会自动删除。 delete key:删除key转载 2021-12-16 09:48:11 · 503 阅读 · 0 评论 -
OIDC(OpenId Connect)身份认证
1 什么是OIDC?看一下官方的介绍(http://openid.net/connect/):OpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0 protocol. It allows Clients to verify the identity of the End-User based on th...转载 2019-06-23 22:30:54 · 49050 阅读 · 3 评论 -
Java8 lambda表达式10个示例
例1、用lambda表达式实现Runnable我开始使用Java 8时,首先做的就是使用lambda表达式替换匿名类,而实现Runnable接口是匿名类的最好示例。看一下Java 8之前的runnable实现方法,需要4行代码,而使用lambda表达式只需要一行代码。我们在这里做了什么呢?那就是用() -> {}代码块替代了整个匿名类。// Java 8之前:new Thread...转载 2019-07-18 16:37:26 · 288 阅读 · 0 评论 -
到底EJB是什么
到底EJB是什么?被口口相传的神神秘秘的,百度一番,总觉得没有讲清楚的,仍觉得一头雾水。百度了很久,也从网络的文章的只言片语中,渐渐有了头绪。 用通俗话说,EJB就是:"把你编写的软件中那些需要执行制定的任务的类,不放到客户端软件上了,而是给他打成包放到一个服务器上了"。是的,没错!EJB 就是将那些"类"放到一个服务器上,用C/S 形式的软件客户端对服务器上的"类"进行调用。快崩溃了吧!这...转载 2015-03-28 18:13:29 · 361 阅读 · 0 评论