Java
文章平均质量分 50
Mr_温少
[复杂很愚蠢,简单很智慧]
展开
-
Apache存在Log4j远程代码执行漏洞,严重危险级别
Apache存在Log4j远程代码执行漏洞,严重危险级别!文章目录Apache存在Log4j远程代码执行漏洞,严重危险级别!漏洞简述2021-12-09,近期一个 Apache Log4j 远程代码执行漏洞细节被公开,攻击者利用漏洞可以远程执行代码。如果你的系统日志使用log4j实现,且版本大于 2.0, 日志打印内容中包含关键字 ${},其包含的内容会当做变量来进行替换,导致攻击者可以任意执行命令。(问题出在:1og4j-core.jar)影响范围Apache Log4j2 是一款优秀的原创 2021-12-20 22:23:45 · 551 阅读 · 0 评论 -
基本类型、包装类型的数据绑定以及坑
基本类型、包装类型的数据绑定以及坑例如,age可以是基本类型:int、也可以是包装类型:Integer情景一:age为int类型时错误:参数不是int类型时,springmvc报错400错误:不传参数,springmvc报错500情景二:age为包装类型。例如Integer原创 2017-12-17 23:05:29 · 823 阅读 · 0 评论 -
单点登录系统实现基于SpringBoot
原文地址:https://segmentfault.com/a/1190000012556776通过本章内容你将学到单点登录系统和传统登录系统的区别,单点登录系统设计思路,Spring4 Java配置方式整合HttpClient,整合SolrJ ,HttpClient简易教程。还在等什么?撸起袖子开始干吧!效果图:8081端口是sso系统,其他两个8082和8083端口模拟转载 2017-12-26 19:51:38 · 2475 阅读 · 0 评论 -
高性能网站设计之缓存更新的套路
看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的。试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存,先把老数据读出来后放到缓存中,然后更新操作更新了数据库。于是,在缓存中的数据还是老的数据,导致缓存中的数据是脏的,而且还一直这样脏下去了。我不知道为什么这么多人用的都是这个逻辑,...转载 2018-03-01 11:27:56 · 344 阅读 · 0 评论 -
常量应该封装到常量类,常量接口,还是枚举类中?
常量应该封装到常量类,常量接口,还是枚举类中?前言之前项目中响应前台的接口中会用到一些公共常量。这个时候就比较纠结,常量到底是封装到哪里比较好呢,因为以前写的很多代码不怎么规范,而且有时候常量用到的不算太多太集中,所以就哪里用到哪个类上去声明一个出来,这样虽然很方便,但是统一维护起来,项目做大了,有些时候你要引用一个你记得你明明声明过的常量,却找半天都找不到,而且后期需要对常量中的内容进行一些修改...原创 2018-04-02 01:23:45 · 10901 阅读 · 2 评论 -
JDK1.5-JDK1.8各个新特性总结
总结:JDK1.5-JDK1.8各个新特性原文地址:https://my.oschina.net/zhuqingbo0501/blog/1784693JDK各个版本的新特性 要了解一门语言,最好的方式就是要能从基础的版本进行了解,升级的过程,以及升级的新特性,这样才能循序渐进的学好一门语言。以下介绍一下JDK1.5版本到JDK1.7版本的特性及JDK1.8部分特性。JDK...转载 2018-03-27 10:28:59 · 985 阅读 · 1 评论 -
【并发编程】CPU cache结构和缓存一致性(MESI协议)
一、cache cpu cache已经发展到了三级缓存结构,基本上现在买的个人电脑都是L3结构。1. cache的意义 为什么需要CPU cache?因为CPU的频率太快了,快到主存跟不上,这样在处理器时钟周期内,CPU常常需要等待主存,浪费资源。所以cache的出现,是为了缓解CPU和内存之间速度的不匹配问题(结构:cpu -> cache -> memory)。 ...转载 2018-04-18 15:39:46 · 604 阅读 · 0 评论 -
《大话处理器》Cache一致性协议之MESI
Cache一致性协议之MESI 处理器上有一套完整的协议,来保证Cache一致性。比较经典的Cache一致性协议当属MESI协议,奔腾处理器有使用它,很多其他的处理器都是使用它的变种。单核Cache中每个Cache line有2个标志:dirty和valid标志,它们很好的描述了Cache和Memory(内存)之间的数据关系(数据是否有效,数据是否被修改),而在多核处理器中,多...转载 2018-04-18 15:48:16 · 393 阅读 · 0 评论 -
Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释
遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题a,什么叫序列化和反序列化b,作用。为啥要实现这个 Serializable 接口,也就是为啥要序列化c,serialVersionUID 这个的值到底是在怎么设置的,有什么用。有的是1L,有的是一长串数字,迷惑ing。我刚刚见到这个关键字 Serializable 的时候,就有如上的这么些问题。在处理这个问题之前...转载 2018-06-03 20:16:07 · 242 阅读 · 0 评论 -
JNDI学习总结(一)——JNDI数据源的配置
原文地址:https://www.cnblogs.com/xdp-gacl/p/3951952.html一、数据源的由来 在Java开发中,使用JDBC操作数据库的四个步骤如下: ①加载数据库驱动程序(Class.forName("数据库驱动类");) ②连接数据库(Connection con = DriverManager.getConnection();) ...转载 2018-06-15 15:33:21 · 251 阅读 · 0 评论 -
JNDI学习总结(二)——Tomcat下使用C3P0配置JNDI数据源
JNDI学习总结(二)——Tomcat下使用C3P0配置JNDI数据源一、C3P0下载 C3P0下载地址:http://sourceforge.net/projects/c3p0/files/?source=navbar 下载完成之后得到一个压缩包。二、使用C3P0配置JNDI数据源 Tomcat6.x中配置JNDI数据源时默认使用的是Tomcat6.x自带的DBCP连接池,Tomcat...转载 2018-06-15 16:19:59 · 200 阅读 · 0 评论 -
JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源
JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源 com.alibaba.druid.pool.DruidDataSourceFactory实现了javax.naming.spi.ObjectFactory,可以作为JNDI数据源来配置。一、下载Druid的jar包 下载地址:http://mvnrepository.com/artifact/com.alibaba/d...转载 2018-06-15 16:23:31 · 273 阅读 · 0 评论 -
字符与字节有什么区别
(一)“字节”的定义字节(Byte)是一种计量单位,表示数据量多少,它是计算机信息技术用于计量存储容量的一种计量单位。(二)“字符”的定义字符是指计算机中使用的文字和符号,比如1、2、3、A、B、C、~!·#¥%……—*()——+、等等。(三)“字节”与“字符”它们完全不是一个位面的概念,所以两者之间没有“区别”这个说法。不同编码里,字符和字节的对应关系不同:①ASCII码中,一个英文字母(不分大...转载 2018-06-19 15:42:14 · 2285 阅读 · 0 评论 -
POI 导出Excel实现合并单元格以及列自适应宽度
目录 POI 导出Excel1. 合并单元格2. 自适应列宽度:2.2 强调的是设置自适应列宽:3. 设置列宽3.1 字符串3.2 单元格是公式单元格(单元格存的是公式)4. POI IndexedColors 所有颜色索引 参考推荐:Java HSSFWorkbook 生成 excelPOI 简易帮助文档系列--给Excel设置样式Java...原创 2018-09-21 01:15:06 · 8057 阅读 · 0 评论 -
Java获取某月,某季度的第一天和最后一天
/** * 某一个月第一天和最后一天 * * @param date 指定日期 * @param pattern 日期格式 * @param isNeedHms是否需要时分秒 * @return */public static Map<String, Object> getFirstLastDayByMonth(Date date, String pattern...原创 2018-12-05 23:30:09 · 13765 阅读 · 0 评论 -
关闭HttpClient控制台输出语句
关闭HttpClient控制台输出语句HttpClient相信大家都不陌生,在Java中经常用来在后台进行一些请求访问或者接口调用。当然这里不是介绍HttpClient使用的,关于HttpClient使用方面的文章,大家可以去百度或者Google上找,很多的。重点部分相信大家在使用HttpClient的过程中会发现他在控制台上有很多LOG输出,调试时需要这些信息,但发布原创 2017-10-23 15:38:46 · 10378 阅读 · 3 评论 -
ibatis运行的SQL语句的输出——通过配置log4j
ibatis运行的SQL语句的输出——通过配置log4j如下这些调试信息在生产环境是不需要的,这里讲解一下log4j的配置方式:在log4j.properties文件配置如下内容即可输入SQL语句了# Preparing Statement: SQLlog4j.logger.java.sql.Connection = DEBUG # Executi原创 2017-10-30 15:13:31 · 1465 阅读 · 0 评论 -
Maven使用代理方式联网连接服务器
==============================记录Start===============================Maven使用代理方式联网连接服务器找到你本地Maven库的setting.xm文件,打开里面找到标记,在其中添加你的代理上网方式。如: <!-- proxy | Specification for one proxy原创 2017-06-15 10:18:50 · 4529 阅读 · 2 评论 -
递归读取文件夹下的文件,代码怎么实现
=================================记录Start==================================这个问题就是在考验你递归,让你写个递归方法出来。也只有递归才能这么解决问题。具体实现如下:[java] view plain copy/** * 递归读取文件夹下的 所有原创 2017-06-16 14:27:04 · 1626 阅读 · 0 评论 -
JAVA数字千分位和小数点的现实(处理金额问题)
JAVA数字千分位和小数点的现实(处理金额问题)原创 2017-06-01 15:51:02 · 26252 阅读 · 3 评论 -
如何CentOS6.8上安装Chrome 谷歌浏览器
准备工作:以下命令均需要在root权限下操作,如需在普通用户下操作使用 sudo 或 给予root权限1、wget http://chrome.richardlloyd.org.uk/install_chrome.sh (用wget下载shell文件)2、chmod u+x install_chrome.sh原创 2017-06-05 21:59:53 · 1733 阅读 · 2 评论 -
关于Class.getResource和ClassLoader.getResource的路径问题
关于Class.getResource和ClassLoader.getResource的路径问题===============================记录Start================================Java中取资源时,经常用到Class.getResource和ClassLoader.getResource,这里来看看他们在取资源文件时候的路径原创 2017-06-16 17:37:17 · 247 阅读 · 0 评论 -
Linux和Windows下安装最新版Git+教程
==================================================Git安装(Linux)========Start=================================================【Git安装(Linux)】◆安装系统版本 CentOS 6.8 64位◆Git版本 2.8.0◆安装步骤1、下载(1)-从Gi原创 2017-06-10 01:49:09 · 589 阅读 · 0 评论 -
离线的mybatis-gennerator代码生成工具
=================================记录Start===============================说明:离线的mybatis-gennerator插件,使用Windows自带DOS命令,不借助eclipse或者IDEA等其他工具,即可自动生成mybatis所需要的dao、bean(model)、mapper xml文件,这样我们可以节省一原创 2017-06-12 14:41:50 · 777 阅读 · 0 评论 -
[JSON]2017年最新县及县以上行政区划代码
前面有过两篇相关的博客:中国行政区划代码数据库文件 - 最新县及县以上行政区划代码(截止2012年10月31日)[数据][xml格式] 2012年统计用区划代码和城乡划分代码一个是SQL文件,一个是XML文件,并且城乡的涉及抓取数据,相对麻烦一点。2017年这篇,是JSON格式,完全通过js实现,这个数据可以方便在三级联动中使用。数据来源地址:转载 2017-06-13 01:33:42 · 2397 阅读 · 0 评论 -
Java中(PO,VO,TO,BO,DAO,POJO)的区别
===============================记录Start===========================题外话:最近突然发现自己知识框架太过薄弱,计算机基础不牢固,却偏爱收集,常常将收藏满满的视频资料存进移动硬盘,又置之不理。 好高骛远莫过于想我这般了吧,利用闲时读一些相关书籍,偶尔随手记录,希望可以与大家分享!Java中(PO,VO,TO,BO,D原创 2017-08-08 14:38:22 · 4048 阅读 · 0 评论 -
实例讲解ArrayList用法
本文通过实例讲解Java中如何使用ArrayList类。Java.util.ArrayList类是一个动态数组类型,也就是说,ArrayList对象既有数组的特征,也有链表的特征。可以随时从链表中添加或删除一个元素。ArrayList实现了List接口。大家知道,数组是静态的,数组被初始化之后,数组长度就不能再改变了。ArrayList是可以动态改变大小的。那么,什么时候使用Arr原创 2017-08-17 17:33:41 · 522 阅读 · 0 评论 -
JAVA随机数之多种方法从给定范围内随机N个不重复数
一、JAVA中生成随机数的方式 1、在j2se中使用Math.random()令系统随机选取一个0~1之间的double类型小数,将其乘以一个数,比如25,就能得到一个0~25范围内的随机数,这个在j2me中没有; Java代码 int randomNumber = (int) Math.round(Math.random()*(max原创 2017-08-17 22:06:00 · 554 阅读 · 0 评论 -
HttpClient异常处理手册
HttpClient异常处理手册异常处理 HttpClient的使用者在执行HTPP方法(GET,PUT,DELETE等),可能遇到会两种主要类型的异常:传输异常协议异常并不是所有的异常都会传播给HttpClient的用户。HttpClient内部使用的异常在下文中将会标记为内部使用传输异常协议异常HTTP传输安全自动异常恢复自定义异常处转载 2017-10-18 20:09:52 · 5142 阅读 · 0 评论 -
HttpClient的认证机制,并给出示例代码。
HttpClient的认证机制,并给出示例代码。HttpClient三种不同的认证方案: Basic, Digest and NTLM. 这些方案可用于服务器或代理对客户端的认证,简称服务器认证或代理认证。1.服务器认证(Server Authentication)HttpClient处理服务器认证几乎是透明的,仅需要开发人员提供登录信息(login credent转载 2017-10-18 20:15:11 · 1873 阅读 · 0 评论 -
Maven全局配置文件settings.xml详解
===================================记录Start==================================settings.xml有什么用?如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径。settings.xml文件是干什么的,为什么要配置它呢?从settings原创 2017-06-16 10:50:14 · 432 阅读 · 0 评论