- 博客(76)
- 资源 (4)
- 收藏
- 关注
原创 Java如何让CPU利用率达到100%
一.背景记得有一次去面试Java软件开发工程师,面试官问了我一个关于Java如何让CPU利用率到达百分百的问题,我当时下意识的回答到让程序死循环就可以了(这源于我之前的工作中有一次无意间写了死循环,当时电脑卡的简直不能动,我都关机了,可是一运行程序还是很卡,最后我看性能发现CPU占用率很高,当时具体没看具体有多高,但是估计利用率没有达到百分百吧),面试官当时没说什么,紧接着问下个问题了,我当时...
2019-08-11 22:38:29
8050
4
原创 微服务之间的调用方式RestTemplate和Feign
一、RestTemplate简介与简单案例1.1 简介SpringRestTemplate是Spring 提供的用于访问 Rest 服务的客端, RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率,所以很多客户端比如Android或者第三方服务商都是使用RestTemplate 请求 restful服务.1.2 简单案例1.2.1 配置r...
2019-07-17 15:36:33
1660
1
原创 PowerDesigner导入sql脚本(同时保证注释不丢失及name copy comment)
写在前面一个好的数据库建模,不但可以让人直观的理解模型,充分的利用数据库技术,优化数据库的设计,而且还可以让新员工快速的熟悉数据库表结构与业务之间的关系.无奈的是随着开发过程中,数据库表结构字段的增删以及关联关系的变动给数据库模型带来维护上的巨大工作量.现为了维护上的简单,介绍一种快速维护数据库模型的方式,PowerDesigner导入sql脚本的方式.正文 首先,是一份写好的sql...
2019-07-05 13:56:27
13844
1
原创 修改Intellij IDEA 自带Maven的中央仓库地址
每次用Intellij IDEA 导入一个Maven项目,由于pom.xml文件的依赖jar我本地没有,而导致Maven自动去国外的中央仓库下载jar,往往需要十多分钟,这很耗费时间,这时我们需要将Maven的镜像文件换成国内的(通常用阿里云的镜像),这样可能仅仅只要几十秒就下载好了.一.找到Intellij IDEA自带Maven的settings.xml文件settings.xml...
2019-04-06 00:55:57
9106
原创 Intellij IDEA 配置Git并拉取项目
Git+Intellij IDEA是当前最流行的开发工具组合,相信用过的人都体会到了他们的强大和易用。在最近的一个项目中,因为项目组成员都是使用Intellij IDEA集成Git进行开发的,之前用的都是Git客户端,而这种形式我不会配置,经过兜兜转转后我终于会了,再此记录下来以备后面借鉴学习。一.本地Git下载并安装(Windows系统)1.1 git官方下载地址:https://git...
2019-04-05 18:29:01
12188
原创 权重随机算法的java实现
一、概述 平时,经常会遇到权重随机算法,从不同权重的N个元素中随机选择一个,并使得总体选择结果是按照权重分布的。如广告投放、资源调度、抽奖等。 如有4个元素A、B、C、D,权重分别为1、2、3、4,随机结果中A:B:C:D的比例要为1:2:3:4。 总体思路:累加每个元素的权重A(1)-B(3)-C(6)-D(10),则4个元素的的权重管辖区间分别为[0,1)、[1,3)、[3,...
2018-12-12 16:40:30
1076
原创 Fiddler抓包工具安装、操作、应用
一、安装配置1、从官网下载并安装 http://www.telerik.com/fiddler 2、配置Fiddler点击Tool-->Teleric Fiddler Option,在Connection下填写代理端口8888(若有冲突,也可以换成其他的),红框中的三项全部勾选如果接口是https的,则在HTTPS下勾选允许抓取额外知识补充:如何判...
2018-12-06 15:06:37
1208
转载 数据库设计14个注意事项
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。 在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。 这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资...
2018-10-30 18:49:40
952
转载 深入浅出SOA
前一阵换了份工作,来到新公司,恰好新同事问起SOA是什么,我随口说了几点,其实自己以前研究过,不过并没有详细的整理过,说的比较模糊,恰好周末,拿出点时间整理下以前对SOA的认知。 SOA是什么?SOA全英文是Service-Oriented Architecture,中文意思是中文面向服务编程,是一种思想,一种方法论,一种分布式的服务架构(具体可以百度)。 用途:SOA解...
2018-10-26 16:04:53
265
转载 介绍什么是Java虚拟机
什么是Java虚拟机作为一个Java程序员,我们每天都在写Java代码,我们写的代码都是在一个叫做Java虚拟机的东西上执行的。但是如果要问什么是虚拟机,恐怕很多人就会模棱两可了。在本文中,我会写下我对虚拟机的理解。因为能力所限,可能有些地方描述的不够欠当。如果你有不同的理解,欢迎交流。我们都知道java程序必须在虚拟机上运行。那么虚拟机到底是什么呢?先看网上搜索到的比较靠谱的解释:虚...
2018-10-11 10:26:22
658
原创 java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'content' at row 1
使用Mysql服务器的utf8字符编码,在存入移动端emoji表情时会报异常:Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 'content' at row 1 at com.mysql.jdbc.SQLError.createSQLException(S...
2018-09-03 19:34:34
18248
5
原创 I/O error on GET request for "http://user-service/hi": user-service; nested exception is java.net.Un
一.场景重现最近闲暇时间打算系统学习下SpringCloud系统教程,毕竟最近微服务也挺火的,于是网上找了一个大牛的博客跟着一起学习.(史上最简单的SpringCloud教程 ) 一直跟着模仿构建SpringCloud一直也没出什么问题,直到在构建rest+ribbon时,出现了 I/O error on GET request for "http://user-service/hi": us...
2018-08-28 16:00:45
41479
15
原创 23种设计模式之装饰者模式
一、什么时候使用装饰者模式公司门口有一个小摊卖鸡蛋饼和肉夹馍的,有时候早上吃早餐就回去光顾一下那个小摊,点了鸡蛋饼之后往往还可以在这个基础之上增加一些配料,例如煎蛋、火腿片、生菜,每个配料额价格都不一样,不管你怎么配配料,最终价格是鸡蛋饼基础价加上每一种所选配料价格的总和.小摊的价格单如下:现在有这么一个问题,不同的主体早餐加上不同的配料有不同的价钱,怎样实现了?大多数人的第一印象...
2018-08-27 15:58:47
302
原创 23种设计模式之模板方法模式
一直以来我总是容易将工厂方法模式与模板方法模式混淆,它们两个实在太像了.对于我来说造成这样的错觉,源于我对模板方法模式的不了解,这里重点学习模板方法模式.一、什么是模板方法模式模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中.模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤.模版方法模式的结构模版方法模式由一个抽象类和一个(或一组)实现类通...
2018-08-23 16:55:10
3717
原创 23种设计模式之单例模式
记得刚出来找工作时,面试官问完几个基础问题后,基本就会马上跳到设计模式问我,问我了解几种设计模式.我说单例模式、工厂方法模式、静态代理模式.他说那你先手写一个单例模式吧.我立马拿出笔和纸手写单例模式,不知道是不是我写的单例模式面试官不满意,还是我写的单例模式和鬼画符一样(面试时你回答问题时字迹工整,从某种程度上可以看出你的态度,我觉得我那时的字迹可能给了面试官一种不重视这次面试的感觉吧),总之最后...
2018-08-22 14:37:19
237
原创 23种设计模式之工厂方法模式
以前我不是很理解,为什么每次面试面试官一定要抽查求职者对设计模式的一个了解程度.我当时在想设计模式有那么重要嘛,平常工作中也很少用到呀.抱着这种不重视设计模式的态度,我一直都对设计模式都不够熟悉.直到最近在项目实际应用中运用了几个设计模式,才真正的理解它的好处,这里重点讲解23种设计模式中的工厂模式.一、什么是工厂方法模式?定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一...
2018-08-21 08:58:56
287
转载 为什么要学设计模式
软件需求变幻无穷,计划没有变化快要让你的程序尽可能的可重用尽可能的在需求变化时不修改或做最小的修改,尽可能的降低开发的逻辑复杂度这就是设计模式要解决的问题简而言之,就是解耦合、高内聚在这个目标指引下,我们总结了设计模式的六大原则并由这六大原则进一步总结出二十三中设计模式转载来源:https://blog.csdn.net/buyulian/article/...
2018-08-20 18:29:00
233
原创 后端(springboot)解决跨域问题
业务场景:公众号分享一个H5页面,请求后台活动推广列表接口返回数据.前端在调用这个接口时,报错了,原因是跨域。这时前端只要使用jsonp可以解决跨域( dataType: 'JSONP'),为了以防万一后端也得解决跨域.后端解决就比较简单了,例如我用的springboot,只用在Controller类上添加一个“@CrossOrigin“注解就可以实现对当前controller 的跨域 访问...
2018-08-13 17:50:31
1238
转载 mysql字符串区分大小写的问题
一、1.、CREATE TABLE NAME(name varchar(10));对这个表,缺省情况下,下面两个查询的结果是一样的;SELECT * FROM TABLE NAME WHERE name = "clip";SELECT * FROM TABLE NAME WHERE name = "Clip";Mysql默认查询是不区分大小写的,如果需要区分他,必须在建表的时候...
2018-08-08 19:45:18
286
原创 聊聊Java静态代理与动态代理的那些事儿
一、什么是代理模式以及为什么需要代理模式?代理模式就是,个人去买房子,可以直接去买房子,如果直接去买房子的话就得办很多的手续,然后跑很多地方,这时候房产中介就出现了,我们可以把买房子的事交给中介,让中介做我们的代理,这样我们会省力很多,不需要关心房子是怎么买下来的。如果还不是很理解的话,请接着往下看.package com.cld.demo.proxy;/** * * @autho...
2018-07-26 18:23:35
308
1
转载 java面试题之int和Integer的区别
int和Integer的区别1、Integer是int的包装类,int则是java的一种基本数据类型2、Integer变量必须实例化后才能使用,而int变量不需要3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值4、Integer的默认值是null,int的默认值是0延伸:关于Integer和int的...
2018-07-19 16:35:27
233
原创 JavaBean关于为什么要重写hashCode()方法和equals()方法及如何重写
记得有一次去面试Java软件开发工程师,面试官问了我一个关于JavaBean为什么要重写hashCode()方法和equals方法,我记得当时我巴拉巴拉半天就是没有说到重点,现在想一想归根到底还是我对这两个的理解不深刻,现在我特定来总结下.hashCode 方法用于散列集合的查找,equals 方法用于判断两个对象是否相等。一、我们为什么需要重写hashCode()方法和equals()方法?...
2018-07-18 19:53:31
5881
7
原创 BigDecimal解决商业运算中丢失精度的问题
记得有一次去面试Java软件开发工程师,面试官问了我一个关于Java如何解决商业运算中的精度丢失的问题.我顿时慌了,我没有反应过来,因为我对为什么会产生这个问题以及这个问题的解决方案一点印象也没有.平时工作中的确也用到过,但是那也是前辈们封装好的,我直接拿来用,我只是知道这个工具类是用来浮点型计算,也没去看里面的具体实现,更加不知道这个工具类是为了解决Java在商业运算中精度丢失的问题.面试完成后...
2018-07-17 17:24:17
321
原创 requestBody注解的正确使用
前端时间在做小程序水运头条时,有个需要通过阿里云的回调接口将上传到阿里云的小视频的视频大小,时长,封面等参数给回调到我们的后台,从而保存至数据库.回调接口嘛,以前写过,跟普通接口没多大区别.我就三下五除二的将接口给写好了,稍微的模拟测试了下,觉得没毛病了,我就直接给部署到测试环境了.(这里提一句,由于我本地的网络是公司内网,所以阿里云的接口是回调不了的,只好给部署到测试环境进行最终测试.)在这期间...
2018-07-10 22:49:05
48107
11
转载 Java 内存分配全面浅析
Java堆.栈和常量池 笔记今天复习了一下这些知识,顺便做了下笔记.1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符...
2018-07-09 19:27:14
234
原创 分布式锁简单真实案例
前段时间做小程序水运头条时,有个投票的功能需求,每个人一天只能对自己比较满意的小视频投一次票,本来我三下五除二就写完了,觉得大事告吉.去测试环境测试也很OK,本以为就会想往常以后就没事了.结果线上进行投票时,后台监控某些用户同一天竟然投了两票或多票,这时我领导提醒我,可能是用户连续点击了两下投票按钮(尽管前端可以在点击第一次时就将按钮置灰,但是为了防止别人恶意调用接口,后台还是得坐相应的控制),导...
2018-07-05 00:44:02
3488
转载 spring IOC中三种依赖注入方式
spring的核心思想是IOC和AOP,IOC-控制反转,是一个重要的面向对象编程的法则来消减计算机程序的耦合问题,控制反转一般分为两种类型,依赖注入和依赖查找,依赖什么?为什么需要依赖?注入什么?控制什么?依赖注入和控制反转是一样的概念吗?接触新的知识,小编的脑袋中全是大大的问号,不过没有关系,今天这篇博文,小编主要来简单的介绍一下在spring IOC中依赖注入的方法。依赖注入和控制反转,目的...
2018-06-30 18:20:49
2194
原创 Linux系列之Linux安装及源配置(软件源)的介绍
Linux 简介Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计...
2018-06-13 00:21:06
35118
原创 Java异步编程简单真实案例
前段时间在做小程序水运头条时,有个发布小视频的功能,需要上传10-15秒的视频文件.上传的流程是这样的,首先前端调用OSS客户端上传一个文件到阿里云的OSS,然后前端将视频文件在OSS上的地址作为参数通过我们自己定义的视频文件上传接口传递到后端,其次后端通过网络流的形式将阿里云上的视频文件上传到阿里云的VOD,最后构建视频基本信息保存至数据库.由于在后端通过网络流的形式上传到阿里云的VOD的接口是...
2018-06-06 01:15:31
4292
5
原创 errcode:40001 errmsg:invalid credential, access_token is invalid or not latest hint
前段时间水运头条线上分享功能调用微信接口获取小程序码时,报errcode:40001,并且获取小程序码时有时报错有时不报错.可是我本地和测试环境并没有发生这种情况.于是乎就去百度微信errcode:40001代表的含义(获取access_token时Secret错误,或者access_token无效)微信接口状态码的返回含义时,大致知道原因了.本地和测试环境只有一台机器,我的本地和测试环境...
2018-05-30 00:08:25
100390
3
原创 获取无限制带参小程序码
最近在做小程序水运头条获取获取小程序码时,遇到一个很细微的问题,导致小程序码显示不完整或者干脆不显示的问题.最后找了很久才找到,原因就是调用微信获取小程序码接口返回字节流大小的时候,我是用instreams.available()获取的文件字节大小的.而这个方法在从网络中下载文件时,由于网络是不稳定的,也就是说网络下载时,read()方法是阻塞的,说明这时我们用inputStream.availa...
2018-05-22 22:54:57
840
原创 小程序上传文件至服务器
最近做的项目是一个水运头条项目,其中有个小视频上传的功能.起初项目评审技术讨论时,决定将视频上传至阿里云的VOD资源服务器,需要的时候就从阿里云的VOD去取就行了.为什么要上传到阿里云的VOD资源服务器了?主要是因为阿里云的VOD资源服务器有转码,自动截取封面图,加水印功能.其次减少我们服务器的压力.再就是收费也不贵.不过这过程真的是一波三折呀.First 我们起初是打算后台从阿里云的VOD获...
2018-05-12 20:03:37
6820
2
原创 JSON详解
一.JSON概念A.JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)。B.JSON 是轻量级的文本数据交换格式,类似于XML。C.JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JS...
2018-03-04 23:30:48
329
转载 JSON与XML优缺点对比分析
本文从各个方面向大家对比展示了json和xml的优缺点,十分的全面细致,有需要的小伙伴可以参考下。1. 定义介绍1.1 XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definiti...
2018-03-04 15:50:09
364
原创 Intellij Idea 使用SVN对指定文件更新到指定版本
问题在团队项目开发中,我们很容易遇见你SVN提交的文件将人家刚刚修改好的文件给覆盖掉.这是怎么回事了,这多半是因为在你SVN提交之前没有更新所造成的,那么我们该怎么办了?很简单,只需要回滚到之前的版本,你再更新之后将你修改的添加上去提交就可以了.解决方法:1.找到指定文件右击按照如下步骤进行2.弹出Update File提示框3.勾选 Update/Switch to specific revi...
2018-03-01 01:33:04
16799
1
原创 My97DatePicker的基本时间格式的使用
一.下载My97DatePicker组件包下载地址:http://www.my97.net/dp/down.asp(官方下载地址)二.具体使用 1.在页面中引用该组件JS文件: <script type="text/JavaScript" src="My97DatePicker/WdatePicker.js"></script> 2:源代码(仅供参考,具体情况,具体分析...
2017-06-10 16:26:02
1259
2019年最新全国1万多所大学(腾讯坐标数据)
2019-01-23
使用Mybatis Generator自动生成Mybatis相关代码(包含Mysql与Oracle)
2018-07-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅