![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
abckingaa
一个软件设计爱好者。主要项目经验集中在银行等金融领域,有10余年工作经历。对软件设计如何提高开发效率,提高易维护性,易扩展性,分布式系统、大数据量高可用、高并发系统有深入研究!
展开
-
使用ORM Bee时, Condition, SuidRich的方法中, 字段是否支持使用Orders::getName的形式,避免使用静态字段串写死字段值
使用ORM Bee时,Condition,SuidRich的方法中, 字段是否支持使用Orders::getName的形式,避免使用静态字段串写死字段值.可以使用V2.4.0 的ConditionExt和SuidRichExt需要引用BeeExt.原创 2024-06-09 21:36:14 · 211 阅读 · 0 评论 -
idea常用功能
idea常用功能原创 2024-02-22 10:40:53 · 403 阅读 · 1 评论 -
ORM三剑客——先入为主的Hibernate,Mybatis和后来者居上的Bee
Hibernate与Mybatis是很早就出现的ORM工具,难免给人先入为主的感觉;还有NoSQL DB,如MongoDB,Cassandra,让我们相互认识,相互选择,打造一款自已的ORM如意金箍棒。Bee是功能全面的ORM工具,除了支持传统的关系型DB,择其优点,避其缺点,此外,还加有自己的优点!原创 2024-02-21 12:09:32 · 442 阅读 · 0 评论 -
Bee+SpringBoot稳定的Sharding、Mongodb ORM功能(同步 Maven)
5).InheritableThreadLocal 与 parallelStream () 不兼容的 bug, 当不是分片模式时,可以用 parallelStream (), 而分片时则不建议使用 parallelStream ()2.2 之前,调用批量插入在每个批都会提交 commit, 但在 2.2 改为只调用一次且在事务中,在批量插入的方法内容不再提交,而由事务控制。你还想添加什么功能,请到评论区告诉我们. 扣群 (4) 分片时,主线程的上下文要清除。3) 仅分库时,解决上下文问题。原创 2024-02-08 16:52:04 · 1159 阅读 · 0 评论 -
jetty与tomcat有什么异同?各自的优缺点?
总体来说,Jetty更适合于嵌入式应用和对性能和资源消耗有较高要求的场景,而Tomcat更适合于大型Web应用和对功能和稳定性有较高要求的场景。- Tomcat是一个功能强大的Servlet容器和Web服务器,它是Apache软件基金会的一个项目。Jetty和Tomcat都是流行的Java Web服务器,它们有一些相似之处,但也有一些显著的区别。- Tomcat对JSP和Servlet有很好的支持,适合于大型Web应用的部署。- Tomcat有着广泛的应用和支持,是企业级应用中常用的Web服务器之一。原创 2024-02-01 11:09:13 · 1012 阅读 · 0 评论 -
判断素数的程序
在这个示例中,isPrime函数用于判断一个数是否为素数。它首先排除了小于等于1的数,然后通过循环从2开始尝试除以小于等于其平方根的数,如果能被整除则返回0,表示不是素数;否则返回1,表示是素数。判断一个数是否为素数的常见算法是试除法。素数(质数)是指只能被1和自身整除的正整数,因此可以通过逐个尝试除以小于该数的所有正整数来判断一个数是否为素数。这个算法的时间复杂度为O(√n),可以在较短的时间内判断较大的数是否为素数。原创 2024-01-27 13:45:53 · 447 阅读 · 0 评论 -
netty主要功能介绍,主要的类介绍
3. 支持多种协议:Netty支持TCP、UDP、HTTP等多种协议的网络通信,可以用于构建各种类型的网络应用。1. 异步事件驱动:Netty使用事件驱动模型,能够高效地处理大量的并发连接和请求,提供高性能的网络通信能力。2. 高性能:Netty采用了零拷贝等技术,能够提供高性能的网络通信能力,适用于需要处理大量并发连接的场景。这些类是Netty框架中的核心组件,通过它们可以构建各种类型的网络应用,实现高性能、高可靠性的网络通信。4. Bootstrap:用于启动客户端的引导类。原创 2024-01-27 13:40:26 · 449 阅读 · 0 评论 -
通过Field和通过Method给一个Javabean的字段设置值,有什么区别?性能上有差别吗?
总的来说,直接访问字段(Field)和调用setter方法(Method)在功能和性能上都有各自的特点,开发者需要根据具体的需求来选择合适的方式。2. 调用setter方法(Method):通过调用JavaBean中的setter方法来设置字段的值,这种方式会经过setter方法中的逻辑检查和处理,确保了JavaBean的一致性和完整性。在性能上,直接访问字段(Field)通常比调用setter方法(Method)要快,因为它避免了方法调用的开销。原创 2024-01-14 23:21:03 · 370 阅读 · 0 评论 -
return (Comparator<T> & Serializable) aa;是什么意思?&有什么作用?
(Comparator & Serializable) 表示返回的对象是同时实现了Comparator接口和Serializable接口的对象。这意味着返回的Comparator对象不仅可以用于比较元素,还可以被序列化成字节流进行传输和存储。& 的作用是将多个接口合并成一个新的接口。在这种情况下,返回的Comparator对象同时具有Comparator和Serializable接口的功能。(Comparator & Serializable) 是什么意思?原创 2024-01-14 23:20:21 · 429 阅读 · 0 评论 -
JAVA ORM Bee的设计模式分析
策略(Strategy)模式的定义:该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的。责任和算法的实现分割开来,并委派给不同的对象对这些算法进行管理。模板模式(Template Pattern)装饰器模式(Decorator Pattern)原型模式(Prototype Pattern)建造者模式(Builder Pattern)策略模式(Strategy Pattern)工厂模式(Factory Pattern)原创 2024-01-14 23:18:45 · 480 阅读 · 0 评论 -
[ERROR] 不再支持目标选项 5。请使用 7 或更高版本
ERROR] 不再支持目标选项 5。请使用 7 或更高版本。在编译spirng boot 3.x版本时,出现了以下错误.[ERROR] 不再支持源选项 5。请使用 7 或更高版本。原创 2024-01-11 21:08:16 · 670 阅读 · 0 评论 -
Java 和 C 有许多区别
/在 Java 中,逗号操作符不允许在普通的表达式中像 C 语言中那样使用,也就是说不能像 C 语言中那样使用逗号操作符来组合多个表达式。// 在这个例子中,i的值会先从10变为11,然后再变为12,所以aa的值会是12。// 在这个例子中,i++会先执行,然后i++再执行,整个表达式的值是第二个i++的值。这些是 Java 和 C 之间的一些主要区别,它们使得这两种语言适用于不同的编程场景和用途。- Java 内置了对多线程的支持,并提供了高级的线程管理和同步机制。原创 2024-01-02 00:43:53 · 476 阅读 · 0 评论 -
Java形参对象的一些坑,超出你想象
Java形参对象的一些坑,超出你想象。方法内修改会影响原始的对象(也就是实参对象),因为它修改了对象的状态。但引用却不能修改,对象引用是按值传递的。使用final修饰方法参数user,表示在方法内部无法修改user对象的引用,但是仍然可以修改user对象的属性值。原创 2024-01-02 00:35:41 · 355 阅读 · 0 评论 -
Java将泛型限定为三种类型List,String,Number;问AI,被它骗了
运算符来指定多个上界,因此上面的代码是无法通过编译的。实际上,目前 Java 并没有提供一种直接的方式来限定泛型类型为多个不相关的类。在泛型方法中,由于类型擦除的原因,编译时无法获取具体的类型信息,因此你可能需要在运行时对。,因此你可能需要通过其他方法来实现这一目的,比如在方法内部进行类型检查和转换。下面是一个示例代码,演示了如何使用泛型的上界来限定类型。的类型进行特定的处理,你可能需要进一步检查。在 Java 中,你可以使用泛型通配符。,你可以使用泛型的上界来实现。的类型被限定为泛型类型。原创 2024-01-02 00:34:41 · 382 阅读 · 0 评论 -
Java 这语句提示的警告如何解决Map array[] = new TreeMap[3]
Map array[] = new TreeMap[3];原创 2023-12-17 22:02:05 · 406 阅读 · 0 评论 -
Java ORM Bee V2.1.x 功能列表介绍
Java ORM Bee V2.1.x 功能列表介绍原创 2023-12-11 23:16:10 · 389 阅读 · 0 评论 -
JAVA ORM Bee主要功能介绍
JAVA ORM Bee主要功能介绍原创 2023-12-11 23:14:44 · 403 阅读 · 0 评论 -
maven仓库有的文件,但使用阿里云却有问题
可能的原因是阿里云的maven仓库没有更新或者缓存中存在问题。强制更新maven仓库:可以尝试强制更新阿里云的maven仓库,以确保所需的库已经被更新到仓库中。在命令行中执行上述命令后,Maven将会清除本地缓存并重新下载所需的依赖,从而确保所需的库已经被更新到仓库中。如果以上方法无法解决问题,可以尝试切换到其他可靠的maven仓库,或者联系阿里云的技术支持寻求帮助。这个命令会清除本地的Maven仓库缓存并强制从远程仓库更新依赖。表示强制更新,它会忽略本地缓存,强制检查远程仓库以获取最新的依赖。原创 2023-12-10 23:15:45 · 942 阅读 · 0 评论 -
一致性哈希算法,hash(key)是负值时,会出现异常吗?
一致性哈希算法中,哈希函数hash(key)的返回值通常是一个非负整数。如果hash(key)返回负值,则可能会出现一些问题,例如无法正确地映射对象到哈希环上的位置,或者无法正确地找到离对象最近的虚拟节点。这样做可以保证hash(key)的返回值是一个非负整数,从而避免了出现异常。同时,这也不会影响一致性哈希算法的正确性,因为哈希函数只是用来将对象映射到哈希环上的位置,而与对象的具体值无关。其中,MAX_INT是一个足够大的正整数,可以是2的31次方或2的63次方等。原创 2023-12-03 23:21:14 · 733 阅读 · 0 评论 -
C#有像Java ThreadLocal的类似实现吗?
类允许每个线程都有自己独立的实例,每个线程对实例的操作互不影响。这对于需要在线程级别上维护状态的情况非常有用,例如在多线程环境下缓存数据或跟踪线程特定的上下文信息。类是.NET Framework提供的一个线程本地存储类,用于在每个线程中存储和访问特定于该线程的数据。类提供了一种在多线程环境下管理线程本地数据的便捷方式,类似于Java中的。最后,我们输出了每个线程的。以下是一个简单的示例,演示了如何在C#中使用。,并在每个线程中设置了不同的值。的值,以验证每个线程的操作是相互独立的。的操作互不影响,因为。原创 2023-12-03 23:19:38 · 503 阅读 · 0 评论 -
C#与Java的不同
C#中base关键字的详解,等价java super()方法:https://blog.csdn.net/qq_45096273/article/details/106605959。(1)自动生成{get;一个项目只要一个异常处理的地方即可(个别特殊的地方个别处理),也就是说所有的异常都在最顶层的某个地方处理,——C# 中可用 A a = Type.GetType("java.lang.String")替代。——因此,java中:Class.forName("java.lang.String")原创 2023-12-03 23:19:06 · 361 阅读 · 0 评论 -
update users set error_counter=error_counter+1 where username=‘admin‘ ;当error_counter=null时,会更新吗
如果error_counter列的值为NULL,那么error_counter+1的结果也是NULL,所以整个更新语句的结果就是将error_counter列的值更新为NULL。这并不是我们想要的结果。需要注意的是,不同的数据库系统可能有一些细微的语法差异或命名上的变化,所以在具体的数据库中使用这些方法时,可能需要参考该数据库的文档来了解具体的用法和语法。使用IFNULL函数:IFNULL函数在大多数数据库中都是可用的,它接受两个参数,如果第一个参数是NULL,则返回第二个参数,否则返回第一个参数的值。原创 2023-12-02 23:59:39 · 328 阅读 · 0 评论 -
Java ORM Bee,多表关联更新
如果子实体没有用上FK声明的字段(即@FK的字段没有值),则不执行,防止更新到多余记录。Bee V2.1.8 增加支持多表的update, insert, delete;外键有一个没有设置时,跳过。使用@FK注解进行关联.原创 2023-10-05 17:38:13 · 142 阅读 · 0 评论 -
junit @ExcludePackages排除多个包
该注解可以用在测试类或测试方法上。属性中使用数组来指定要排除的包名。注解来指定要排除的包名。在JUnit中,可以使用。如果要排除多个包,可以在。原创 2023-10-03 13:29:50 · 827 阅读 · 0 评论 -
matcher.find(); matcher.matches(); 两个方法有什么区别
matcher.find(); matcher.matches(); 两个方法有什么区别?原创 2023-07-12 10:43:16 · 4172 阅读 · 0 评论 -
ORM 自定义sql,where条件变量值为null,转为:where remark=null是不对的
使用ORM自定义sql, 在where条件,使用remark=#{remark @toIsNULL1}才是对的.ORM 自定义sql,where条件变量值为null,转为:where remark=null是不对的。Bee,一个简单易用,功能强大的ORM框架.原创 2023-07-01 21:58:25 · 815 阅读 · 1 评论 -
Maven配置下载ORM Bee的SNAPSHOT版本
Maven配置下载ORM Bee的SNAPSHOT版本原创 2023-05-24 14:54:23 · 160 阅读 · 3 评论 -
多个参数时,使用 restful 风格的弊端,如:@GetMapping (“/list2/{page}/{size}“)
多个参数时,使用 restful 风格的弊端,如:@GetMapping ("/list2/{page}/{size}")restful 的好处就是清楚,每个请求对应一个 url;但可能会导致请求过多。弊端就是参数 1,参数 2:page,size, 不可以只传其中一个,或都不传。每一项技术都不可能打遍天下,过度迷信某个技术,只会将问题复杂化。比方说查询,要是都不传可以默认查首页固定条数的记录。要是 page 不传,可以默认 page=1,但 restful 这种风格就很难做到。原创 2023-05-23 10:47:51 · 337 阅读 · 0 评论 -
FindBug发现的Java内存模型相关bug
此方法包含非易失性静态字段的非同步延迟初始化。因为编译器或处理器可能会对指令进行重新排序,所以如果可以由多个线程调用该方法,则不能保证线程能够看到完全初始化的对象。您可以使字段不稳定以更正问题。有关更多信息,请参阅Java内存模型网站。原创 2023-03-14 22:38:03 · 389 阅读 · 0 评论 -
数据集成专家--Java ORM Bee
网络的发展与互联网应用的普及推动了电子商务平台的快速发展。人们开始习惯使用电子商务平台,随着用户越来越多,平台的访问速度开始下降,为了提高电子商务平台的性能,很多公司在搭建电商平台的过程中不仅使用关系型数据库,还使用非关系型数据库进行数据存储。大数据时代,需要集成多样化数据管理分析工具完成业务需求,然而不同工具的数据访问接口标准不一,需要借助适配器进行接口转换以实现数据管理分析工具协作.因此,如何快速集成不同工具成为学术界与工业界亟待解决的问题。原创 2023-02-25 16:04:21 · 225 阅读 · 0 评论 -
JavaWeb的一些绝招,可以让开发更简单
JavaWeb的一些绝招,可以让开发更简单。原创 2023-02-05 11:25:41 · 103 阅读 · 0 评论 -
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer原创 2022-12-02 23:30:54 · 991 阅读 · 0 评论 -
eclipse执行update maven操作之后jre被改成1.5的问题
eclipse执行update maven操作之后jre被改成1.5的问题。要是默认是1.8, 将上面配置所有的1.7改成1.8即可.原创 2022-11-05 19:34:47 · 210 阅读 · 0 评论 -
Java设计模式与软件设计原则在ORM Bee的应用
Bee源码分析:Bee使用的设计模式与设计原则原创 2022-10-24 22:59:09 · 165 阅读 · 0 评论 -
使用RecursiveTask进行forkJoin求和 (2)
使用RecursiveTask进行forkJoin求和 (2)使用RecursiveTask进行递归拆分任务求和. 可以充分发挥CPU多核的优势!原创 2022-09-04 17:33:14 · 111 阅读 · 0 评论 -
使用RecursiveTask进行forkJoin求和 (1)
使用RecursiveTask进行forkJoin求和 (1)使用RecursiveTask进行递归拆分任务求和. 可以充分发挥CPU多核的优势!原创 2022-09-04 17:31:48 · 134 阅读 · 0 评论 -
JDK的BUG--关于FutureTask.isDone
这个 BUG 说:FutureTask.isDone 方法在任务还没有完成的时候就会返回 true。JDK的BUG--关于FutureTask.isDone。这个Bug在JDK9进行了修复.原创 2022-08-20 18:21:24 · 277 阅读 · 0 评论 -
Java EE与jakarta
2017 年 8 月,Oracle(甲骨文)决定将 Java EE(Java Enterprise Edition)移交给开源组织,最后 Eclipse 基金会接手。这应该是甲骨文实现对 Java 品牌控制的最新举措,尽管之前 Sun 的资产已经被甲骨文围剿得只剩一个 VirtualBox 还能喘口气。不过,甲骨文可不允许开源组织用 Java 的名号,于是 Eclipse 选出了 "Jakarta EE" 和"Enterprise Profile"两个后续按名字,最终前者以 64.4% 的票数获胜。也就是说原创 2022-06-28 07:36:44 · 1840 阅读 · 0 评论 -
SpringBoot @SpringBootApplication指定扫描的包
SpringBoot @SpringBootApplication指定扫描的包@SpringBootApplication 默认是扫描其所在的包目录及子目录.当需要扫描的目录,不在默认目录时,就需要指定扫描的包.原创 2022-05-21 23:25:57 · 2136 阅读 · 0 评论 -
(三十五)Bee V1.11使用Redis二级缓存配置
Bee V1.11使用Redis二级缓存配置首先要声明是使用二级缓存, 因为默认二级缓存是关闭的.bee.osql.cache.useLevelTwo=true然后是配置,一级缓存,是否还放入二级缓存#永久和长久缓存默认不放二级缓存,其它一级缓存可通过该配置设置bee.osql.cache.levelOneTolevelTwo=false再配置二级缓存的时间.#二级缓存默认保存时间(秒 second)bee.osql.cache.levelTwoTimeout=12剩下的就.原创 2022-05-07 11:17:53 · 2931 阅读 · 0 评论