月星墙的博客

Better Code, Better Life


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 站点地图

  • 搜索

并发编程

发表于 2018-12-05 | 分类于 java
简介 Java 的并行 API 演变历程 1.0-1.4 中的 java.lang.Thread 5.0 中的 java.util.concurrent(JUC) 6.0 中的 Phasers 等 7.0 中的 Fork/Join 框架 8.0 中的 Lambda(如Stream) https://www.cnblogs.com/dolphin0520/category/1426288.html 源码阅读技巧 跑不起来不读 解决问题即可 理解别人的思路 一条线索到底 无关细节略过 一般不读静态 数据结构基础,设计模式基础 串行、并发、并行 串行是完成了A任务之后才能开始B任务 并发的关键是你有处理多个任务的能力,不一定要同时 并行的关键是你有同时处理多个任务的能力 多线程与高并发 https://github.com/bjmashibing/JUC 线程基础线程基础 创建线程 new (T1 extends Thread).start() new Thread(new MyRunnable()).start(),或者JDK8:new Thread(()->{…}).start(); 线程的相关方法(sleep/yield/join) Thread.sleep() ^4 sleep是Thread类的本地final方法,无法被重写 sleep和wait都会暂 ...
阅读全文 »

access

发表于 2018-11-20 | 分类于 db
access数据简介 Access 2000-2003文件格式*.mdb,数据加密容易被破解 Access > 2007文件格式为*.accdb 特殊语法 仅查询10条数据:select top 10 * from my_table order by id java连接(基于springboot)基于UcanAccess驱动连接 参考项目:https://github.com/oldinaction/springboot/tree/master/z-exe4j-accessdb 官网 内部基于HSQLDB实现。无需ODBC支持 缺点 UcanAccess默认是(memory=true),将先access数据加载到内存,以HSQLDB形式保存在内存。当数据文件较大时,需要设置JVM参数调整堆内存(350M的access测试时需要1G堆内存)。 可以通过设置memory=false,并设置keepmirror,即将access数据以HSQLDB形式保存到硬盘,这种情况下次连接可以继续使用。但是第一次解析非常慢(5-10分钟),而且解析时也需要耗费一定的内存(400M堆内存左右),并且不支持有密码的access数据文件 mirrorFolder:当memory=falses时,生成的数据文件保存路径,会在此路径生成一个类似Ucanaccess_net.ucanaccess. ...
阅读全文 »

C#

发表于 2018-11-19 | 分类于 lang
简介 .NET Microsoft Docs、.NET Docs .NET Download .NET、C#、ASP.NET ^1 微软在2002年推出了Visual Studio .NET 1.0版本的开发者平台。微软还在2002年宣布推出一个特性强大并且与.NET平台无缝集成的编程语言,即C# 1.0正式版 C#(C sharp)就是为宣传.NET而创立的,它直接集成于Visual Studio .NET中,VB也在.NET 1.0发布后对其进行支持。只要是.NET支持的编程语言,开发者就可以通过.NET平台提供的工具服务和框架支持便捷的开发应用程序 跨语言:即只要是面向.NET平台的编程语言(C#、Visual Basic、C++/CLI、Eiffel、F#、IronPython、IronRuby、PowerBuilder、Visual COBOL 以及 Windows PowerShell),用其中一种语言编写的类型可以无缝地用在另一种语言编写的应用程序中的互操作性 .NET 实现包括 .NET Framework、.NET Core 和 Mono。 .NET 的所有实现都有一个名为 .NET Standard 的通用 API 规范。版本对应 .NET Core 是 .NET 的跨平台实现,可在 Windows、macOS 和 Linux 上运行。JAVA和.NET不同 ...
阅读全文 »

nwjs

发表于 2018-11-18 | 分类于 web
介绍 官网。其他教程:https://nwjs.org.cn/ 、 https://wizardforcel.gitbooks.io/nwjs-doc/content/wiki/index.html NW.js,之前为node-webkit,是一个结合了 Chromium 和 node.js 的应用运行时,通过它可以用 HTML 和 JavaScript 编写原生应用程序。可基于html、css、js写桌面系统。打包后可运行的环境包括32位和64位的Window(windows xp及以上)、Linux和Mac OS 建议下载SDK,开发时才可进行debug,nwjs-sdk-v0.34.4-win-x64.zip下载。支持windows xp最终版本为v0.14.7。下载完成后解压SDK,可将SDK目录加入到path环境变量中,从此可直接执行nw 可使用nw-builder进行打包。打包后大概200M,再压成安装包大概80M 相同的框架如Electron 案例helloworld package.json 1234{ "name": "helloworld", "main": "index.html"} index.html 12345678910111213141516171819202122232425262728293031323334353 ...
阅读全文 »

加密解密

发表于 2018-10-23 | 分类于 linux
算法名称 RSA、DSA、ECC 非对称加密(公钥加密, 私钥解密) AES、DES 对称加密(密文可通过秘钥还原成原始数据) CRC32、MD5、SHA1 摘要算法(加签) CRC32 Cyclic Redundancy Check,又称循环冗余校验,类似还有CRC64(出现碰撞的概率小),常用于校验网络上传输的文件 MD5 Message-Digest Algorithm 5,又叫摘要算法和哈希算法 SHA1 Secure Hash Algorithm,又叫安全散列算法 区别 CRC的计算效率很高;MD5和SHA1比较慢 CRC一般用作通信数据的校验(毕竟效率高适用于通信数据校验)或数据库索引;MD5和SHA1用于安全(Security)领域,比如文件校验、数字签名等 国密算法 算法类型 国密算法 类似的国际算法 公钥加密 SM2 RSA、ECC 摘要算法 SM3 SHA-256 对称加密 SM4 AES-128 数据特征样例 明文: Hello, 你好 Hex(16进制数, 可解密): 48656c6c6f2c20e4bda0e5a5bd Base64(可解密): SGVsbG8sIOS9oOWlvQ== SHA1(无法解密): b14dfdb172b5d329d7dab3454461936e6bc576a8 SHA256(无法解密): ...
阅读全文 »

Jenkins

发表于 2018-10-09 | 分类于 devops
Jpom gitee开源 资产管理 机器管理中新增的节点是需要先安装jpom-agent再进行添加,或逻辑节点中快速安装是直接安装jpom-agent并自动添加,这两种模式添加的机器可以理解为目标服务器。项目在分发的时候可以分发到上述节点,而基于在线构建模式可以通过SSH服务器进行产物分发和项目启动 在线构建 构建方式: 基于docker安装的jpom-server则只支持容器构建,基于其他方式安装的可支持本地构建(运行本地mvn等命令打包好后把产物通过SSH等方式分发到目标服务器) 构建流程: 构建命令是运行在jpom-server服务器,环境变量在发布操作中也可使用 发布操作(SSH) 发布目录不允许使用环境变量,会自动把打包后的产物通过SSH发送到此目录 发布前和发布后两个shell是两个独立的脚本,变量不能直接传递,可为构建项目单独设置环境变量 如果是cygwin ssh,则直接使用ls/dir命令不会报错,但也不会打印数据;而pwd打印的是/home/Administrator而不是当前的实际目录 Jenkins简介 jenkins Jenkins CI,用Jenkins来进行持续集成,需要自己架设服务器 Travis CI是在线托管的CI服务,用Travis来进行持续集成,不需要自己搭服务器,使用方便,对开源项目是免费的,支持多数主流语言 https:// ...
阅读全文 »

Django-Rest-Framework

发表于 2018-09-24 | 分类于 lang
简介 django-rest-framework,是一套基于Django 的 REST 框架,是一个强大灵活的构建 Web API 的工具包 官网 pip3 install djangorestframework 安装 10大特性:权限、认证、节流、版本控制、解析器、序列化、分页、视图、路由、渲染器 rest framework 主要基于CBV模式,且大部分特性是基于必须是继承了APIView;FBV模式时上述特性无法体现。 FBV/CBV参考:http://blog.aezo.cn/2018/09/24/lang/python/django.md 认证 可参看下文rest framework 源码解析【封装request和认证】。源码参考[A03_DjangoRestFrameworkTest] 自定义认证类 12345678910111213from rest_framework import exceptionsfrom rest_framework.authentication import BaseAuthenticationclass MyAuthentication(BaseAuthentication): def authenticate(self, request): token = request._request.GET.get(' ...
阅读全文 »

Django

发表于 2018-09-24 | 分类于 lang
简介 官网 manage命令1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950# python manage.py <xxx>python manage.py [xxx] --help# 以下为内置命令,也可扩展命令[auth] changepassword createsuperuser # python manage.py createsuperuser --email admin@aezo.cn --username admin # 输入密码admin888[authtoken] drf_create_token[contenttypes] remove_stale_contenttypes[django] check compilemessages createcachetable dbshell # 进入数据库命令行 diffsettings dumpdata flush inspectdb # 根据数据库表结构生成django模型 loaddata makemessages makemi ...
阅读全文 »

Swagger

发表于 2018-09-23 | 分类于 arch
简介 Swagger 是一个前后端api统一文档和测试框架。不仅是一个api文档,还可以测试API(可直接访问UI界面) YApi YApi 是一个可本地部署的、打通前后端及 QA 的、可视化的接口管理平台。提供 Swagger 接口导入功能,输入 Swagger api地址,即可将所有接口导入,达到美化Swagger UI的目的 Knife4j Swagger 生成 Api 文档的增强解决方案,前身是 swagger-bootstrap-ui. 官方文档 TODO: Swagger2Markup它主要是用来将Swagger自动生成的文档转换成几种流行的格式以便离线使用,格式:AsciiDoc、HTML、Markdown、Confluence。参考:https://blog.csdn.net/zhangpan1244/article/details/102968113 Swagger文档转Word 文档,参考:https://www.cnblogs.com/jmcui/p/8298823.html 使用Editor预览YML/JSON文档 官方Editor页面: https://editor.swagger.io/ https://editor-next.swagger.io/ 也可私有部署Editor: https://swagger.io/tools/swagger-edit ...
阅读全文 »

css

发表于 2018-08-22 | 分类于 web
简介 MDN CSS 参考 CSS 知识点CSS3说明 CSS3使用时一般带有私有前缀,对应关系如下 -webkit- 对应 Safari and Chrome -moz- 对应 Firefox -o- 对应 Opera -ms- 对应 Internet Explorer BFC https://www.cnblogs.com/heimanba/p/3774086.html 字体 导出Excel使用Arial Unicode MS字体,打印出来较美观 table样式1234/* 设置表格第一列无边框 */table tbody tr td:first-child {border: none;}/* 设置表格第三列无边框 */table tbody tr td:first-child+td+td {border: none;} 响应式弹性盒子模型(Flexible Box Model) http://www.zhangxinxu.com/wordpress/?p=1338 display: box; 作用于父元素上 display: box; 只有父元素声明了使用box模型,子元素才能使用box-flex属性 box-orient 用来确定子元素的方向,是横着排还是竖着排。horizontal | inline-axis | i ...
阅读全文 »
1…789…17
smalle

smalle

168 日志
14 分类
153 标签
RSS
欢迎关注公众号:阿壹族 欢迎关注公众号:阿壹族
© 2016 - 2025 smalle    
由 Hexo 强力驱动
主题 - NexT.Mist
站长统计
AD    
阿里云大礼包
©AEZO.CN    
圣骑科技
【One能抽屉】小程序
杂货铺(省钱小助手)