摘要:
在<<The rust programming language>>的中译版<<rust权威指南>>中,作者用了30页的篇幅来阐述这个问题。 如作者所言,所有权是学习rust语言的基础,不掌握这个,无需继续往下,所以,这是初学rust就必须会的。 正是所有权概念和相关工具的引入,Rust才能够在没有 阅读全文
摘要:
本文内容摘自<<The rust programming language>>,作者:美国的steve klabnik ,Carol nichols。 中国工信出版社2020年出版,但在国外据说是2018年出版的。 关于本人的入门大部分来自此书。 不过此书由于出版的时间较早(假定是2018),那么那 阅读全文
摘要:
对于绝大部分JAVA工程师而言,大部分的关键字也是能够看懂的,但还是相当一部分比较不常见的关键字,妨碍了代码阅读。 本文力图收集一些个人认为在CRUD机械工作中可能比较少见的一些关键字/保留字。 此类关键字主要用于修饰方法和类。 收集过程会持续一段时间,现在暂时没有时间也没有必要找出个人为人需要整理 阅读全文
摘要:
最近希望学习一些新的,选择了rust. 本篇介绍怎么搭建一个非常简单的windows开发环境,以及如何使用cargo 命令 1、搭建开发环境(windows11) a.登录官网 https://www.rust-lang.org/tools/install 一看就明白,此处略。 b.安装rustup 阅读全文
摘要:
总体而言,泛型(通用类型)是一个好东西,它是一个工程上起到好处的东西,对于性能、安全等并没有什么帮助。 在java工程上,泛型属于必须掌握的,理由如下: 1.各种源码中基本上都有泛型,无论是java基础源码还是Spring或者阿帕奇的,不掌握这个,你读不懂。你没有方法绕过它 2.有了泛型,某种程度上 阅读全文
摘要:
本文主要讨论方法中变量作用域。不涉及类属性变量、静态变量、线程变量共享等。 虽然知道某类变量的作用域非常重要,但是没有太多需要说的,因为许多东西是显而易见,不言自明。 在大部分情况下,或者在老一点版本中,java语法看起来都比较正常,或者说相对古典。 但是随着JAVA版本的迭代,已经愈发向JAVAS 阅读全文
摘要:
Collection 翻下词典,有许多含义: 收集;聚集;(常指同类的)收藏品;募捐,募集;作品集;聚积;取走;一群人;拿走;(常为季节性推出的)系列时装(或家用品);一批物品 选择“集合”作为翻译名,我觉得可行,除非我们现在重新创造一个汉语词组。 对于CRUD和非CRUD,集合都是一个无比重要的东 阅读全文
摘要:
我在别的篇幅已经说过:流这个东西偶尔可以用用,但我个人最大的学习动力(目前)仅仅是为了有助于阅读spring越发繁复的源码 本文主要介绍Stream接口(包括主要的方法)和相关的几个主要接口:Predicate、Consumer、Supplier 还有Collector接口,Collectors工具 阅读全文
摘要:
之所以单独把这个列出来,是因为本人被一个源码给震撼了。 所以,本人目的是看看这个震撼实现,并模仿,最后把常规的实现也贴上,让读者可以看到相对完整的实现 注:本文代码基于JDK17 一、让人震撼的代码 Collectors.toList() public static <T> Collector<T, 阅读全文
摘要:
自从J8开始,对于开发JAVAEE应用的工程师而言,函数式接口会常常接触,某种程度上有点不可绕过。 这是因为在绝大部分企业中都会使用Spring来开发JAVAEE,而Spring在它的实现中越来越多地使用上函数式编程。 如果我们阅读它的源码,函数式编程是绕不过去的。 函数式编程有其好处,这个好处就是 阅读全文
摘要:
java提供了抽象类和接口,总体是好事。 有的OOP语言并没有接口的概念,但相当一部分其实用其它方式实现了JAVA中接口类似的功能。 如果不太清楚二者的区别,难免在面临具体业务的时候,在二者之间摇摆。 实际上,关于抽象类和接口的共同点和不同点没有什么可以写的。 设计原则原则让我们尽量基于接口编程(I 阅读全文
摘要:
本简单介绍了JAVA OOP编程的几个方面,包括优缺点、特性、未来发展等。总体上,java的OOP做得还可以,就是有复杂化的倾向 阅读全文
摘要:
需要格外注意,java的传参是传值,并非传递地址。但某些情况下,也可以理解为传递地址。 由于实际可以传递地址,所以对原有的对象可能影响也可能不影响。
是否会影响,则取决于方法/函数中是否对参数进行重新赋值。如果重新赋值在无法印象参数关联的原来对象。 阅读全文
摘要:
介绍了bean所需要关注的一些基本知识,掌握这些知识应该大体上可以满足信息应用开发 阅读全文
摘要:
一、概述 鉴于JDK8已经是老古董,还有性能问题,兼且各个公司已经不再维护1.8的JDK,所以升级公司的核心产品之一的后端到JDK到17是相对要紧的事情。 通过升级到jdk17,具有以下好处: 不再头疼同时适应两个jdk,放下适应JDK8的负担 在生产环境基本上只需要部署一个jdk即可,也不需要浪费 阅读全文
摘要:
说实话,在过去将近20年中,spring对于it行业的帮助还是很大的,尤其是信息系统建设方面。 但在我看来,spring的发展也许进入了一个困局。 开始的时候,spring的确是一个还是算小巧的工具,但是现在已经变成了一个庞杂的大东西。 的确,它好像什么都可以解决,但是变得过于繁复,庞大,性能上也有 阅读全文
摘要:
遇到一个比较奇怪的问题。 这个问题别人也遇到过。 https://blog.csdn.net/gao_chuan_g/article/details/115117712 一、情况简介 使用jdk17+springboot3.x+spring6.x写一个小应用A,其中有一部分代码是用于生成SM2加密后 阅读全文
摘要:
常规的问题此处略,因为网络上到处都是,这里主要讨论三个问题: 1.数据库的时间戳类型(含微秒)对应java的什么类型 java的常见时间类型比较多: java.util.Date java.sql.Date java.sql.Timestamp java.util.Calendar java.tim 阅读全文
摘要:
Spring框架中实现了许多的设计模式,而且都是非常优先的实现,这些值得我们学好好习。 不过话说回来,我觉得自己只要关注几个即可: 单例 工厂 代理 适配器 观察者 委派 在各种设计模式中,适配器和装饰器、代理模式其实都很类似,只是侧重点不同而已。 spring的设计模式应用的很好,但spring更 阅读全文
摘要:
一、定义 主要突出一个安排,派遣。 这个设计模式非常常见,不需要学习也能自然而然地用上。 从广义的角度出发,一个对象用另外一个对象就是委派。 二、经典实现 略。 三、spring实例代码 https://blog.csdn.net/fengyuyeguirenenen/article/details 阅读全文
摘要:
一、定义 适配器模式-或者称为转接口模式,变压器模式。通过适配,可以让原来提供特定功能的对象完成另外一个标准的功能。 所以,所谓的适配应该可以这样称呼:让某些类/接口适配/转换某个标准/功能。 适配器器的重点是适配,就是新增(装饰)。 为了便于记忆和理解,读者最好根据自己的习惯来命名即可,例如变压器 阅读全文
摘要:
部分内容引用: https://blog.csdn.net/shulianghan/article/details/119798155 一、定义 1.1定义 对于现实生活中的代理,大家非常好理解。我们需要代理,主要因为几个原因: 太忙-例如房产中介、代购 目前对象不是自身可以直接接触的-例如托人办事 阅读全文
摘要:
网络上都说ApplicationContext是单例,但看了原始代码,我认为应该是一个错误的表达。 我们来看Spring6.x中用springboot创建一个程序的时候默认的applicationContext是什么。 根据调试显示,这个ApplicationContext的实例是org.sprin 阅读全文
摘要:
大家都说要多阅读spring的代码,这非常在理,毕竟spring的代码是许许多多杰出工程师的结晶,是业界多年的累积。 最近也不是非常忙,所以准备记录一系列的相关代码。 工厂模式是所有人都会的模式,是最简单也最常用的模式。 为什么称为工厂模式,因为这个完全是借鉴实际产生的一种模式。 通过工厂模式,可以 阅读全文
摘要:
业务业务的需要,所以想找一个从对象中获取属性的工具。 搜了搜发现由阿里和jayway的实现,又花费了一些时间了解和练习,总结了一些要点: 阿里的可能快一些,但考虑到完备性,也许选择jayway更好一些。 本文档参考了以下URL: Jayway JsonPath介绍_com.jayway.jsonpa 阅读全文
摘要:
因为国家战略等原因,公司的项目已经逐渐在使用国产数据库替代开源的数据库。 本文就说说国产数据库在目前国内的一些使用情况,主要讨论研发和应用情况。 一、概述 1.1现状 这几年国产数据库逐渐走入生产环境,原因多样,但不管什么原因,事实就是这样。 国产数据库非常多,简直太多,据说有400多个产品。 这里 阅读全文
摘要:
由于特定情况,本机下有多个jdk,而JAVA_HOME又只有一个。 本人习惯在命令行下一个命令编译打包程序,如何解决这个问题? 研究了不少时间,得到了两个解决方案: 1.使用bat -- 非常烂,不是很建议,如果您是系统管理员则另当别论。因为我们都知道编写纯bat实在不是很愉快,bat的语法是反人类 阅读全文
摘要:
python 正则表达式 阅读全文
摘要:
一、前言 工作中会时不时遇到一些和字符集有关的问题,此外同事也会问字符集是怎么回事。 个人觉得有必要系统化地整理关于字符集的问题,以便更方便之后的学习和工作。 由于编码本身比较简单,本文不介绍具体某个文字如何使用二进制进行编码。 二、定义 字符集(character set),顾名思义是关于字符的集 阅读全文
摘要:
一、前言 正则表达式这个东西,基本哪一种语言都有。 例如数据库的oracle,前后端高级编程语言。 很多工具也支持正则,例如至少ue,Notepad++,好一点的编程ide(eclipse,idea,vscode)。 正则实在是一个利器,是程序员必须掌握的一个技能。 如果工作了几年,正则还用不明白, 阅读全文