implemented tree java in
Java之Stream流概述
Java之Stream流 概述 在Java 8 中,得益于lambda比所带来的函数式编程,引入了一个全新的Stream流概念。 目的:用于简化集合和数组操作的API。 初步体验 需求:按照下面的要求完成集合的创建与遍历 创建一个集合存储多个字符串元素。 List<String> names = n ......
JAVA基础
# JAVA基础 ## 一 了解JAVA > Pascal之父Nicklaus Wirth:“Algorithms+Data Structures=Programs” > > 译:应用程序=算法+数据结构 ### 1.常见的Dos命令 - `dir`:列出当前目录下的文件夹 - `md`:创建目录 ......
Java之不可变集合
Java之不可变集合 什么是不可变集合? 不可变集合就是不可被修改的集合。 集合的数据项在创建的时候提供,并且在整个生命周期中都不可被改变。否则报错 为什么要创建不可变集合? 如果当某个数据不能被修改,把它防御性地拷贝到不可变集合中是个很好的选择。 或者当集合对象被不可信的库调用时,不可变形式是安全 ......
Java学习-1.jdk和IntelliJ IDEA安装
1.jdk下载与安装 下载地址:https://www.oracle.com/java/technologies/downloads/#jdk20-windows 环境配置: 1. 我的电脑–》右键属性–》高级系统设置–》环境变量 2. 系统变量–》新建系统变量–》完成后点击确定 3.双击系统变量下 ......
WEB漏洞—反序列化之php&java(上)
PHP 反序列化原理: 未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行,SQL 注入,目录遍历等不可控后果。 其实跟文件解析差不多,都是由于传递的恶意参数被执行(序列化和反序列化相当于加解密过程) 在反序列化的过程中自动触发了某些魔术方法。当进行反序列化的时候就 ......
设计模式-备忘录模式在Java中使用示例-象棋悔棋
场景 备忘录模式 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤,当新的状态无效 或者存在问题时,可以使用暂时存储起来的备忘录将状态复原,当前很多软件都提供了撤销(Undo)操作, 其中就使用了备忘录模式。 备忘录模式结构图 在备忘录模式结构图中包含如下几个角色: ......
设计模式-中介者模式在Java中使用示例-客户信息管理
场景 欲开发客户信息管理窗口界面,界面组件之间存在较为复杂的交互关系:如果删除一个客户, 要在客户列表(List)中删掉对应的项,客户选择组合框(ComboBox)中客户名称也将减少一个; 如果增加一个客户信息,客户列表中需增加一个客户,且组合框中也将增加一项。 中介者模式概述 如果在一个系统中对象 ......
odoo _register_hook和_patch_methods组合使用,实现日志功能,效果和java的切面类似
_register_hook方法是在odoo启动,加载模块时调用,可以在调用期间对某个的模型进行功能增强,比如增加日志 下面是一个简单的示例: ``` class Log(models.Model): _name = "cn.com.brandmax.log" _description = "日志" ......
python线程并行执行与java的线程并行执行的对比
python 多线程并不是真正的并行执行,而java的多线程是真正的并行执行 python 在Python中,由于全局解释器锁(GIL)的存在,多线程并不能实现真正的并行执行。 GIL是一种机制,它限制了同一时刻只能有一个线程执行Python字节码,这意味着在多线程环境下,多个线程并不能同时执行CP ......
Python Files All In One
Python Files All In One
open, read, write, append, binary, close
......
Java面试题 P12:HashMap和HashTable的区别?底层是怎么实现的?
区别: 1、HashMap:是线程不安全的,HashTable:每个方法都加了个线程锁(synchronized 修饰),是线程安全的 2、HashMap允许key和value为null,而HashTable不允许 底层实现:数据+链表实现 代码示例: 1 public static void ma ......
[odoo开发笔记05]odoo 15&16 Tree/看板视图添加按钮
odoo在15及之后版本产生js引用变更,导致14及之前列表视图(Tree/List)添加自定义按钮的方式产生了变化。 目前15/16版本列表视图添加按钮有三种方式 1.每个明细行上都显示按钮 此种Tree视图添加按钮仅需要定位第一个字段,添加button即可 创建xml文件(例如sale_view ......
Python exceptions All In One
Python exceptions All In One
ImportError: an import fails;
IndexError: a list is indexed with an out-of-range number;
NameError: an unknown variable i... ......
Java Web|
1.Spring 1.1 Spring MVC 参数的封装 1.传统的URL localhost:8080?id=1&name=tom 2.基于RESTful风格的URL localhost:8080/1/tom 前后端分离的开发一般是基于RESTfull,具体规则是4中请求分别表示不同的业务 GE ......
如何用 Java 写一个 Java 虚拟机
项目链接 `https://github.com/FranzHaidnor/haidnorJVM` # haidnorJVM 使用 Java17 编写的 Java 虚拟机 ## 意义 1. 纸上得来终觉浅,绝知此事要躬行。只学习 JVM 机制和理论,很多时候任然觉得缺乏那种大彻大悟之感 2. 使用简 ......
Windows本地IDEA运行mapreduce报错java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset.
## 问题原因 在windows运行hadoopJob程序的时候需要模拟下hadoop的运行环境。否则出现会出现标题的问题。 ## 解决方案 1. 下载Hadoop的bin目录 https://github.com/s911415/apache-hadoop-3.1.3-winutils 2. 将步 ......
Java 获取对象的属性及属性值
获取属性名称: /** * 获取属性名数组 * * @param o 对象 * @return 属性名称 */ private String[] getFiledName(Object o){ Field[] fields=o.getClass().getSuperclass().getDeclar ......
Java 获取属性名称
package com.huake.erp.common.tools.util;import cn.hutool.core.util.StrUtil;import java.io.Serializable;import java.lang.invoke.SerializedLambda;import ......
Java8 Stream 之groupingBy 分组讲解
本文主要讲解:Java 8 Stream之Collectors.groupingBy()分组示例 Collectors.groupingBy() 分组之常见用法 功能代码: /** * 使用java8 stream groupingBy操作,按城市分组list */public void group ......
java——虚拟机、线程
java虚拟机: 是一台想象中的机器,有自己想象的硬件(处理器、堆栈、寄存器等)以及相应的指令系统。 生命周期:当执行java程序时,虚拟机开始运行,程序结束虚拟机停止。同一台计算机每多运行一个程序,就会多运行一个虚拟机。虚拟机开始于main()方法。 java虚拟机的体系结构: 1.java指令集 ......
java.lang.ClassNotFoundException: javax.servlet.http.HttpServlet
环境信息: JDK 17、Tomcat 10 问题原因 我这里编译,打包都是好的,但是一运行发现就报错。错误的原因是 Tomcat10 里也自带了一些lib包,可以打开Tomcat下lib文件夹,这又涉及到了包的加载顺序了 一打开发现 Tomcat里的是 Jakarta EE,我Maven里引用的还 ......
学习Java的第8天
数据拓展 public class Demo03 { public static void main(String[] args) { //*整数拓展 进制 二进制0b** 十进制 八进制**0** 十六进制**0x ** int i = 10; int i2 = 010; //**八进制0 ** ......
java restHighLevelClient 客户端使用_id排序使得查询变慢
1 MultiSearchRequest request = new MultiSearchRequest(); 2 SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); 3 searchSourceBuilder. ......
android开发手动开启ddms调试工具失败java.lang.IllegalStateException: xxx的解决方法
1. Android studio3.1之后不再带有ddms调试工具了,不过如果我们想自己手动打开还是可以的。打开步骤如下: a. window下来自sdk安装目录tools目录下:D:\java\androidSdk\tools b. 可以看到有个monitor.bat文件,双击即可打开 c. 如 ......
Java学习1
# java学习01 > 简单写写学习期间不知道 or 感兴趣的一些东西 ## 计算机相关前置知识 ### 计算机结构 ![structure](https://typorausespf.oss-cn-hangzhou.aliyuncs.com/image-20221130095432827.png ......
element-ui e-tree 反显问题
需要反显后台返回的树形id (父节点也需要反显 )因为添加时 后台让父节点得id 也传递过去了 所以返回也带着 思路: 去除默认得 :default-checked-keys="[5]" this.$nextTick(() => { this.menuList.forEach((i, n) => { ......
Java 线程任务超时设置
**JDK 8** ``` ExecutorService executor = Executors.newSingleThreadExecutor(); Callable task = () -> { test1(); return "Task excute success!"; }; Futur ......
mysql中in的使用场景及用法举例说明?
在MySQL中,IN运算符用于在WHERE子句中指定一个条件,以便从一个给定的列表中选择满足条件的值。IN运算符可以用于任何数据类型,包括数字、字符串和日期。 下面是IN运算符的使用场景和用法的示例说明: 1. 使用IN运算符筛选特定值: - 查询订单表中订单状态为"已发货"或"已完成"的订单: ` ......