- react.js 监听页面滚动事件
伟大的python程序员
react.jsreact.js
componentDidMount(){window.addEventListener('scroll',this.handleScroll);}handleScroll=(event)=>{//滚动条高度letctx=this;letclientHeight=document.documentElement.clientHeight;//可视区域高度letscrollTop=document.d
- 在树莓派安装arm gcc工具链
zili09
linuxarmgnulinux
InstallGCC需要将gnu工具在树莓派重新编译,具体流程见文档:ThebuildprocessofGNUtoolsforARMembeddedprocessors由于编译需要的时间较长,Github上已经有人将编译过的文件放出来,直接拷贝进/usr/即可,见安装步骤。安装好之后,只需要在厂商提供的工具链build_debug.sh中将ARMGCC_DIR的值改为/usr即可,之后运行脚本将调
- 链表相交问题(双指针法)(java和c语言)
野犬寒鸦
链表c语言算法java
问题描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回null。方法:双指针一种高效的方法是使用两个指针,分别从两个链表的头部开始遍历。当一个指针到达链表末尾时,它切换到另一个链表的头部继续遍历。如果两个链表相交,那么这两个指针一定会在某一点相遇,这个相遇点就是相交的起始节点。实现思路初始化两个指针:分别指向链表A和链表B的头节点。
- AI学习指南Ollama篇-Ollama简介
俞兆鹏
AI学习指南人工智能ollama
一、定义大语言模型(LLM)是一种基于深度学习的自然语言处理模型,能够生成文本、回答问题、翻译语言、撰写代码等。这些模型通过海量的文本数据进行训练,学习语言的模式和结构,从而能够生成自然流畅的文本内容。随着技术的不断进步,大语言模型在各个领域都展现出了巨大的潜力。二、应用场景大语言模型的应用场景非常广泛,以下是一些常见的例子:聊天机器人:通过自然语言理解与生成,为用户提供智能对话服务。内容创作:帮
- java基础加强四(反射,代理模式,自定义注解)
咸鱼太咸
从新开始java反射
一、反射反射机制是java中一个很强大的功能,可以跳过jvm实例化对象的过程,直接实例化类的class对象,然后直接操作class对象,再运行过程中,几乎可以得到任何一个类的属性和方法,能够调用任何一个对象的方法和属性。Class对象:一个类的描述,存储了类的信息。看一下api:比如一个类叫Demo,在jvm加载的时候就会创建一个class对象,里边存储了Demo类的信息,有什么属性,方法,构造器
- C++ 策略模式
比滕
C++设计模式策略模式c++开发语言
策略模式:定义一些列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法可以独立于使用它的客户而变化。#pragmaonceclassCashSuper{public:virtualdoubleacceptCash(doublemoney)
- 创建自定义全局指令
yqcoder
前端javascript开发语言
1.创建文件夹mycli、mycli/bin2.创建文件mycli/bin/index.js3.在mycli文件目录下运行命令npminit-y生成package.json{ "name":"mycli", "version":"1.0.0", "main":"index.js", "bin":{ "mycli":"bin/index.js" }, "scripts":{ "test":"ec
- 【window批处理文件快速入门学习--这份文档就够了】
少年近视
批处理adb学习batch
一、简介1.1什么是批处理文件?批处理文件(BatchFile)是一种包含一系列DOS命令的文本文件,通常用于自动化重复性任务。文件的扩展名为.bat或.cmd,当在命令提示符下运行时,操作系统会按顺序执行文件中的命令。批处理文件的创建和使用为用户提供了高效的命令行操作方式。示例:创建一个简单的批处理文件,文件名为example.bat,内容如下:@echooffecho这是一个简单的批处理文件。
- 【Python】2.1字面量
我是初九
人生苦短我爱Pythonpython字符串
字面量(literal)在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation)。几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数、浮点数以及字符串;而有很多也对布尔类型和字符类型的值也支持字面量表示;还有一些甚至对枚举类型的元素以及像数组、记录和对象等复合类型的值也支持字面量表示法。简单地说,字面量是用于表示固定值的符号(token)字面量是某
- 设计模式--策略模式
shenzy呀
设计模式策略模式设计模式
文章目录策略(Strategy)模式策略模式的收银软件策略模式的特点使用场景优缺点策略模式和工厂模式的结合策略(Strategy)模式本质:分离算法,选择实现。策略模式:针对一组算法,将每一个算法封装到具有共同接口的独立的类中,使得它们可以互换。使用策略模式可以把行为和环境分割开来。环境类Context负责查询要做什么,各种算法则在具体策略类(ConcreteStrategy)中提供。当出现新的促
- RabbitMQ 架构分析
DREAM LINER SU
rabbitmq架构rubyjava分布式
文章目录前言一、RabbitMQ架构分析1、Broker2、Vhost3、Producer4、Messages5、Connections6、Channel7、Exchange7、Queue8、Consumer二、消息路由机制1、DirectExchange2、TopicExchange3、FanoutExchange4、HeadersExchange5、notice5.1、备用交换机(Altern
- linux下使用vscode和cmake高效管理c++项目简明教程
zeeq_
UbuntuC++vscodevscodelinuxc++
安装vscode及c++环境配置可以参见:https://blog.csdn.net/fangshuo_light/article/details/123635576 首先,创建工程目录,并在vscode中打开该文件夹,在里面创建如下文件夹:include:用于存放.h文件src:用于存放.cpp文件build:cmake生成文件的存放路径CMakeLists.txt:cmake配置文件
- java线程间如何通信
一只爪子
javajvm开发语言
Java线程之间可以通过以下方式进行通信:使用wait()和notify()方法,这需要使用同步代码块或同步方法。在同步代码块或同步方法中,线程可以调用wait()方法阻塞,并在其他线程调用notify()方法后恢复执行。使用CountDownLatch,它是一个同步辅助类,可以让一个线程等待其他线程的完成。使用CyclicBarrier,它也是一个同步辅助类,可以让多个线程在某个点上等待,直到所
- Node CLI 之 Commander.js (1)
史一试
脚手架javascript开发语言ecmascript
官网地址:https://github.com/tj/commander.js/blob/f1ae2db8e2da01d6efcbfd59cbf82202f864b0c1/Readme_zh-CN.mdCommander.js是node.js命令行界面的完整解决方案开始新建一个node工程执行npminstallcommanderpackage.json中新增代码添加#!/usr/bin/envn
- 【由浅入深认识Maven】第2部分 maven依赖管理与仓库机制
Suwg209
由浅入深认识mavenmavenjava
文章目录第二篇:Maven依赖管理与仓库机制一、前言二、依赖管理基础1.依赖声明2.依赖范围(Scope)3.依赖冲突与排除三、Maven的仓库机制1.本地仓库2.中央仓库3.远程仓库四、版本管理策略1.固定版本2.版本范围五、总结第二篇:Maven依赖管理与仓库机制一、前言后端研发同学经常面临项目中需要依赖大量第三方库的情况。这些依赖库通常是我们工作中的基础工具,例如Spring、Log4j、J
- python 类型标注-typing --- 类型标注支持 — Python 3.7.9 文档
weixin_39892481
类,函数和修饰器.¶这个模块定义了如下的类,模块和修饰器.classtyping.TypeVar¶类型变量用法:T=TypeVar("T")#CanbeanythingA=TypeVar("A",str,bytes)#MustbestrorbytesTypevariablesexistprimarilyforthebenefitofstatictypecheckers.Theyserveasthe
- 《Effective Java》学习笔记——第7部分并发
Suwg209
EffectiveJava最佳实践笔记java学习笔记
文章目录一、前言二、并发最佳实践1.优先使用现有的并发库2.避免共享可变数据3.最小化锁的持有时间4.使用合适的同步策略5.使用volatile变量来避免缓存问题6.避免死锁7.使用ExecutorService管理线程8.优先使用无锁并发工具三、小结一、前言《EffectiveJava》第7部分“并发”介绍了如何编写高效、安全的多线程程序。随着多核处理器的普及,Java的并发编程变得更加重要。本
- 《Effective Java》学习笔记--第3部分 方法设计和实现最佳实践
Suwg209
EffectiveJava最佳实践笔记java学习笔记
文章目录第3部分方法设计和实现一、前言二、方法设计和实现最佳实践1.方法的参数要尽量少2.避免使用过多的返回值3.避免在方法中返回null4.方法要尽量做到单一职责5.使用合适的访问修饰符6.避免方法内部的过多的条件分支7.使用适当的异常处理8.考虑方法的线程安全性三、小结第3部分方法设计和实现一、前言《EffectiveJava》共有多个章节,每个章节提供了若干条建议或最佳实践,整理了对应章节关
- 《手写Mybatis渐进式源码实践》实践笔记 (第三章 映射器的注册和使用)
Suwg209
手写mybatismybatis笔记java数据库
文章目录第3章映射器的注册和使用背景特点结构代码示例(Java)适用场景优点缺点目标设计实现工程代码类图实现步骤1.映射器注册机2.SqlSession标准定义和实现3.SqlSessionFactory工厂定义和实现测试事先准备测试用例测试结果总结第3章映射器的注册和使用背景工厂模式(FactoryMethodPattern)是一种创建型设计模式,它定义了一个用于创建对象的接口,但允许子类决定实
- Java多线程之线程通信
心情阿少
java开发语言
线程通信通过synchronized关键字,可保证线程在执行的过程中不会被其他线程打断,但无法保证线程的执行次序。比如上述案例中,我们可以保证t1线程输出"好好学习"时,不会被t2线程打断,但无法保证t1、t2两个线程执行的次序。如果想要控制线程输出次序,则需要学习线程通信技术。1)概念理解线程间通信:多个线程并发执行时,在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并
- 使用commander创建自定义命令行工具
van_95
准备工作1.安装node.js,在官网下载即可,利用node.js的打包工具npm开始第一步.首先创建一个demo文件夹(名称自定义)第二步.在demo文件夹中创建一个bin文件夹,在bin文件夹下创建一个demo.js,然后在js中写下如下代码#!/usr/bin/envnodeconsole.log('demoisrun')第三步.使用cmd命令行,进入demo所在的文件夹下,然后输入命令np
- Python基础 - 发起http请求
shawn.zhang.
pythonjavaajaxjsoncurl
目录[-]1、Python发起http请求#!/usr/bin/envpython#coding=utf-8#licenseremovedfor******importrospyimportpycurlimportStringIOimporturllibfromstd_msgs.msgimportStringimportjsonimporthashlibfromcyber_msgs.msgimpo
- Langchain[6]-LangGraph:异步和流、图可视化、多智能体协作、LCEL代码生成
汀、人工智能
AIAgentlangchainAIAgentLangGraph多智能体协作AI智能体AI大模型Agent框架
Langchain[6]-LangGraph:异步和流、图可视化、多智能体协作、LCEL代码生成1.异步和流因为任何大模型在推理的时候,都会有一定的时间延迟,这是由大模型的底层架构决定的,所以在很多应用,尤其是对话应用中,使用异步以及流式输出,是大幅提升用户体验的较好方法。在langGraph中可以很方便的实现异步和流,简单例子为例:异步调用方法:inputs={"messages"
- 解释器模式
咖啡の猫
解释器模式设计模式
在软件开发的诸多场景中,我们有时需要处理特定领域的语言或表达式。例如,在数据库查询中,我们使用SQL语句来查询数据;在数学计算软件里,需要解析和计算各种数学表达式。解释器模式(InterpreterPattern)应运而生,它提供了一种将语言中的语句表示为对象,并为这些语句定义解释方法的方式,从而使我们能够在程序中解释和执行特定领域的语言。解释器模式概述解释器模式是一种行为型设计模式,它用于定义一
- 状态模式
咖啡の猫
状态模式设计模式
在软件开发过程中,我们经常会遇到这样的情况:一个对象的行为会随着其内部状态的改变而发生变化。例如,一个手机在不同状态下(开机、关机、静音等)对相同的操作(如来电)会有不同的反应。传统的解决方案可能会使用大量的条件判断语句(如if-else或switch-case)来处理不同状态下的行为,但这种方式会使代码变得臃肿、难以维护和扩展。状态模式(StatePattern)应运而生,它提供了一种优雅的方式
- 设计模式七大原则
咖啡の猫
设计模式
设计模式背后的七大原则是软件开发过程中必须遵循的黄金法则,为我们构建高质量的软件架构奠定了坚实基础。本文将深入剖析这七大原则,带您领略其深刻内涵与实际应用。一、单一职责原则(SingleResponsibilityPrinciple,SRP)2.1原则定义一个类应该仅有一个引起它变化的原因,即一个类应该只负责一项职责。2.2示例分析以一个简单的用户管理系统为例,假设我们有一个UserService
- java干货 线程间通信
小男孩编程
java开发语言jvm
文章目录一、线程间通信1.1为什么要处理线程间通信?1.2什么是等待唤醒机制?二、等待唤醒机制使用2.1等待唤醒机制用到的方法2.1.1wait2.1.2notify2.2线程通信代码实践2.2.1重要说明2.2.2代码一、线程间通信1.1为什么要处理线程间通信?在默认情况下,cpu是默认切换线程来执行的,当我们需要多个线程共同来完成一个任务,希望他们按照一定的规律执行,那么就需要他们进行通信协调
- fatal: unable to access ‘https://github
江_小_白
报错解决方案github
fatal:unabletoaccess‘https://github.com/protocolbuffers/protobuf.git/’:Failedtoconnecttogithub.comport443:Connectiontimedout下载项目的时候出现了这个问题,本以为是网络或者什么的问题,没想到是sudo,sudosudogitclone-bv3.6.1https://github
- Java中的注解
RB_VER
Java基础java编程语言
为什么要引入注解?使用【注解】之前(甚至在使用之后),【XML】被广泛的应用于描述元数据,得到各大框架的青睐,它以松耦合的方式完成了框架中几乎所有的配置,但是随着项目越来越庞大,【XML】的内容也越来越复杂,一些应用开发人员和架构师发现维护成本变高。他们希望使用一些和代码紧耦合的东西,于是就有人提出来一种标记式高耦合的配置方式【注解】。方法上可以进行注解,类上也可以注解,字段属性上也可以注解,反正
- java常见单词汇总3(非常使用哦)
糟糕透了的都精彩极了
学习javajava常用英文单词
JSP中常用英文URL:UniversalResourceLocation:统一资源定位符IE:InternetExplorer因特网浏览器JSP:javaserverpage.java服务器页面Model:模型View:视图C:controller:控制器Tomcat:一种jsp的web服务器WebModule:web模块Servlet:小服务程序Request:请求Response:响应Ini
- java类加载顺序
3213213333332132
java
package com.demo;
/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {
String s1 = "成员属性";
static String s2 = "
- Hibernate与mybitas的比较
BlueSkator
sqlHibernate框架ibatisorm
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。
MyBatis 参考资料官网:http:
- php多维数组排序以及实际工作中的应用
dcj3sjt126com
PHPusortuasort
自定义排序函数返回false或负数意味着第一个参数应该排在第二个参数的前面, 正数或true反之, 0相等usort不保存键名uasort 键名会保存下来uksort 排序是对键名进行的
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8&q
- DOM改变字体大小
周华华
前端
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- c3p0的配置
g21121
c3p0
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的下载地址是:http://sourceforge.net/projects/c3p0/这里可以下载到c3p0最新版本。
以在spring中配置dataSource为例:
<!-- spring加载资源文件 -->
<bean name="prope
- Java获取工程路径的几种方法
510888780
java
第一种:
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“
- 在类Unix系统下实现SSH免密码登录服务器
Harry642
免密ssh
1.客户机
(1)执行ssh-keygen -t rsa -C "
[email protected]"生成公钥,xxx为自定义大email地址
(2)执行scp ~/.ssh/id_rsa.pub root@xxxxxxxxx:/tmp将公钥拷贝到服务器上,xxx为服务器地址
(3)执行cat
- Java新手入门的30个基本概念一
aijuans
javajava 入门新手
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。 Java概述: 目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合
- Memcached for windows 简单介绍
antlove
javaWebwindowscachememcached
1. 安装memcached server
a. 下载memcached-1.2.6-win32-bin.zip
b. 解压缩,dos 窗口切换到 memcached.exe所在目录,运行memcached.exe -d install
c.启动memcached Server,直接在dos窗口键入 net start "memcached Server&quo
- 数据库对象的视图和索引
百合不是茶
索引oeacle数据库视图
视图
视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图
为什么oracle需要视图;
&
- Mockito(一) --入门篇
bijian1013
持续集成mockito单元测试
Mockito是一个针对Java的mocking框架,它与EasyMock和jMock很相似,但是通过在执行后校验什么已经被调用,它消除了对期望 行为(expectations)的需要。其它的mocking库需要你在执行前记录期望行为(expectations),而这导致了丑陋的初始化代码。
&nb
- 精通Oracle10编程SQL(5)SQL函数
bijian1013
oracle数据库plsql
/*
* SQL函数
*/
--数字函数
--ABS(n):返回数字n的绝对值
declare
v_abs number(6,2);
begin
v_abs:=abs(&no);
dbms_output.put_line('绝对值:'||v_abs);
end;
--ACOS(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
- 【Log4j一】Log4j总体介绍
bit1129
log4j
Log4j组件:Logger、Appender、Layout
Log4j核心包含三个组件:logger、appender和layout。这三个组件协作提供日志功能:
日志的输出目标
日志的输出格式
日志的输出级别(是否抑制日志的输出)
logger继承特性
A logger is said to be an ancestor of anothe
- Java IO笔记
白糖_
java
public static void main(String[] args) throws IOException {
//输入流
InputStream in = Test.class.getResourceAsStream("/test");
InputStreamReader isr = new InputStreamReader(in);
Bu
- Docker 监控
ronin47
docker监控
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路。 1、关于监控的内容 监控宿主机本身
监控宿主机本身还是比较简单的,同其他服务器监控类似,对cpu、network、io、disk等做通用的检查,这里不再细说。
额外的,因为是docker的
- java-顺时针打印图形
bylijinnan
java
一个画图程序 要求打印出:
1.int i=5;
2.1 2 3 4 5
3.16 17 18 19 6
4.15 24 25 20 7
5.14 23 22 21 8
6.13 12 11 10 9
7.
8.int i=6
9.1 2 3 4 5 6
10.20 21 22 23 24 7
11.19
- 关于iReport汉化版强制使用英文的配置方法
Kai_Ge
iReport汉化英文版
对于那些具有强迫症的工程师来说,软件汉化固然好用,但是汉化不完整却极为头疼,本方法针对iReport汉化不完整的情况,强制使用英文版,方法如下:
在 iReport 安装路径下的 etc/ireport.conf 里增加红色部分启动参数,即可变为英文版。
# ${HOME} will be replaced by user home directory accordin
- [并行计算]论宇宙的可计算性
comsci
并行计算
现在我们知道,一个涡旋系统具有并行计算能力.按照自然运动理论,这个系统也同时具有存储能力,同时具备计算和存储能力的系统,在某种条件下一般都会产生意识......
那么,这种概念让我们推论出一个结论
&nb
- 用OpenGL实现无限循环的coverflow
dai_lm
androidcoverflow
网上找了很久,都是用Gallery实现的,效果不是很满意,结果发现这个用OpenGL实现的,稍微修改了一下源码,实现了无限循环功能
源码地址:
https://github.com/jackfengji/glcoverflow
public class CoverFlowOpenGL extends GLSurfaceView implements
GLSurfaceV
- JAVA数据计算的几个解决方案1
datamachine
javaHibernate计算
老大丢过来的软件跑了10天,摸到点门道,正好跟以前攒的私房有关联,整理存档。
-----------------------------华丽的分割线-------------------------------------
数据计算层是指介于数据存储和应用程序之间,负责计算数据存储层的数据,并将计算结果返回应用程序的层次。J
&nbs
- 简单的用户授权系统,利用给user表添加一个字段标识管理员的方式
dcj3sjt126com
yii
怎么创建一个简单的(非 RBAC)用户授权系统
通过查看论坛,我发现这是一个常见的问题,所以我决定写这篇文章。
本文只包括授权系统.假设你已经知道怎么创建身份验证系统(登录)。 数据库
首先在 user 表创建一个新的字段(integer 类型),字段名 'accessLevel',它定义了用户的访问权限 扩展 CWebUser 类
在配置文件(一般为 protecte
- 未选之路
dcj3sjt126com
诗
作者:罗伯特*费罗斯特
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处.
但我却选了另外一条路,
它荒草萋萋,十分幽寂;
显得更诱人,更美丽,
虽然在这两条小路上,
都很少留下旅人的足迹.
那天清晨落叶满地,
两条路都未见脚印痕迹.
呵,留下一条路等改日再
- Java处理15位身份证变18位
蕃薯耀
18位身份证变15位15位身份证变18位身份证转换
15位身份证变18位,18位身份证变15位
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--应用上下文配置【AppConfig】
hanqunfeng
springmvc4
从spring3.0开始,Spring将JavaConfig整合到核心模块,普通的POJO只需要标注@Configuration注解,就可以成为spring配置类,并通过在方法上标注@Bean注解的方式注入bean。
Xml配置和Java类配置对比如下:
applicationContext-AppConfig.xml
<!-- 激活自动代理功能 参看:
- Android中webview跟JAVASCRIPT中的交互
jackyrong
JavaScripthtmlandroid脚本
在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面举例说明之:
1 JAVASCRIPT脚本调用android程序
要在webview中,调用addJavascriptInterface(OBJ,int
- 8个最佳Web开发资源推荐
lampcy
编程Web程序员
Web开发对程序员来说是一项较为复杂的工作,程序员需要快速地满足用户需求。如今很多的在线资源可以给程序员提供帮助,比如指导手册、在线课程和一些参考资料,而且这些资源基本都是免费和适合初学者的。无论你是需要选择一门新的编程语言,或是了解最新的标准,还是需要从其他地方找到一些灵感,我们这里为你整理了一些很好的Web开发资源,帮助你更成功地进行Web开发。
这里列出10个最佳Web开发资源,它们都是受
- 架构师之面试------jdk的hashMap实现
nannan408
HashMap
1.前言。
如题。
2.详述。
(1)hashMap算法就是数组链表。数组存放的元素是键值对。jdk通过移位算法(其实也就是简单的加乘算法),如下代码来生成数组下标(生成后indexFor一下就成下标了)。
static int hash(int h)
{
h ^= (h >>> 20) ^ (h >>>
- html禁止清除input文本输入缓存
Rainbow702
html缓存input输入框change
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。
如果不想让浏览器缓存input的值,有2种方法:
方法一: 在不想使用缓存的input中添加 autocomplete="off";
<input type="text" autocomplete="off" n
- POJO和JavaBean的区别和联系
tjmljw
POJOjava beans
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规
- java中单例的五种写法
liuxiaoling
java单例
/**
* 单例模式的五种写法:
* 1、懒汉
* 2、恶汉
* 3、静态内部类
* 4、枚举
* 5、双重校验锁
*/
/**
* 五、 双重校验锁,在当前的内存模型中无效
*/
class LockSingleton
{
private volatile static LockSingleton singleton;
pri