- 博客(38)
- 收藏
- 关注
原创 使用插桩实现对对象大小的计算
参考连接:https://www.iteye.com/blog/yueyemaitian-20330461、编写Instrumentation类创建一个普通类,内含静态方法premain(),这个方法名是java agent内定的方法名,总会在main函数之前执行。当存在多个premain()重载函数时,参数少的方法会被自动忽略掉。package com.hpp;import java.lang.instrument.Instrumentation;import java.lang.
2022-05-07 13:58:46
505
转载 过滤器(Filter)和拦截器(Interceptor)的区别
摘要: 本文介绍主要介绍了Java Web Filter 与 Struts2 Interceptor 及其之间的联系与区别。一. Filter 介绍 Filter可以认为是Servlet的一种“加强版”,它主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理,是个典型的处理链。Filter也可以对用户请求生成响应,这一点与Servlet相同,但实际上很少会使用Filter向用户请求生成响应。使用Filter完整的流程是:Filter对用户请求进行预处理,接着
2022-03-19 16:40:48
201
转载 [git] fatal: Exiting because of an unresolved conflict.
问题提交代码的时候发生冲突.git pushhint: Updates were rejected because the tip of your current branch is behindhint: its remote counterpart. Integrate the remote changes (e.g.hint: 'git pull ...') before pushing again.hint: See the 'Note about fast-forwards' ..
2022-03-13 18:36:35
4357
转载 java.lang.RuntimeException: Illegal key size or default parameters
最近在使用AES方式进行加密,本来经果测试已经没有问题,但是在更新了密钥key之后,就出现了下列报错。控制台报错如下:网上搜索发现,由于key的变更(由原来的128位变更为256位),导致加密/解密的失败。原来的密钥:lNQqkL1BfSwt2MKw新的密钥: P_e-BhqDPP0yeMe8Ma43ZhhL6fqevuR8之所以会出现这种问题,我们就要了解一个新的东西——JCE。在Java的核心类库中有一个JCE(Java Cryptography Extension),JCE是一组包,
2021-12-11 22:43:03
328
1
转载 scala集合基础
scala集合分类 可变集合:在原集合上进行添加、更新及删除元素不可变集合:一旦被创建便不能被改变,添加、更新及删除操作返回新的集合,老集合不变。在scala中,默认使用的都是immutable集合。如果要使用mutable集合,需要在程序中引入。Scala默认使用的可变集合,若要使用不可集合,需手动导入scala.collection.mutablescala会默认导入以下几个包:Predef对象中包含了Set、Map等的定义。2、集合类层次结构scala...
2021-08-20 20:41:31
237
原创 Restemplate使用之泛型参数
1、声明RestTemplate@Configurationpublic class RestTemplateConfig { @Bean public RestTemplate restTemplate(ClientHttpRequestFactory factory) { return new RestTemplate(factory);; } @Bean public ClientHttpRequestFactory simpleCl
2021-08-20 20:24:33
509
转载 jdbc-批量操作数据
批量执行SQL语句当批量插入或更新时,可采用Java的批量机制,允许多条语句一次性提交给数据库批量处理。JDBC的批量处理语句包括下面三个方法:addBatch(String):添加批量处理的SQL语句或是参数;executeBatch():执行批量处理语句;clearBatch():清空缓存的数据批量操作主要:1)多条SQL语句的批量处理;2)一个SQL语句的批量传参;代码实现import java.sql.Connection;import java.sql.Prepar
2021-08-20 20:24:10
634
原创 spring属性注入总结
1、注入字符串数组1)定义properties配置文件:student.type=a,b,c,dyml配置文件:studenttype: a,b,c,d注:字符串之间都是用英文逗号隔开的2)使用方式1:直接将值赋值给注解中的字符串属性对象:"#{'${student.type}'.split(',')}"方式2:@Value("${student.type}")private List<Integer> studentType;注意:方式...
2021-04-15 15:21:57
286
原创 gradle使用常见问题
1、使用idea新建gradle工程后,build.gradle文件中关联的groovy函数无法查看,提示No candidates found for method call XXXX错误原因:idea版本和gradle的版本不一致,导致加载gradle的相关jar包和配置文件中的数据不一致解决办法:安装新的gradle,使idea安装的gradle(当前用户的.gradle文件下查看)和系统安装的gradle版本一致gradle各个版本下载:https://blog.csdn.net/ii9
2021-01-07 00:53:47
8469
3
转载 tcpdump使用
tcpdump介绍tcpdump是一个运行在命令行下的抓包工具。它允许用户拦截和显示发送或收到过网络连接到该计算机的TCP/IP和其他数据包。tcpdump 适用于大多数的类Unix系统操作系统(如linux,BSD等)。类Unix系统的 tcpdump 需要使用libpcap这个捕捉数据的库就像 windows下的WinPcap。在学习tcpdump前最好对基本网络的网络知识有一定的认识。tcpdump命令格式及常用参数Tcpdump的大概形式如下:例:tcpdump –i et.
2020-12-04 18:22:09
304
转载 虚拟机内存模型
为什么要了解虚拟机如何操作内存?java与c/c++之间有一堵由内存动态分配和垃圾收集技术所围成的"高墙",墙外面的人想进去,墙里面的人却想出来.对于java程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出.有虚拟机管理内存,这一切看起来都很美好.但是,也正因为java程序员把内存控制的权力给了jav...
2020-01-15 22:37:45
268
转载 java虚拟机内存参数设置及常见错误总结
JVM--内存参数设置及常见错误总结一、JVM规范JVM规范对Java运行时的内存划定了几块区域(详见这里),有:JVM栈(Java Virtual Machine Stacks)、堆(Heap)、方法区(Method Area)、常量池(Runtime Constant Pool)、本地方法栈(Native Method Stacks),但对各块区域的内存布局和地址空间却没有明确规定...
2020-01-14 14:10:14
1013
转载 metaSpace引起full gc排查过程
JDK8用metaSpace区域来代替了以前的永久区,这个区域主要存放被加载的class信息,我手上一个项目每次启动时候都会伴随一次fullgc,排查思路是:一、查看内存使用率命令:jstat -gcutil PID ,这里的PID是Java进程ID可以看到老年代使用率只有1.96%,但是MetaSpace区域使用率是96.13%,初步怀疑是metaSpace区域设置太小。...
2020-01-13 21:47:32
2742
1
转载 由「Metaspace容量不足触发CMS GC」从而引发的思考
转换自:https://www.cnblogs.com/williamjie/p/9558101.html某天早上,毛老师在群里问「cat 上怎么看 gc」。之后毛老师发来一张图。老年代内存占用情况图片展示了老年代内存占用情况。第一个大陡坡是应用发布,老年代内存占比下降,很正常。第二个小陡坡,老年代内存占用突然下降,应该是发生了老年代 GC。但奇怪的是,此时老年代内...
2020-01-13 21:30:27
330
原创 cas简介
session在web开发语境下,用来保存客户端和服务端之间的状态。除非程序通知服务器删除一个session,否则服务器会一直保留,程序一般都是在用户退出的时候发个指令去删除session。关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间。session实现:在Cookie中写入sessionID,如tomcat默认写入为JSESSIONIDURL重
2016-11-02 21:09:49
642
原创 jquery动画
show():通过改变元素的多个样式(宽度、高度和不透明度等)将元素显示出来,支持速度参数及回调函数hide():通过改变元素的多个样式(宽度、高度和不透明度等)将元素隐藏起来,支持速度参数及回调函数fadeIn():通过改变元素的不透明度将元素显示出来,支持速度参数及回调函数fadeOut():通过改变元素的不透明度将元素隐藏起来,支持速度参数及回调函数slideUp():通过改
2016-10-06 21:00:43
234
原创 jquery中事件
1、加载DOM元素传统的window.onload();网页中的所有元素(包括元素的所有关联文件)完成加载到浏览器后,才可执行(js此时可访问网页中的任何元素);只能保存对一个函数的调用,会自动用后面的函数覆盖前面的函数;jquery中的$(document).ready(function(){});在dom完全就绪时就可以被调用,无需等到元素关键的文件全部下载完毕;可多次调用;2、事
2016-10-06 20:35:25
252
原创 解决query和其他库之间的冲突
1、jQuery库在其他库之后导入在其他库和jQuery库都加载完毕后,可在任何时候调用jQuery.noConflict()函数来将变量$的控制权移交给其他js库如prototype.js,示例如下:jQuery.noConfict();//将变量$的控制权移交给其他js框架(prototype.js)jQuery(function() {//使用jquery jQuery(
2016-10-05 17:16:30
513
原创 maven-灵活的构建
为了适应不同环境的构建,maven为支持灵活的构建,内置了属性、profile和资源过滤3大属性一、Maven属性maven提供了多种属性,如用于消除重复的元素,主要包括六种:1、内置属性主要有两个,${basedir}:项目根目录,包含pom.xml文件的目录;${version}:项目版本2、POM属性用于引用pom文件中对应元素的值,如${project.artifa
2016-09-29 21:06:45
294
原创 17-maven插件-mojo标注和参数
每个mojo都必须使用@Goal标注来表明其目标名称,否则maven将无法识别该目标。还有其他很多标注,列举如下:@goal :唯一必须声明的标注,当用户命令行调用或在pom中配置插件是,需使用该目标名称@phase :默认将该目标绑定至default声明周期的某个阶段,这样在配置使用插件目标时,就无需声明phase,如maven-surefire-plugin的test目标带有@phas
2016-07-31 20:40:27
1004
原创 17-maven插件-错误处理及日志
maven插件的mojo在执行execute方法时,会抛出如下两种异常:MojoExecutionException:显示为BUILD ERROR的错误信息,表示mojo在运行时发现了未预期的错误,如io异常MojoFailureException:显示为BUILD FAILURE的错误信息,表示mojo在运行时发生了预期的错误,如maven-surefire-plugin发现失败的测试用
2016-07-31 19:39:56
1495
原创 统计目录中的文件
递归=统计指定目录中的指定格式的文件,将结果保存到List集合中。private void collectFiles(List collected, File file, String[] includes) { if(file.isFile()){ for (String include : includes) { if (file.g
2016-07-31 19:13:22
245
原创 13-版本管理
一、定义版本管理:项目整体版本的演变过程管理,如从1.0-SANPSHOT到1.0,再到1.1-SNAPSHOT。版本控制:借助版本控制工具追踪代码的每一个变更。版本管理就是在快照版本(不稳定,不断变化,有多个不唯一)和发布版本(稳定版本,不会发生变化,唯一定位只有一个)之间不断的切换。发布版本要求:所有自动化测试应当全部通过;项目没有配置任何快照版本的依赖;项目没有配置任何快照版
2016-07-31 16:56:55
296
转载 swt中的多线程机制
文章出处:DIY部落(http://www.diybl.com/course/3_program/java/javajs/20071211/91567.html) 今天比较郁闷在写一个swt的线程程序时搞了4个多小时,晕啊! SWT中的多线程机制和awt/swing中些不同,这个大家应该都知道,不过还是要说下,Display对象中负责调用其他线程的方法以下3种: ●
2016-03-23 20:42:03
678
转载 java中新起一个线程
1.继承Threadpublic class java_thread extends Thread{public static void main(String args[]){(new java_thread()).run();System.out.println("main thread run ");}public synchronized void run()
2016-03-23 20:41:09
982
原创 在AWT中使用swt时,出现MessageException类型无法加载的问题
1、在AWT中使用swt时,出现MessageException类型无法加载的问题,但是相应jar包确实存在相应的jar包及类原因为:jar包中多了dll文件,删除之后即可正常运行
2016-03-23 20:40:11
314
原创 mongodb的备份与还原
mongodump -h dbhost -d dbname -o dbdirectory-h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017-d:需要备份的数据库实例,例如:test-o:备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个
2016-03-21 20:23:00
219
原创 采用认证方式连接mongodb
package com.hikvision.ivms.maintain.ui;import java.net.UnknownHostException;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.DBCursor;import com.mongodb.DBObject;im
2016-03-21 20:22:30
418
原创 mogondb安装常识
将下载的文件解压到任意目录。我这里是D:\NoSQL\mongodb-win32-x86_64-2.4.3。该目录下bin文件夹。 打开命令提示(cmd.exe)。进入到MongoDB解压的目录的bin目录下,即D:\NoSQL\mongodb-win32-x86_64-2.4.3\bin;然后执行mongod.exe(或者mongod)经行安装。 控制台输出有错误"ERROR: db
2016-03-21 20:19:43
859
原创 mongodb的基本数据类型及基本概念
基本数据类型 MongoDB的文件存储格式为BSON,同JSON一样支持往其它文档对象和数组中再插入文档对象和数组,同时扩展了JSON的数据类型.与数据库打交道的那些应用。例如,JSON没有日期类型,这会使得处理本来简单的日期问题变得非常繁琐。只有一种数字类型,没法区分浮点数和整数,更不能区分32位和64位数字。也没有办法表示其他常用类型,如正则表达式或函数。 下面是MongoDB的支
2016-03-21 20:16:14
705
原创 mogonDb初识
简介:MongoDB READMECOMPONENTS bin/mongod - The database process. bin/mongos - Sharding controller. bin/mongo - The database shell (uses interactive javascript).UTILITIES bin/mongodump
2016-03-21 20:12:28
1066
原创 解析包含中文的xml出现编码错误Invalid byte 1 of 1-byte UTF-8 sequence
原因为:以非utf-8的编码格式执行保存操作1、最简单就是把改成:对于字符串直接替换;对于文件,先读取,替换,最后解析写回2、或者把xml打开另存的时候把字符集改为UTF-8后保存3、在代码解析的时候先把xml重新写一遍 SAXReader reader = new SAXReader(); org.dom4j.Document document = reader.rea
2016-03-21 19:20:53
587
原创 eclipse执行远程调试代码
前提:修改tomcat启动方式,以调试方式启动,监听一个端口:修改tomcat的catalina.bat文件,增加如下内容SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8999 1.右键工程名,
2016-03-21 19:09:14
394
转载 java类加载机制
原文: http://longdick.iteye.com/blog/442213/*** 转载请注明作者longdick http://longdick.iteye.com**/ java应用环境中不同的class分别由不同的ClassLoader负责加载。一个jvm中默认的classloader有Bootstrap Class
2016-03-01 20:08:14
294
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人