自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

转载 深入理解反射

一、类的加载、连接和初始化这是jvm那块的知识,复习一下,这其实是和反射有关系的。① 类加载指的是将类的class文件读入内存,并为之创建一个java.lang.Class对象(类是种定义,但在java里,万物都是对象,即类这种定义也是对象的一种),也就是说,当程序中使用任何类时,系统都会为之建立一个java.lang.Class对象。系统中所有的class类实际上也是实...

2019-02-20 12:09:00 137

转载 一个完整的分表插件流程

分表查询的思路很简单,就是在sql的运行过程中的某一阶段,拦截下sql,将它“自动”路由到分表中的任意一个一、Mybatis Interceptor接口使用  按照思路所说,自然要想办法把运行到某一阶段的sql拦截下来并做更改,那么就需要Interceptor。  Interceptor可以拦截的方法,官网描述如下:  MyBatis 允许你在已映射语句执行过程中的某一点...

2018-08-23 20:41:00 118

转载 JVM学习4--类装载、生命周期

一、类的生命周期  首先要明确,类的生命周期是有五个阶段,而我们平时所说的类加载或者类装载,是指前三个阶段,即:加载、连接、初始化。二、类装载概述  在这块,大体上讲一下类装载的概念,然后有几个demo,产生的现象我们在细说加载、连接、初始化三个阶段时解释。  类装载的条件:Class只有在被使用的时候才会被装载,Java虚拟机不会无条件地装载Class。Ja...

2018-05-05 10:51:00 145

转载 JVM学习3--GC参数及收集器

(本文所提到的算法请见:http://www.cnblogs.com/NoYone/p/8971239.html)一、串行收集器  -XX:+UseSerialGC   从第二张图的时间可以看出来,复制算法的效率要比标记压缩算法高的多。二、并行收集器  -XX: +UseParNewGC (新生代并行,老年代串行)  -XX: +UseParallelGC (...

2018-04-29 20:06:00 81

转载 JVM学习2--GC算法,Stop-The-World现象

一、GC算法  ①引用计数法:老牌垃圾回收算法,通过引用计数来回收垃圾。(Java不用)  问题之一:很难处理循环引用:当根对象消失,实际上其他三个对象都应该被回收,但是因为环的出现,这三个对象都不会被清除。  ②标记清除算法   标记清除算法是现代垃圾回收算法的思想基础。分为两个阶段:标记阶段和清除阶段。一种可行的实现是,在标记阶段,首先通过根节点,标...

2018-04-29 16:22:00 546

转载 JVM学习1--数字存储,内存模型,指令重排

一、数字在计算机中的存储  整数:以补码形式存储。    补码:正数的补码是自身,负数的补码是取反码加1(取反码时符号位还是1)  浮点型:以float类型表示      注意一下,这八位指数实际上是(127+次数)的结果,因为要考虑到负数指数的情况,例如如下118.5在计算机中的存储:        而因为科学计数法第一位总是1开头,可以将小数点前面...

2018-04-28 22:23:00 100

转载 FutureTask源码解析

两种构造方式:1. public FutureTask(Callable<V> callable) { if (callable == null) throw new NullPointerException(); this.callable = callable; this.state ...

2018-04-17 12:16:00 101

转载 Future模式理解及FutureTask应用场景

一、 Future模式理解先说一下为什么要用future模式:两个任务没有必然的前后关系,如果在一个线程中串行执行,就有些浪费时间,不如让两个线程去并行执行这两个任务,执行完了到主线程去汇报就可以了。(让任务后台运行,不阻塞线程)则使用Future模式耗费的时间为: max(TimeofTask1,TimeofTask2)。串行的话则是TimeofTask1+TimeofTask...

2018-04-16 19:30:00 543

转载 Spring AOP的基石--Java动态代理

一、代理模式简介以及静态代理动态代理区别1. 关系图静态代理:可以看出有一接口Sourceable,两个实现类Source,Proxy,Client调用的Proxy。理解一下就是Client通过Proxy来调用这个method,而不是直接通过Source来调用。这就像我们的电脑开代理的时候,通过代理上网,而不是直连网络。从这张类图中也可以看出实现代理模式的两个...

2018-04-07 17:09:00 109

转载 Spring基础总结一(生命周期,Aware接口,Resources)

一、Spring生命周期* 容器级别生命周期接口方法* ①.实例化BeanFactoryPostProcessor实现类  ::若实现该接口,在Spring容器加载bean的定义文件之后,实例化bean之前,可以修改bean的定义属性。* ②.执行BeanFactoryPostProcessor的postProcessBeanFactory方法* ③.实例化BeanPostProce...

2018-04-06 21:11:00 160

转载 集群中的session共享问题解决方案

一.大致说一下nginx的负载均衡策略1.轮询(默认):每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某台服务器宕机,则自动剔除故障机器,使用户访问不受影响。2.weight:指定轮询权重,weight值越大,分配到的几率就越高,主要用于后端每台服务器性能不均衡的情况。3.ip_hash:每个请求按访问IP的哈希结果分配,这样每个访客固定访问一个后端...

2018-03-19 20:07:00 172

转载 Java并发之原子性,有序性,可见性,以及Happen-Before原则

原子性原子性是指一个操作是不可中断的。即使是在多个线程一起执行的时候,操作一旦开始,也不会被其他线程干扰。即原子操作是一个做小操作。例如 i++,其实经历了读,算,赋值绝对算不上是一个原子操作。一个i = 10这样的赋值操作可以称为原子操作。java.util.comcurrent.atomic包里都是关于原子操作的类,有时间会另写一篇博客。有序性提到有序那必然就有乱...

2018-03-10 20:40:00 184

转载 Java NIO技术概述

NIO(no-blocking I/O,也有人叫它new I/O),是一种非阻塞型I/O,是I/O多路复用的基础。NIO对于高并发长连接处理器,或者大文件在网络中的传输,具有很大的意义。那么NIO对BIO的优势是什么呢?1.高并发,大量长连接情形下。先说BIO的解决方案,即“一个连接占用一个线程”。那么可想而知,对于连接较多的服务器,会因为线程的创建和切换而浪费非常多的...

2018-03-02 16:09:00 82

转载 Java反射机制总结

首先咱们要知道什么是类对象:类对象就是记录某个类本身的构造方法、属性、方法的对象。1.获取类对象的三种方式Class.forName('完整类名')类名.classnew类名().getClass()示例:用反射来创建一个新的对象。package reflection;import java.lang.reflect.Constructor;import ...

2018-02-01 13:22:00 60

转载 java线程以及定时任务

线程的概念在此不再赘述。下面介绍三种启动线程的方式。1.继承Threadpublic class ThreadTest extends Thread { @Override public void run() { int i = 0; while (i < 10){ i++;...

2018-01-21 22:08:00 164

转载 java流概述以及文件读写示例

1. 先分清楚是字节流还是字符流。字节流:InputStream OutputStream字符流:Reader Writer字符流与字节流的区别是读取的单位长度不同,字节流读8字节,字符流读16字节,所以有中文时,就得用字符流。2. 在字节/字符流基础上,又分为节点流和处理流节点流:直接和数据源相连。例如:FileInputStreamFileOut...

2018-01-18 20:09:00 71

转载 CSS常用内容总结(二)

接常用总结一1.displaydisplay:none 此标签不显示display:block 将行内标签当做块级标签display:inline 将块级标签当做行内标签display: inline-block; 同时具有inline和block的特点,具有inline的特点:默认自己有多少还是占多少;                        具有...

2018-01-17 19:43:00 37

转载 CSS常用内容总结(一)

1.选择器,即设置的样式可以应用到HTML的什么位置。①标签选择器例 div{ background-color:red }<div> </div>,则为div设置样式。② class选择器.classelect{ background-color:red }<div class='classelect'> </div...

2018-01-17 19:06:00 80

转载 struts实现文件上传和下载。

先来实现上传。写上传不管语言,都要先注意前端的form那儿有个细节。<form name="form1" method="POST" enctype="multipart/form-data">即这个enctype,编码方式要加上multipart/form-data,这说明了以二进制形式传输数据(即不经过编码处理)。要是考虑安全性,还要对MIME(M...

2018-01-13 13:17:00 61

转载 python实现XSS过滤(BeautifulSoup和白名单处理)

下面我做的莫名其妙的代码格式化是因为这个 --。--首先大致说一下XSS,就是在HTML里插入恶意的javascript代码,使得在该HTML加载时执行恶意代码,达到攻击的目的。可能存在的地方呢,就是只要是用户能输入的地方那么就可能产生XSS,包括像博客园这种能看到输入形成的HTML的编辑器。下面是博客园的过滤手段。(注意最后一行) 当然不止这些写法,比如&l...

2018-01-12 21:12:00 1164

转载 python实现单例模式

有这么一种场景,我们把数据封装到类体或类的某个方法里,然而我们new出这个类只是为了拿到这部分数据,那么当多次这样调用的时候,每次都来拿数据并放到内存中大大浪费了内存。那我们就可以想,我们拿到一次数据以后,把它放到内存里,下次要用同样的时候做个判断,如果内存里有,那么就不用再取了。这个时候就要设计一种“单实例模式”。方法1:class Foo(object): ...

2018-01-12 20:06:00 77

转载 jsonp实现跨域请求

直接用原生ajax请求另一个域的资源,会被同源策略限制,而用<script src="url"></script>这种方式“引入url”,实际上引入了一个js代码,就不会被同源策略限制,可以请求到。用这个有一个前提就是对方网站后台的返回确实设置了js代码块或者某个callback函数,所以这种请求方式是有特定应用场景的,并不是跨域都能用这种。1. java...

2018-01-11 22:27:00 65

转载 linux设置静态IP和DNS以及改网卡名

ubuntuUbuntu如果是desktop版,由于desktop版安装了NetworkManager,修改完interfaces文档中的内容,不会生效,需要先修改/etc/NetworkManager/NetworkManager.conf文档中的managed参数,将它设置为true,然后再修改/etc/network/interfaces文件,设置静态IP。#The pri...

2018-01-08 21:48:00 173

转载 centos设置程序开机自启或禁止加载

1. 可以直接把需要启动的脚本写到/etc/rc.d/rc.local文件里,例如vim /etc/rc.d/rc.local/usr/local/apache/bin/apachectl start2. Chkconfig用法(旧版)(1)chkconfig --level [0123456] [service name] [on|off] chkconfig...

2018-01-08 21:45:00 481

转载 Ubuntu设置程序开机自启或者开机禁止加载

先说说ubuntu,它有运行级别这个概念0:停机1:单用户形式,只root进行维护2:多用户,不能使用net file system3:完全多用户5:图形化6:重启例子:按指定顺序、在指定运行级别中启动或关闭update-rc.d <basename> start|stop <order> <runlevels>实例:update-rc.d apach...

2018-01-08 21:42:00 376

转载 screen使用

远程连接Linux系统后,需要在后台运行一下程序,nohup呢感觉不大直观,打心里不信任它。。那么screen就是很棒的工具,除了“后台”运行程序,还能做到分屏等等。下面介绍一下screen这款工具的使用(常用操作)。screen -ls(-list)查看当前有的screen session,每新建一个screen即为新创建一个screen session。比方说在一个scr...

2018-01-08 21:33:00 84

转载 三种ajax上传文件方法

1. XMLHttpRequest(原生ajax)<input class="file" type="file" id="fafafa" name="fileupload" /><input type="button" value="提交XHR" onclick="xhrSubmit();"/><script type="text/javas...

2018-01-08 21:15:00 108

转载 Java JSON数据处理

比方说要处理这么一段数据。{"data":[{"salt":"","plaintext":"xiaoxu","time":"1507462954","hash":"0b4fd093bd6a97154001542e682a9289"}]}在{}里面叫做JSONObject,而中括号里面的是JSONArray。一段JSON数据,当然了,把它当做一个字符串各种split当然可以了。...

2018-01-08 09:15:00 73

转载 JAVA读取和写入properties文件

1.读取 Properties prop = new Properties();     try {       //这个getResourceAsStream方法就是把文件转为inputStream的方式 prop.load(HtpUtil.class.getResourceAsStream("htp.properties")); ...

2018-01-07 19:11:00 139

转载 JAVA处理Http请求(GET,POST)

本文用的是java.net里面的方法,HttpClient也可以。java.net.HttpURLConnectionjava.net.URL1. GETpublic static String get(String strUrl, String cookie) throws MalformedURLException,IOException { S...

2018-01-07 18:59:00 341

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除