![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
j2ee
文章平均质量分 96
githubshareing
给自己的人生留下点脚印
展开
-
快速开发利器
https://github.com/zhangdaiscott/jeecg-boot原创 2020-11-25 22:37:56 · 106 阅读 · 0 评论 -
阿里内部的那个牛逼带闪电的Java诊断工具终于开源了
原文地址在阿里巴巴内部,有很多自研工具供开发者使用,其中有一款工具,是几乎每个Java开发都使用过的工具,那就是Arthas,这是一款Java诊断工具,是一款牛逼带闪电的工具。该工具已于2018年9月份开源。GitHub地址:https://github.com/alibaba/arthas用户文档:https://alibaba.github.io/arthas/在日常开发中,你是否遇到...转载 2018-12-03 09:45:03 · 3623 阅读 · 0 评论 -
java.lang--AbstractStringBuilder
void expandCapacity(int minimumCapacity) { //这里*2+2 容易超出int类型的长度,所以才会判断newCapacity这个是否小于0 int newCapacity = value.length * 2 + 2; if (newCapacity - minimumCapacity < 0) newCapacity = minimumC...原创 2018-11-09 19:43:09 · 151 阅读 · 0 评论 -
深入分析HashMap
转载 https://blog.csdn.net/lianhuazy167/article/details/66967698一、传统 HashMap的缺点(1)JDK 1.8 以前 HashMap 的实现是 数组+链表,即使哈希函数取得再好,也很难达到元素百分百均匀分布。(2)当 HashMap 中有大量的元素都存放到同一个桶中时,这个桶下有一条长长的链表,这个时候 HashMap 就相当于一个单...转载 2018-05-29 11:50:45 · 190 阅读 · 0 评论 -
Java 并发编程--脏读
例子: public class DirtyRead { private String username="zhangdeheng"; private String password="123456"; public synchronized void setValue(String username,String password){ this.usern...原创 2018-05-15 18:15:48 · 374 阅读 · 0 评论 -
Java开发者必备十大学习网站
作为开发者来说 , 必备的除了对编码的热情还要有自己的一套技巧 , 另外不可缺少的就是平时学习的网站。以下本人收集的 Java 开发者必备的网站 , 这些网站可以提供信息 , 以及一些很棒的讲座 , 还能解答一般问题、面试问题等 , 或许你会认为有些网站适合任何水平的开发者 , 但是我认为: 对于 Java 开发大牛来说 , 网站的好坏取决于如何使用它们。Stack overflowStack o...转载 2018-04-20 18:50:49 · 343 阅读 · 0 评论 -
深入理解HashMap原理
转载地址:http://www.iteye.com/topic/539465Hashmap是一种非常常用的、应用广泛的数据类型,最近研究到相关的内容,就正好复习一下。网上关于hashmap的文章很多,但到底是自己学习的总结,就发出来跟大家一起分享,一起讨论。 1、hashmap的数据结构 要知道hashmap是什么,首先要搞清楚它的数据结构,在java编程语言中,最基本的结构就是两种,一个是数组,...转载 2018-04-20 09:06:53 · 225 阅读 · 0 评论 -
java安全--用户认证
java 认证和授权(jaas Java Authentication and Authorization Service) Java的认证部分主要负责确定程序使用者的身份。而授权则是将各个用户映射到相应的权限。例如,我们登陆的时候会进行用户名密码的校验这个过程可以理解为认证的过程。当校验通过之后,将会根据事先配置好的数据(数据库中存储的或者配置文件中配置的等)进行权限的分配,这个过程可以...原创 2018-04-06 12:34:48 · 1899 阅读 · 0 评论 -
synchronized
package org.shareing.mysynchronized;import java.sql.SQLOutput;public class MySynchronized { public static void main(String[] args) { MySynchronized mySynchronized = new MySynchronized(...原创 2019-05-04 08:59:03 · 309 阅读 · 0 评论 -
Lock
lock 的使用方法,和synchronized的对比原创 2019-05-04 10:34:21 · 164 阅读 · 0 评论 -
锁的相关概念介绍
可重入锁如果锁具备可重入性,则称作为可重入锁。像synchronized和ReentrantLock都是可重入锁,可重入性在我看来实际上表明了锁的分配机制:基于线程的分配,而不是基于方法调用的分配。举个简单的例子,当一个线程执行到某个synchronized方法时,比如说method1,而在method1中会调用另外一个synchronized方法method2,此时线程不必重新去申请锁,而是...原创 2019-05-04 11:20:49 · 670 阅读 · 0 评论 -
线程池、Callable和 Runnable 区别
线程池创建的方法Single Thread Executor:只有一个线程的线程池,因此所有提交的任务顺序执行代码, Executors.newSingleThreadExecutorCached Thread Pool:线程池里有很多线程需要同时执行,老得线程将被新的任务出发重新执行,如果线程超过60秒内没有执行,那么将被终止并从池中删除Executors.newCachedThre...原创 2019-05-04 15:59:36 · 1164 阅读 · 0 评论 -
BlockingQueue
插入方法boolean add(E e);把E加到BlockingQueue里,如果可以容纳则返回true,否则抛出异常。boolean offer(E e);把E加到BlockingQueue里,如果可以容纳则返回true,否则返回false。void put(E e) throws InterruptedException;把E加到BlockingQueue里,如果没有空间,则调用此方...原创 2019-05-04 18:21:30 · 150 阅读 · 0 评论 -
java 去除敏感词
DFA 方法 private CSLogger logger = Loggers.getLogger(SensitiveWordDAFService.class); private static Map sensitiveWordMap=new HashMap(); public static int minMatchTYpe = 1; //最小匹配规则 ...原创 2019-05-09 19:57:02 · 579 阅读 · 0 评论 -
Spring Boot 使用lettuce 集成多Redis
文章目录application.ymlRedisConfig.java调用application.ymlspring: redis: host: r-**.redis.rds.aliyuncs.com port: 6379 password: ** database: 0 timeout: 2000 lettuce: pool:...原创 2019-05-20 19:02:49 · 1536 阅读 · 2 评论 -
面试官最爱的volatile关键字
在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。下面我们以一次假想的面试过程,来深入了解下volitile关键字吧!面试官: Java并发这块了解的怎么样?说说你对volati...转载 2019-07-12 14:55:36 · 133 阅读 · 0 评论 -
spring boot 通过jpa连接 mysql
https://spring.io/guides/gs/accessing-data-mysql/原创 2019-08-12 19:47:22 · 135 阅读 · 0 评论 -
java安全--加密
【0】README1)本文文字描述转自 core java volume 2,旨在学习 java安全——加密 的基础知识;2)java 安全性的第二个重要方面是加密。3)认证对于代码签名已足够了-没必要将代码隐藏起来。但是,当applet或者应用程序传输机密信息时,比如信用卡号码和其他个人数据等,就有必要进行加密了。(干货——加密的应用背景)【1】对称密码(加密和解密都使用相同的密钥)(干货——对...转载 2018-04-08 14:40:29 · 1022 阅读 · 0 评论 -
java安全--数字签名+代码签名
【0】README1)本文文字描述转自 core java volume 2, 旨在学习 java安全——数字签名 的基础知识;2)本文实践内容以及截图笔记均为原创;3)如果要给予applet更多的信赖,你必须知道下面两件事:3.1) applet来自哪里?3.2) 在传输过程中代码是否被破坏?----------------------------------------------------...转载 2018-04-08 14:32:11 · 3034 阅读 · 0 评论 -
java--知识图谱
原创 2018-03-05 22:41:21 · 417 阅读 · 0 评论 -
搭建springMvc+spring+hibernate+maven开发环境003
记录下解决的错误1.Eclipse Maven 编译错误 Dynamic Web Module 3.0 requires Java 1.6 or newer 解决方案http://blog.csdn.net/defonds/article/details/479742692.The JRE could not be found. Edit the s原创 2016-12-03 09:50:59 · 478 阅读 · 0 评论 -
搭建springMvc+spring+hibernate+maven开发环境002
书接上文我理解的框架整合就是将相应的依赖包引入工程,写好配置文件。原创 2016-11-30 21:55:34 · 383 阅读 · 0 评论 -
搭建springMvc+spring+hibernate+maven开发环境001
开发环境:eclipse jdk6 maven mysql原创 2016-11-27 21:46:30 · 633 阅读 · 0 评论 -
hibernate注解的CascadeType属性
cascade表示级联操作 CascadeType.MERGE级联更新:若items属性修改了那么order对象保存时同时修改items里的对象。对应EntityManager的merge方法 CascadeType.PERSIST级联刷新:获取order对象里也同时也重新获取最新的items时的对象。对应EntityManager的refresh(ob转载 2017-05-19 10:45:21 · 210 阅读 · 0 评论 -
Java工程师成神之路
转自:http://www.hollischuang.com/archives/489一、基础篇1.1 JVM1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收http://www.jcp.org/en/jsr/detail?id=133http://ifeve.com/jmm-faq/1.1.2. 了解JVM各种参数及调转载 2017-06-15 22:45:27 · 173 阅读 · 0 评论 -
Java zip/gzip文件压缩和解压缩
出处:点击打开链接Java IO为了减少传输时的数据量 在Java中提供了专门的压缩流将文件或者文件夹压缩成zip,gzip,jar等文件形式。压缩流实现Java支持的三种压缩格式:zip、jar、gzip。 1.zip是一种较为常见的压缩格式,Java提供了java.util.zip包,常用类:ZipInputStreamZipOutput转载 2017-06-15 22:51:37 · 328 阅读 · 0 评论 -
Java 多文件夹合并
出处:点击打开链接[java] view plain copypackage com.xx.test.copy; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; imp转载 2017-06-15 22:53:46 · 1725 阅读 · 0 评论 -
Log4j 基础和使用方法
log4j基本使用翻译 2017-05-21 22:07:07 · 212 阅读 · 0 评论 -
简述Spring容器与SpringMVC的容器的联系与区别
点击打开链接转载 2017-07-11 08:36:19 · 157 阅读 · 0 评论 -
Java8-lambda表达式
在 Eclipse IDE 中试用 Lambda 表达式作者:Deepak Vohra学习如何充分利用 lambda 和虚拟扩展方法。2013 年 8 月发布Lambda 表达式也称为闭包,是匿名类的简短形式。Lambda 表达式简化了单一抽象方法声明接口的使用,因此 lambda 表达式也称为功能接口。在 Java SE 7 中,单一方法接口可使用下列选项之一实现。创建接转载 2017-06-10 10:43:21 · 3315 阅读 · 0 评论 -
spring mvc 工作流程
原创 2017-07-18 08:02:54 · 172 阅读 · 0 评论 -
 |"|&|<|>等html字符转义
提示:请直接按CTRL+F搜索您要查找的转义字符。常用表:No.文字表記10進表記16進表記文字 Comment001"""""" quotation mark = APL quote00转载 2017-10-25 21:36:18 · 2214 阅读 · 0 评论 -
spring+shiro + cxf + wss4j(webservice)
1. 服务端 pom.xml 文件cxf必备的 -->dependency>groupId>org.apache.cxfgroupId>artifactId>cxf-rt-transports-httpartifactId>version>3.1.12version>dependency><!--不加这个包会报错Unable to locate sprin原创 2017-11-14 15:43:58 · 1023 阅读 · 0 评论 -
web应用添加socket接口
1.设计到的类2.MyClientRefreshTaskimport java.util.ArrayList;import java.util.List;public class MyClientRefreshTask extends java.util.TimerTask { @Override public void run() { refresh原创 2017-11-13 21:10:05 · 994 阅读 · 0 评论 -
Java安全--类加载器
简介这个专题讲述的是Java安全方面的知识,主要包括:类加载器、字节码校验、安全管理与访问、用户认证、数字签名、代码签名、加密。Java技术提供了相应的安全机制:设计特性:对数组的边界进行检查、类型转换检查、无指针算法等。访问控制:文件访问、网络访问。代码签名:通过加密算法跟踪代码的创建修改等。类加载器类加载器的层次结构引导类加载器 引导类加载器(启动类加载器)主要加载系统类,通常是从jar...原创 2018-03-11 12:03:21 · 617 阅读 · 0 评论 -
java安全--字节码校验
1.先来了解下字节码校验在类加载流程中的位置 当类加载器将新加载的Java平台类的字节码传递到虚拟机时,这些字节码首先要接受校验器的校验。校验器负责检查那些无法执行的明显有破坏性的操作。除了系统类之外,其他类都要被校验。2.字节码校验器主要做的事情变量要在使用之前进行初始化方法调用与对象引用类型之前要匹配访问私有数据和方法的规则没有被违背对本地变量的访问落在运行时堆栈内运行时堆栈没有...原创 2018-03-17 12:32:58 · 6463 阅读 · 2 评论 -
Java安全--安全管理器与访问权限(一)
1.定义当类被加载到虚拟机中,校验器检查通过,Java平台的第二种安全机制就会启动,这个机制就是安全管理器,它是控制具体操作是否允许执行的操作。它的安全策略建立了代码来源和访问权限集之间的映射关系。jdk8中的权限类(直接或者间接实现Permission抽象类)下图显示了jdk8中Permission的继承关系,图片内容较多,放大观看。2.Java平台安全性 java安全管理器这里主...原创 2018-03-21 21:59:32 · 5912 阅读 · 0 评论 -
Web项目中使用Log4j实例
在J2EE应用使用Log4j,必须先在启动服务时加载Log4j的配置文件进行初始化,可以在web.xml中进行。1、web应用的log4j使用基本上都采用:新建一个servlet,这个servlet在init函数中为log4j执行配置。一般就是读入配置文件。所以需要在web.xml中为这个servlet配置,同时设定load-on-startup为1。2、这个servlet配置原创 2017-05-21 22:48:34 · 515 阅读 · 0 评论