- 博客(28)
- 收藏
- 关注
转载 Java并发问题--乐观锁与悲观锁以及乐观锁的一种实现方式-CAS
Java并发问题--乐观锁与悲观锁以及乐观锁的一种实现方式-CAS首先介绍一些乐观锁与悲观锁: 悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。再比如Java里面的同步原语synch
2017-03-28 20:26:41
407
转载 hibernate和mybatis区别
第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些。个人觉得要用好Mybatis还是首先要先理解好Hibernate。比起两者的开发速度,不仅仅要考虑到两者的特性及性能,更要根据项目需求去考虑究竟哪一个更适合项目开发,比如:一个项目中用到的复杂查询基本没有,就是简单的增删改查,这样选择hibe
2017-03-17 18:21:09
236
转载 Mysql 存储引擎
前言在数据库中存的就是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库。而在设计表的时候,我们都会关注一个问题,使用什么存储引擎。等一下,存储引擎?什么是存储引擎?什么是存储引擎?关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于Excel的电子表格的形式。有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的
2016-12-18 20:43:00
312
原创 使用POI读取EXCEL并保存到数据库
在一次开发中,遇到一个需求,需求要求是:使用Poi 3.16-beta 包,和相关springjar包。spring 主要用了bean的管理和自动注入。持久层框架使用mybatis。框架分层如下:ExcelParserInterface:public interface ExcelParserInterface { List
2016-12-15 15:02:34
4662
原创 垃圾回收机制GC 细谈
虽然java提供了自动垃圾回收管理机制,但是如果因此不注意,经常会出现OOM等异常,学习jvm 对垃圾回收的特性,能让我们在出现这种异常错误时,能去更好的排查解决问题。下面是我个人在参阅了周志明教授和其他博客后,对java垃圾回收的理解。一,首先清楚,gc回收的地方:jvm中把内存划分为虚拟机栈,方法区,程序计数器,以及堆。堆和方法区是gc要回收的地方,而对象的创建是在堆中分配内存的,
2016-12-15 14:34:46
434
原创 java 强弱软虚 四种引用,以及用到的场景。
在JDK1.2后,java对引用的概念进行了扩充。按照引用强度依次从强到弱分为:强引用、软引用(SoftReference)、弱引用(WeakReference)、虚引用(PhantomReference)用四种。强引用:最常见的,不会被GC回收的对象,如 Object obj = new Object();软引用:可有可无的对象,如果内存空间足够,GC就不会去回收这个对象,如果内存不足,
2016-12-15 12:57:38
7376
转载 1.8 中hashMap的实现
这几天学习了HashMap的底层实现,但是发现好几个版本的,代码不一,而且看了Android包的HashMap和JDK中的HashMap的也不是一样,原来他们没有指定JDK版本,很多文章都是旧版本JDK1.6.JDK1.7的。现在我来分析一哈最新的JDK1.8的HashMap及性能优化。在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的链
2016-12-13 19:41:32
309
转载 HashMap 问答
我用笔记本给最佳答案排了一下版,给大家贴出来。虽说排版确实很乱,但是答案不得不给一个大赞。HashMap的工作原理HashMap,都知道哪里要用HashMap,知道Hashtable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMap来考察你的编程能力。
2016-12-13 19:08:56
271
原创 垃圾回收笑谈
当一个人(对象)出生后(new)会在伊甸园(Eden space)过快乐的生活,但是,有一个叫gc的坏蛋,让每个人交保护费,没钱的当场杀死,交钱的就去了幸存区(Survivor space),躲过一劫,但是随着gc的压榨,有的人没钱了,还是会死,对于每次给钱的富豪,最后gc允许他们进入养老区(Genured)生活,但是富豪如果没钱了,还是会被gc恶棍杀死!
2016-12-12 20:48:40
212
转载 spring aop
Spring AOP: Spring之面向方面编程5.1. 概念面向方面编程 (AOP) 提供从另一个角度来考虑程序结构以完善面向对象编程(OOP)。 面向对象将应用程序分解成 各个层次的对象,而AOP将程序分解成各个方面 或者说 关注点 。 这使得可以模块化诸如事务管理等这些横切多个对象的关注点。(这些关注点术语称作 横切关注点。)Spring
2016-12-02 17:47:33
263
转载 Mybatis resultMap使用详解
本篇文章通过一个实际工作中遇到的例子开始吧: 工程使用Spring+Mybatis+Mysql开发。具体的业务逻辑很重,对象之间一层一层的嵌套。和数据库表对应的是大量的model类,而和前端交互的是Vo类。现在需要做一个需求,有两种方式来实现: 使用现有的Service接口,或者自己在编写一些用到的接口,手动使用Java代码来分别调用Service接口来查出各个model,然后
2016-11-18 21:34:04
8787
转载 VO,PO,BO名称介绍
VO是跟数据库里表的映射,一个表对应一个VO DAO是用VO来访问真实的表,对数据库的操作都在DAO中完成 BO是业务层,做逻辑处理的VO , PO , BO , QO, DAO ,POJO, O/R Mapping 是 Object Relational Mapping (对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在 O
2016-11-18 20:33:12
939
转载 深入理解HTTP协议
1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。
2016-11-15 18:45:05
216
原创 linux-基础 unit8-9
1.systemctl 命令 ###服务管理 systemctl start服务名称 ##开启服务 systemctl stop服务名称 ##关闭服务 systemctl restart服务名称 ##重启服务 systemctl reload服务名称 ##重新加载服务配置 systemctl status服务名称 ##查看服务状态 sys
2016-11-07 17:09:12
242
原创 linux-基础 unit7
1.进程进程是系统正在做的事情,是系统分配资源的单位。2.进程的状态运行 就绪 阻塞(等待) 死亡3.图形中查看进程gonme-system-monitor4.用命令查看进程ps -a ##查看shell中运行的进程ps -x ##查看不在shell中运行的进程ps -u ##查看进程用户ps -l ##查看进程的详细信息ps -f ##查看进程的完全信
2016-11-03 17:24:48
232
原创 linux-基础 unit6
1.文件属性查看ls -l filename- rw-rw-r-- 1 kiosk kiosk 0 Oct 3 12:33 file文件类型 文件权限 文件副本个数文件所有人 文件所有组大小 最后一次修改时间2.查看目录属性ls -d dird rwxr-xr-xr-x3 kioskkiosk Oct3 12:33 direcory
2016-11-03 17:24:16
215
原创 linux-基础 unit5
###系统文件###/etc/passwd ##用户信息文件用户名:用户密码:用户uid:用户gid:用户说明:用户家目录:用户使用的shell/etc/shadow ##用户密码信息用户名:密码:密码使用天数:最短有效期:密码最长有效期:密码警告期:密码非活跃期:密码到期日/etc/group ##用户组信息用户组名:用户组密码:用户组id:附加用户成员/home/u
2016-11-03 17:23:33
222
转载 Write operations are not allowed in read-only mode错误解决
最近在配置 Structs, spring 和hibernate整合的问题:开启OpenSessionInViewFilter来阻止延迟加载的错误的时候抛出了这个异常: org.springframework.dao.InvalidDataAccessApiUsageException错误但是在我们开启OpenSessionInViewFilter这个过滤器的时候Fl
2016-11-01 22:17:15
559
转载 使用ProxyFactoryBean创建AOP代理
7.5. 使用ProxyFactoryBean创建AOP代理 - Spring Framework reference 2.0.5 参考手册中文版7.5. 使用ProxyFactoryBean创建AOP代理如果你正在使用Spring IoC容器(即ApplicationContext或BeanFactory)来管理你的业务对象--这正是你应该做的--你也许会想要使用
2016-11-01 20:24:55
250
转载 使用ProxyFactoryBean创建AOP代理
7.5. 使用ProxyFactoryBean创建AOP代理 - Spring Framework reference 2.0.5 参考手册中文版7.5. 使用ProxyFactoryBean创建AOP代理如果你正在使用Spring IoC容器(即ApplicationContext或BeanFactory)来管理你的业务对象--这正是你应该做的--你也许会想要使用Spring中关
2016-11-01 20:18:16
408
原创 linux练习-unit1
1.用student用户登陆系统图形界面2.打开一个bash3.修改student的密码,把密码更新成"T3st1ngtlme"(主机字母和数字)4.显示当前系统时间5.显示当前系统时间,显示格式为:"小时:分钟:秒 AM/PM"(AM/PM为上下午标识)6.显示“/usr/bin/clean-binary-files”的文件类型7.统计“/usr/bin/clean-bi
2016-10-31 13:51:50
236
原创 linux基础-unit2-4
##文件寻址##绝对路径,以根目录开始的全部路径,文件名以“/”开头相对路径,相对于当前位置的其余路径,文件名会自动添加pwd的值,不会以“/”开头".."表示父目录,“.”表示当前位置,“~”表示home的位置##文件的管理##1.touch ##建立文件或修改文件的时间戳touch file ##file文件如果不存在,则创建并修改文件的时间戳。若该文件存在
2016-10-31 13:50:44
274
原创 linux基础-unit1
##1.开源闭源的软件,用户只能使用,而不能查看它的代码。开源软件不仅可以使用,还可以看到它的源代码,可以根据自己的业务需求,进行拓展或缩减。##2.shellshell 是为了不让外部软件程序直接修改Liunx内核软件的一个保护外壳,可以对用户操作命令给与友好回答,没有修改权限的操作不予执行。##3.虚拟控制台Ctrl+Alt+F(1|7) 进入图形界面C
2016-10-31 13:49:04
179
原创 关于java限定修饰符
Private,protected,default,public1、 public :如果类也是public 修饰的话,这些属性和方法可以被所有的类访问和使用2、 private:只能被该类自身访问和调用3、protected:保护访问控制符,可被同一个包中的类或不同包中该类的子类以及该类自身访问和引用 4、默认:具有包内访问性,只能被同一个包中的其他类访问和引用
2016-07-27 19:01:13
681
原创 java指针和Static
类里面定义的变量可以不初始化,因为会默认赋值。八大基本类型变量值默认为0或者false,引用类型为null; 临时变量(局部变量)不能加private,protected,public限定修饰符,也不能加static。 Java指针Java其实并不是没有指针,而是处处是指针。每个对象变量的值就是一个指针常量。当只是创建类变量时,它的值是null,只有通过new关键字,后才会返回
2016-07-27 18:42:11
369
原创 final,finally,finalize
2016-7-18 javaz再学习Final,finally,finalizeFinalFinal是java关键字,是修饰符。Final可以修饰成员,方法,或者是类。1. final成员在类中定义变量是,加上final修饰符,意思是这个变量一但被初始化便不可改变,对八大基本变量类型来说是值不可变,对类类型(引用类型)来说是地址不可变。final成员初始化只能在 定
2016-07-22 21:49:08
219
原创 2015年冬 初识swing 电路msi
这是我15年12月份,在初次接触swing时,自己独立完成的一个学生管理系统。登录界面,数据库使用的是MySQL管理员账号 未开通注册功能 是考虑这不能随便注册。信息浏览界面。可以查看当前已录入学生信息。可以修改当前所选学生信息。按添加按钮,进入信息输入状态,可以输入姓名,性别,出生日期,籍贯和民族。 也可以放弃本次操作。对已有信息进行修改
2016-07-22 20:57:43
762
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人