IntelliJ IDEA 常用插件
介绍IntelliJ IDEA 是编写Java代码最优秀的IDE, 安装后已经自带许多插件,并且我们可以从它的插件仓库中下载其他的一些功能插件,进而更加的提高我们编程效率。
JRebel for IntellJ简述: 热部署生产力工具,修改代码后不用重新启动程序,所有的更改便可以生效。它跳过了Java开发中常见的重建、重新启动和重新部署周期
Lombok简述: 帮使用者提高编码效率,减少重复与冗余的代码,尤其是新增类的属性时,可以避免很多重复工作
Maven Helper简述: 一键查看maven依赖,查看冲突的依赖,一键进行exclude依赖。
Free Mybatis plugin简述: 非常方便进行 Mapper 接口和 XML 文件之间跳转
Iedis简述: Redis可视化插件
Translation简述: 英语翻译插件
Alibaba Java Coding Guidelines简述: 阿里代码规约检测, 根据《阿里巴巴 Java 开发手册》中的规范,实时检测代码中出现的不规范问题
JUnitGenerator简述: 单元测试生成工具
Git flow简述: git工作流插 ...
windows常用软件
系统软件
细分类别
⭐⭐⭐⭐⭐
⭐⭐⭐⭐
⭐⭐⭐
系统镜像
MSDN我告诉你
windows官网
镜像制作
Refus
Ultraiso
WinPE工具
微PE工具箱
驱动程序
安装win10系统自动安装大部分驱动
驱动精灵 广告很多,安装完驱动,需要卸载
系统激活
KMS Tools
HWIDGen
应用商店
腾讯管家
windows应用商店(win10系统自带)
硬盘分区
DiskGenius
分区助手
硬盘测速
crystalmark
AS SSD Benchmark
硬件检测
hwiNFO32
AIDA64
办公软件
细分类别
⭐⭐⭐⭐⭐
⭐⭐⭐⭐
⭐⭐⭐
浏览器
Chrome
Firefox
输入法
QQ拼音输入法
百度输入法
解压缩
7-zip
Bandizip
通讯
微信
TIM
钉钉
视频播放
potplayer
kmplayer
音乐播放
网易云音乐
酷狗音乐
文档查看
Microsoft Office
极速pdf阅读器
在线文档
腾讯文档
石墨文档
...
MapStruct的使用介绍
MapStruct的介绍MapStruct 是一个属性映射工具,只需要定义一个 Mapper 接口,MapStruct 就会自动实现这个映射接口,避免了复杂繁琐的映射实现。
在一个JavaWeb工程中会涉及到多种对象,po、vo、dto、entity、do、domain这些定义的对象运用在不同的场景模块中,这种对象与对象之间的互相转换,就需要有一个专门用来解决转换问题的工具。以前是通过反射的方法实现,但是现在无论是 BeanUtils, BeanCopier 等在使用反射的时候都会影响到性能,再后来自己写装换器但是会很浪费时间, 而且在添加新的字段的时候也要进行方法的修改。
MapSturct 是一个生成类型安全, 高性能且无依赖的 JavaBean 映射代码的注解处理器。作为一个工具类,相比于手写, 其具有便捷, 不容易出错的特点。
MapStruct的使用引入依赖maven工程需要在pom文件中引入以下依赖
12345678910111213141516<properties> <org.MapStruct.version>1.2.0.Fina ...
ssh中“Host key verification failed.“的解决方案
SSH连接的时候Host key verification failed.
报错日志如下:
1234567891011121314ssh root@192.168.1.88@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!Someone could be eavesdropping on you right now (man-in-the-middle attack)!It is also possible that a host key has just been changed.The fingerprint for the ECDSA key sent by the remot ...
多个git服务器的ssh key管理
通常情况下,我们一个git账号的提交代码到私有git服务器上已足够日常使用,但是随着git服务的流行,市面上出现许多企业级的git服务,如github、gitee、coding等等,这时候可能会出现一台机器需要向不同的平台提交,甚至同一个平台且同一个机器上用两个不同的账号提交的情况。
新建ssh-key打开GitBash,执行以下命令
12//新建ssh-keyssh-keygen -t rsa -C "youremail@email.com"
如上图所示,公私钥的保存路径为全路径,保存的名称需要重命名,默认是id_rsa,如果不重新起名的话,会把原有的给覆盖掉,最好是以不同的平台不同的账户之间加以区分。
添加ssh-key1ssh-agent bash
1ssh-add ~/.ssh/github_rsa
配置config文件查看.ssh文件中是否存在config文件,该文件用于配置对应的服务器
如果没有就直接创建,注意windows下此文件不需要后缀名。
多个不同的git服务器就配置如下
12345678910111213Host github.com ...
web开发中常见的跨域解决方案
同源策略同源是指协议 、域名、端口三者完全相同,任一不同就是跨域访问,即便两个不同的域名指向同一个ip地址,也非同源。
如下图:
同源策略是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSRF等攻击。虽然跨域访问被禁止之后,可以在一定程度上提高了应用的安全性,但也为开发带来了一定的麻烦。比如:我们开发一个前后端分离的易用,页面及js部署在一个主机的nginx服务中,后端接口部署在一个tomcat应用容器中,当前端向后端发起请求的时候一定是不符合同源策略的,也就无法访问。
同源策略的限制有:
Cookie、LocalStorage、IndexedDB
AJAX 请求
DOM 节点
跨域访问的解决方案
前端方案
在html标签中,有有几个标签是允许跨域加载资源
1234<img src=xxx><link href=xxx><script src=xxx><iframe >
除了基于HTML本身的特性实现跨域访问,我们还可以使用jsonp、window的postMessage实现跨域访问,这些都是前端实 ...
微信网站 SPA 路由模式的选择
记载着使用 SPA 模式开发微信网页所遇到的坑,结论为:微信网页不适合使用 SPA 模式!
history 模式(推荐)最大的的问题如下。。
所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用同一个url仅需调用一次,对于变化url的SPA的web app可在每次url变化时进行调用,目前Android微信客户端不支持pushState的H5新特性所以使用pushState来实现web app的页面会导致签名失败,此问题会在Android6.2中修复对,没错,每次切换路由时,都要向后端重新请求一次配置(后端要基于当前 url 进行签名) 并 验证
潜在的问题每个页面都会有一定时间的延迟,啥微信相关操作都不能干(取决服务器速度了)需要服务器端配置,否则会报 404
hash 模式jssdk配置一遍即可,但是最大的问题是微信分享,如下
1234567891011wx.ready(function () { //需在用户可能点击分享按钮前就先调用 wx.updateAppMessageShareData({ title: ...
手机浏览器直接唤醒微信的解决方案
相信很多朋友遇到过有些网站,可以直接通过一个连接就能让你的手机打开微信且跳转到某个指定的页面,许多程序员很好奇到底是怎么实现的,到处求这种方法的源码,在文中我会介绍及剖析这种跳转实现的原理。
微信是个比较封闭的环境,至于为什么封闭,相信大家都了解,在一些应用场景中,我们要用到外部浏览器跳转到微信内部打开,比如添加好友、微信支付等,在微信内部环境直接长按二维码就能实现,确实方便很多。
言归正传,所有可以唤起微信的地址最终都会被转化为:weixin://dl/business/?ticket=...这种格式,其他的就是再怎么写,最终都是会走到获取 ticket 这一步,前面的weixin://...是唤起微信的标准开头,主要用于在外部环境唤起微信;
在这插一句嘴,有人问为什么微博或者贴吧等 APP 里不能用这种格式的链接唤起微信呢?道理很简单,因为他们在制作 APP 的时候没有加这个唤起指令,换句话说,他们不想让用户跳到微信去,(都是流量 APP,不想自己的流量外流也是正常的),现在基本上大部分浏览器都支持这个唤起微信的指令,所以内嵌有浏览器的 APP 基本都能唤起微信,就可以支持微 ...
Centos 中的防火墙 iptables 和 firewall
简介在Centos7.0 以下的版本中防火墙使用的是iptables, 在7.0版本以上使用的就是firewall,下面就介绍下两种防火墙的一些常用命令。
Centos7.x firewall
查看防火墙状态
1systemctl status firewalld
开启防火墙
1systemctl start firewalld
关闭防火墙
1systemctl stop firewalld
开机启用
1systemctl enable firewalld
开机禁用
1systemctl disable firewalld
重启防火墙
1firewall-cmd --reload
开放端口(修改后需要重启防火墙生效)
1firewall-cmd --zone=public --add-port=8090/tcp --permanent
查看开放的端口
1firewall-cmd --list-ports
关闭端口
1firewall-cmd --zone=public --remove-port=8090/tcp --permanent
Centos6.x i ...
CentOS 7 配置frp内网穿透服务器
frp 介绍frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。
利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。
frp 实现功能
外网通过ssh访问内网机器
自定义绑定域名访问内网web服务
服务端frps安装Github
123wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.shchmod 700 ./install-frps.sh./install-frps.sh install
AliYun
123wget https://code.aliyu ...