![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端技术杂述
文章平均质量分 56
蜗牛2号
我们能看得远,是因为站在了巨人的肩上
展开
-
Idea进行远程Debug
问题定位,数据追踪?离不开远程Debug,下面让我们来看看那怎么实现远程Debug 第一步、在Idea中创建Remote 点击Edit Configurations--创建Remote 第二步、在服务器中启动项目 原先启动命令:$ java -jar api-gateway-exec.jar 现在:$ java -jar -Xdebug -Xrunjdwp:...原创 2018-06-20 20:15:03 · 33016 阅读 · 0 评论 -
单机斗地主之完整功能初版
一、斗地主规则介绍1.1 基本规则参加人数:3人总牌数:54张,从2到A,四种花色("梅花", "红桃", "黑桃", "方形"),共52张,加黑白色的小王,彩色的大王。分牌数:每人先分17张,最后确定地主拿3张胜利规则:三人中有一人出完牌1.2 出牌规则单张:任意一张牌对子:两张一样的牌顺子:大于四张,连续的牌三带一:三张一样的牌带任意一张炸弹:四张一...原创 2018-10-21 12:59:35 · 12304 阅读 · 5 评论 -
Spring Cloud探索之旅(二)——Spring Cloud Eureka
2.1 什么是服务注册与发现在服务治理框架中,通常都会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,包括服务的主机与端口号、服务版本号、通讯协议等一些附加信息。注册中心按照服务名分类组织服务清单,同时还需要以心跳检测的方式去监测清单中的服务是否可用,若不可用需要从服务清单中剔除,以达到排除故障服务的效果。在服务治理框架下,服务间的调用不再通过指定具体的实例地址来实现,而是通过...原创 2018-11-06 14:33:19 · 5086 阅读 · 2 评论 -
Spring Cloud探索之旅(一)——Spring Cloud基本组件
一、Spring Cloud Eureka我们使用微服务,微服务的本质还是各种API接口的调用,那么我们怎么产生这些接口、产生了这些接口之后如何进行调用那?如何进行管理哪?其实,我们可以将自己定义的API 接口注册到Spring Cloud Eureka上,Eureka负责服务的注册于发现,如果学习过Zookeeper的话,就可以很好的理解,Eureka的角色和 Zookeeper的角色差不多...原创 2018-11-02 17:08:00 · 5045 阅读 · 0 评论 -
阿里Oss对象存储服务基本工具集成
一、引言阿里的oss对象存储服务器,提供了存储空间管理,文件上传下载,文件管理,音频与图像处理等常用操作,基本满足中小企业对于文件处理的需求,但官方提供的Api接口都是简版,demo级别的,并不适合直接使用,故在下在工作之余,对其常用Api进行封装,集成为OssUtils工具类。二、Oss基本配置阿里官网推举用子access_key_id和access_key_secrt,而不采用全局...原创 2018-11-07 21:17:27 · 6679 阅读 · 0 评论 -
ElasticSearch完整环境搭建
一、安装elastic第一步、登录:https://www.elastic.co/cn/downloads/elasticsearch,选择需要的环境和版本下载第二步、解压下载的zip包,进入bin目录,执行elasticsearch.bat,出现如下信息,则成功。二、安装head插件第一步、登录:https://github.com/mobz/elasticsearch-head...原创 2018-11-08 10:42:18 · 8061 阅读 · 0 评论 -
开发规范(三)——服务器性能优化
1、采用非阻塞运行java程序#优化启动:非阻塞执行,牺牲CPU换取快速启动CMD java -Djava.security.egd=file:/dev/./urandom -jar baye-eureka.jar2、替换boot中的tomcat容器 <!--web 模块--> <dependency> <groupId>org....原创 2018-11-16 16:45:02 · 5040 阅读 · 0 评论 -
Nginx实现负载均衡
一、安装搭建环境1.1 编译环境yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel1.2 支持rewirte第一步、进入安装目录用wget下载: #进入安装目录cd /tools#下载wget http://downloads.sourceforge.net/projec...原创 2018-11-19 13:31:42 · 5467 阅读 · 0 评论 -
Swagger2详解
一、Swagger注解1.1 @Api用在请求的类上,表示对类的说明public @interface Api { //说明接口,无实际作用 String value() default ""; //文字说明接口,显示在UI上 String[] tags() default {""}; /** @deprecated */ @De...原创 2018-11-20 11:45:19 · 10346 阅读 · 0 评论 -
在线二维码生成技术
注:本文用以解决实际生产需求,而非深入学习研究所用,如需深入请接入:QR Code API一、引入pom依赖 <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>${go...原创 2018-11-26 15:07:48 · 2865 阅读 · 0 评论 -
Mysql实现主从数据库
一、前言要了解主从原理,我们首选要从mysql的二进制文件说起。MySQL的二进制日志(binary log)是一个二进制文件,主要用于记录修改数据或有可能引起数据变更的MySQL语句。二进制日志(binary log)中记录了对MySQL数据库执行更改的所有操作,并且记录了语句发生时间、执行时长、操作数据等其它额外信息,但是它不记录SELECT、SHOW等那些不修改数据的SQL语句。二进制日...原创 2018-12-04 10:11:46 · 2399 阅读 · 0 评论 -
请求日志——用于调试开发
一、前言在请求分发给具体的处理器之前,我们可以通过过滤器和拦截器来截取请求信息,但是藏于body中的参数确不能直接获取,因为在流对象中只允许一次性打开,这就好比你将桶里的水倒干净了,然后把桶交给别人。常规的处理方案有两种: 1、将流内容导入另一个流,然后将新的流传递 2、通过mark()和reset()方法将流内容回流。最初,我采用第二种方式,却发现依旧...原创 2018-11-27 15:14:58 · 1107 阅读 · 1 评论 -
搭建Ubuntu生产环境
一、基础环境配置1.1 配置dns服务器初始服务器无法ping www.baidu.com,需要自行配置DNS服务器命令:sudo vim /etc/resolv.conf#谷歌万能DNSnameserver 8.8.8.8nameserver 114.114.114.114命令:sudo vim /etc/network/interfaces#插入dns-n...原创 2018-12-07 17:28:18 · 1305 阅读 · 0 评论 -
根据Table内容自动生成实体类
一、前言最近负责各式各样三方接口对接,从百度,阿里,腾讯,网易再到各种小三方,调三方接口难度不大,但是封装大量的参数让人不胜其烦,于是,在下一寻思,何不写个自动生成工具?说干就干,根据阅读三方文档的经验来看,他们提供的参数信息一般是以表格形式展示,那么我的技术需求,首先的就是解析表单,接着,得到参数后,如果有合适的模版,不就可以了生成目标实体了么,vm模版,决定就是你了。#######...原创 2018-12-05 13:25:54 · 1988 阅读 · 0 评论 -
LocalDateTime基本使用
1、时间戳相互转换,2、日期对象与字符串相互转换package com.baye.common.core.util;import org.springframework.util.StringUtils;import javax.validation.constraints.NotNull;import java.time.LocalDateTime;import java....原创 2018-12-07 10:00:52 · 14151 阅读 · 1 评论 -
搭建Centos生产环境
一、部署四台centos虚拟机 (用以模拟生成环境)详情参见:传送门二、基础环境搭建2.1 配置yum1、添加yum源#一定注意版本#curl 下载阿里镜像源curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo#rpm 安装官...原创 2018-12-14 12:23:47 · 1548 阅读 · 1 评论 -
基于UDP的数据传输与基于TCP的简易聊天
一、UDP实现数据传输UDP是相当佛系的存在,对于数据发送者来说,不论接受者在与不在,我都将发送,对于数据接受者来说,不论数据好与坏,能收的,我都将接受。状态是浮云,毕竟是无状态协议,只要机子好,传输就是棒。1.1 数据发送者public class Server { static class UDPServer { DatagramSock...原创 2018-10-19 14:34:36 · 4557 阅读 · 0 评论 -
登录方式总结
登录与支付是一个系统最为关键的两个部分,学习需认真,设计要谨慎!下面就让我们一起来总结常见的登录方式。 一、点(用户)对点(系统)之用户密码登录(token不变) 具体流程: 用户发送用户名与密码给服务器,服务器根据它们查询数据库,如果获取到可用用户,则缓存用户auth(userid,token)或者存入session,然后返回userid与token给用户,用户获取...原创 2018-06-07 16:45:18 · 27745 阅读 · 0 评论 -
跨域访问与远程调用的简洁之道
前端不想和后端绑定啦,它想蹭百家!系统A有意系统B,它想来一次亲密接触!于是乎,跨域访问火了!远程调用火了!那么,最简单使用的跨域访问和远程调又是什么呢?请看下面道来。基于cors的跨域访问: 上代码: @RequestMapping(method = RequestMethod.DELETE) @CrossOrigin(origins = {"http://...原创 2018-06-07 11:46:34 · 24809 阅读 · 2 评论 -
详解正则表达式
一、正则表达式基本表示1.1 单字符 C 字符c \0n 八进制0n代表的字符(0<=n<=7) \0nn 八进制0nn代表的字符(0<=n<=7) \0mnn 八进制0mnn代表的字符(0<=m<=3,0<=n&l...原创 2018-07-20 10:06:25 · 29145 阅读 · 0 评论 -
WebMagic抓取阿里司法拍卖信息
1、 引入pom文件 <!--webmagic网络爬虫--> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-core</artifactId> &...原创 2018-09-11 11:14:10 · 33018 阅读 · 3 评论 -
在线语音验证码
一、基本数据准备1.1 语音材料最开始采用m4a格式的录音,文件能合并,但是无法正常播放1.2 获取绝对路径和生成验证码 /** * 生成验证码 * @param num * @return */ public static String genCode(int num) { StringBuffer sf ...原创 2018-09-08 23:34:41 · 37263 阅读 · 0 评论 -
Java实现在线模版预览和下载
*** 所有目录参数皆为项目相对路径一、基础准备 1.1 Maven构建项目 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> ...原创 2018-09-07 11:46:17 · 34251 阅读 · 1 评论 -
Spring Boot 探索之旅(一)——Spring Boot 简介
一、什么是Spring Boot随着技术日新月异的发展,如今的软件设计已不想曾经那般单一。业务复杂,功能繁琐,大量三方组件的相互集成,成为了开发的一大难题。幸而,Spring Boot如同一道曙光,为我们java开发者带来了福音,让我们摆脱项目构架时各种配置的闹心,得以专心于项目逻辑的编写。Spring Boot 的核心理念是“习惯优于配置”,它让大量依赖默认集成成为了可能。借助于Spri...原创 2018-09-25 14:53:21 · 3898 阅读 · 0 评论 -
Spring Boot 探索之旅(二)—— Hello World
上一篇已经大概知道Spring Boot 是什么了,现在让我们用Hello World开启Spring Boot 入门之路。一、环境准备JDK8 64位:maven3.5.3idea2018二、项目构架随后next至finish,成功生成项目三、编写Helloworld业务逻辑四、项目部署与运行4.1 main方法运行...原创 2018-09-25 15:30:53 · 3785 阅读 · 0 评论 -
Spring Boot 探索之旅(三)——Boot项目启动运行原理
一、boot项目核心注解@SpringBootApplication首先进入SpringBootApplication源码分析@Target(ElementType.TYPE)//注解生效地点:类@Retention(RetentionPolicy.RUNTIME)//注解生效时间:运行期@Documented//生成文档@Inherited//该注解可以被继承@SpringBo...原创 2018-09-25 17:37:42 · 4044 阅读 · 0 评论 -
Poi实现Excle表导入与导出
一、引入maven依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> </dependency> <dependency>原创 2018-09-27 09:51:44 · 6849 阅读 · 0 评论 -
基于百度AI做内容审核
先哭诉一下,百度提供的API和当前版本不对称,让在下头疼了一个多小时,在此作文为大家使用提供参考。一、引入sdk<!--百度Api--> <dependency> <groupId>com.baidu.aip</groupId> <artifactId>java-s...原创 2018-09-28 15:55:32 · 11454 阅读 · 4 评论 -
简易版Tomcat
一、绪论tomcat实现了基于http协议的双向通信。为简单模拟该功能,我们需要自定义Request,Response,Servlet,并通过Socket为浏览器和服务器建立通信通道。故,此次简易版Tomcat项目结构因如下所示 二、创建核心对象2.1 MyRequest简易request需要获取请求体中的访问路径、请求方法、参数内容/** * @auth...原创 2018-09-29 09:36:15 · 4645 阅读 · 0 评论 -
Spring Boot 探索之旅(四)——定制项目
一、定制Banner第一步、制作你心仪的banner:第二步、新建txt文件,重命名为banner.txt,并存入上述文字。第三步、将建好的banner.txt放置于项目resource目录下。第四步、启动项目,观察启动图。二、定制Favicon第一步、制作心仪的Favicon:第二步、将制作好的ico取名为favicon.ico,放置在resour...原创 2018-09-29 10:29:22 · 4178 阅读 · 0 评论 -
Spring Boot 探索之旅(五)——Web支持
目录一、常规MVC配置1.1 注册视图映射1.2 注册拦截器1.3 注册静态资源映射1.4 注册对象格式器1.5 注册对象转换器1.6 实现自定义HttpMessageConvert二、注册Servlet、Filter、Listener2.1 Servlet2.2 Filter2.3 Listener三、全局通知四、模板支持4.1 环境搭建...原创 2018-09-29 15:32:00 · 4414 阅读 · 0 评论 -
SpringBoot2.X实现动态数据源
一、核心原理动态数据源实现的核心类就是:AbstractRoutingDataSource,在这个类中有五个方法需要特别注意,分别如下: //设置目标数据源 public void setTargetDataSources(Map<Object, Object> targetDataSources) { this.targetDataSources...原创 2019-09-04 19:15:06 · 1649 阅读 · 0 评论