- 博客(17)
- 收藏
- 关注
原创 线程的属性
线程中定义了一些属性,其中有以下四个给的编号(ID):long,标识不同的线程。名称(name):有默认值,但可以设置,主要是给人看的,用于调试和定位问题是否是守护线程(Daemon):是否为守护线程,这个属性的默认值和相应线程的父线程的该属性值相同,setDaemon()只能在start前调用。守护线程通常用于执行一些重要性不是很高的任务,相比于非守护线程(用户线程),他不会影响到虚拟机的停止,...
2018-06-08 16:02:58 447
原创 java中两种线程的创建方式区别
要说Java中的线程使用,有两种方式,一个是继承Thread类,直接调用子类的run()方法,另一个是产生一个实现Runnable接口的类,做为Thread类的直接创建入参,启动均调用start方法,前者会直接调用子类的run()实现逻辑,后者则是通过Thread中的run方法去调用Runnable中run()的实现。...
2018-06-08 11:45:02 1027 2
原创 linux命令之history
history命令主要用来记录,显示命令的执行历史,并可以借此便捷快速操作。history n 显示最近n条执行的命令history -c 消除所有history内容记录history -w 将目前的history记忆内容写入histfileshistory -r 将文件中的内容读出到history记忆中。$HISTSIZE 文件记录命令容量注意文件中只保留最新的命令记录,如果打开了多个bas...
2018-06-07 09:47:40 485
原创 git 系列之深入学习git
我发现学习使用一门技术来做事是重要的,但更重要的是获得这个技术的思想。如果说Windows和Mac OS 比,后者给我从体验上带来的思维转变一样,git 也同样将我从svn 中拉出来。那现在来说git,因为内容其实不少,我也是在学习中,我想陆续一点一点的总结出来。1.mac中配置git,连接使用GitHub...
2018-06-02 21:52:49 338 1
原创 git初探使用及配置
一般Mac os中自带的git ,这点可以用1.git --version 命令检验这说明是有的,没有可以下载安装。2.配置git信息git config --global user.name "sq"git config --global user.email "your email"git config -list 查看配置信息2.初始化一个git仓库,git init3查看状态git sta...
2018-06-02 21:51:38 213
原创 MAC 使用技巧总结
最近换的mac电脑,使用起来还是爽的,但不知道一些技巧,难发挥他强大的优势,我就来做个总结咯。1.spotlight -- Mac 上的查询利器能做什么?查程序,文件,app,按类型查文档,图片,视频快捷键:command+space可以按照关键字搜索文件找到文件对应的文件夹。 找到文件后 command + 回车进行数学计算,单位转换按文件类型或文件格式进行查找kind:image (music...
2018-05-31 21:04:35 1851
原创 mybatis防止sql注入的原理
1.什么是sql注入?最早接触sql注入是在大学的时候,其实我理解,就是sql 对传入参数的拼接,会引发安全问题,举个例子select name from student where id = (); 这里括号里的参数我如果传 “3;drop table student;”,就发生注入了。2.原理,怎么防止?发生sql注入的原因是,不安全的参数拼接,编译后,sql执行,如上例子,会出现问题。...
2018-05-23 21:31:27 2053
原创 JMS,ActiveMQ 之消息中间件
其实最初接触到消息的机制是在项目中,是个消息队列的概念,比如我给用户发券的时候也要给用户发送短信给手机推送消息,同步发送的话量大,耗时,不现实,而且我半夜发券,也不能半夜给用户发消息,所以我把信息先推到消息队列中(当时用的阿里云的),合适的时间再开始做这件事情。所以消息队列给我的印象是存储,异步,通信。下面我们来正式说。一:什么是消息队列?消息中间件?消息队列:用于两边传送信息的队列。消息中间件是...
2018-05-22 21:24:55 132
原创 我眼中的线程封闭
什么是线程封闭?线程不安全是因为多线程在访问共享的可变数据时,会发生数据的不一致,结果不正确,那怎么解决这个问题呢,一个是使用同步,另外,如果只有一个线程访问这个数据,就不会出现问题,所以线程封闭的解决思想就是以某种方式实现单线程访问共享数据。线程封闭有哪些实现方式?1.使用单线程。曲折的可以这么说。2.多线程环境下,如果能保证通过某种方式访问共享变量的时候是单线程的,也可以实现。3.Ad-hoc...
2018-05-20 16:15:36 340
原创 Java对象是如恨被创建的
一: A a = new A(); 当执行上面这样一个创建对象的语句时,虚拟机都会做什么呢?1.检查参数A是否能在常量池中定位到一个类的符号引用。2.检查这个符合引用代表的类是否已被加载、解析和初始化过。3.否则,先执行相应的类加载过程。4虚拟机为新生对象分配内存,那么就有个问题,在Java堆中,怎么划分内存呢? a:指针碰撞,假设Java堆中内存是绝对规整...
2018-05-09 20:04:07 109
原创 面试总结
1.消息队列是如何保证可靠性的2.A和B两个List相比,找出B在A中相同的,不同的,删除了的3.什么序列化,什么是反序列化,Serializable的作用,如何序列化,一个基本类型的数据不能被序列化,那他应该被什么修饰4,List如何扩容,HashMap如何扩容5.登陆模块的整体架构6.Spring中bean是如何被实例化的,bean容器是?...
2018-05-07 18:02:55 119
原创 java内存模型
带着问题来学习Java内存模型1.什么是Java内存模型2.哪些部分是编译时就初始化的。我们常说的堆、栈、本地方法栈、程序计数器、方法区,是指Java运行时数据区下面来一一说一下:程序计数器:当前线程执行的字节码的行号指示器,通过改变这个计数器的值实现,分支,循环,跳转,异常处理,线程恢复每个线程都有独立的这个一块内存,不会出现OOM虚拟机栈:线程私有,生命周期同线程描述方法执行的内存模型每个方法...
2018-05-06 20:33:25 101
原创 Java异常机制解析
一 什么是Java的异常?当程序发生错误,没有按照正常的流程运行时,就是异常,所以异常的问题也就是程序出错了,怎么办?那么Java中专门有异常处理机制,将封装的异常类型来代表错误,并且使用 try{//这里是错误情况发生地 }catch(XXXException e){//多个catch块捕捉对应类型的异常,并在这里做处理,比如//throw 一个新的异常//打印异常堆栈信息,打印日志//做相应的...
2018-05-01 17:45:55 133
原创 接口和抽象类的区别?
首先,什么是抽象类?特点:abstract修饰类,不能被实例化有两种情况用到1.有一个及以上的抽象方法,(编译器会强制用abstract关键字限制这个类),其子类需要实现所有的抽象方法,才可被实例化,否则仍然是一个抽象类2.没有抽象方法,且该类不想被实例化。那接口呢?特点:所有方法都是抽象方法,所有成员变量都默认是 static final的,不可实例化,方法默认是public的接口可以被看为是一...
2018-04-30 17:50:21 91
原创 大意失荆州,说说单例模式
标题为啥这么说,是因为我面试中两次被问到单例模式,都没回答好。首先想个问题,什么是单例模式,有什么用?单例模式指一个类只有一个实例,且必须自己创建这个实例,向系统中的所有其他对象提供这一实例好处:只有一个实例,一个是可以统一控制,另外也可以节约资源用处:1.网站的计数器2.日志3.数据库连接池4.线程池那如何实现单例模式呢?1.静态内部类实现public class singleton{ ...
2018-04-29 21:38:27 147
原创 ThreadLocal解析一二
ThreadLocal ThreadLocal是啥?首先来看看j d k中的定义Each thread holds an implicit reference to its copy of a thread-local* variable as long as the thread is alive and the {@code ThreadLocal}* instance is acces...
2018-04-29 21:03:39 107
原创 java中从Integer和int对比,你知道了什么?
今天遇到了这样一个面试题题设:Integer a = new Integer(100); Integer b = new Integer(100);Integer c = 100;Integer d = 100; int e = 100; Integer f = 150; Integer g = 150;问题: a == b false; a == c false; c == d...
2018-04-27 22:08:25 149
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人