- 博客(126)
- 资源 (7)
- 收藏
- 关注
原创 MySQL 加锁处理分析
系统同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力,并且很有可能出现系统死锁等问题。所以对于加锁的处理,是数据库对于事务处理的精髓所在。这里通过分析MySQL中InnoDB加锁机制与事务隔离级别相结合,去详细描述在每种隔离级别下加锁的处理方式。MVCC,multi-version concurrency control mvcc大多数实现的是读非阻塞,写操作只锁必
2018-02-03 22:25:54
725
原创 InnoDB中事务隔离级别的说明
我们都知道事务的几种性质,数据库中的一致性和隔离性等是实现事务的基本思想,在系统有大量的并发访问的情况下,了解和熟练应用数据库的本身的事务隔离级别,对于写出健壮性,并发处理能力强的代码还是起关键的作用。这里通过分析mysql InnoDB中事务的隔离级别,来抛砖引玉,让读者更好的理解,事务的隔离级别对于数据库数据的处理做了什么。隔离级别
2018-02-03 14:41:52
1727
原创 MySQL EXPLAIN命令的总结
最近在看一本书《高性能mysql》,这本书是一本经典的书,我通过这本书解决了许多实际开发中的问题,从建库到横向硬件的优化应有尽有。这里总结一下sql语句Explain查询优化器的一些内容,主要是通过实例来解释命令后的每一行所输出每一列所代表的含义。
2017-09-16 19:31:02
1196
2
原创 redis-缓存穿透与缓存雪崩
缓存穿透缓存系统,按照KEY去查询VALUE,当KEY对应的VALUE一定不存在的时候并对KEY并发请求量很大的时候,就会对后端造成很大的压力。如何避免1.对查询机构为空的情况也进行缓存,缓存的时间设置端一点,或者对该KEY对应的数据insert之后清理缓存。2.对一定不存在的key进行过滤,可以把所有存在的key放到一个大bitmap中,查询时通过该bitmap过滤。
2016-07-31 19:42:27
10977
4
原创 spring-注解详解
@Component功能:指定对应的类为Spring控制的bean格式:定义在类的上方,可以为类指定bean名称定义UserDAOImpl类为Spring控制的bean,未指定名称 定义UserDAOImpl类为Spring控制的bean,名称”userDAO” bean的名称可以定义多个,如@Component(“u1,u2,u3”)
2016-06-30 18:04:49
729
4
原创 spring-AOP基本概念
基本概念连接点(Joinpoint):具有特定功能的方法,一般方法。切入点(Pointcut):具有共性功能的方法的统称一种称呼方式。被抽取后的代码目标对象(Target Object):包含切入点的类。通知(Advice):将共性功能抽取走,制作成独立的功能模块。被抽取后的公共代码切面(Aspect):切入点与通知匹配的一种情况,AOP切面描述的一组切入点与通知方法之间的
2016-06-30 17:59:25
670
5
原创 Linux虚拟机实现Host-only方式上网
Host-only模式实现联网得考虑如下配置过程:1、安装VMware-Workstation,安装虚拟机Linux(centos、ubuntu等)完毕。2、设置虚拟机上网方式是Host-only,然后确认如下全部ip设置:(1)配置VMware Network Adapter VMnet1(即,主机的虚拟网卡,用来跟虚拟机通信的)查看主机的网络连接设置,找到如图示三个
2016-06-30 08:35:49
8803
3
原创 深入理解J2SE—Introspector(内省)应用
上篇博客中主要介绍了Introspector的使用方法和概念,这篇博客中主要来写一些Introspector的应用。为什么要利用Introspector来对javabean进行get/set值,而不直接使用get/set方法。
2016-05-23 21:25:40
565
2
原创 深入理解J2SE—Introspector(内省)
Introspector (内省)是操作javaBean的属性API,用来访问某个属性的 getter/setter 方法。什么事JavaBean?1.具备空参构造。2.提供熟悉的get/set方法。3.属性对象变量实例化。
2016-05-23 18:01:34
674
1
原创 JVM_自动内存管理机制
运行时数据区域java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同点数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和接受二建立和销毁。主要内容:内存各个区域,区域的作用,服务对象,产生的问题 程序计数器每条线程都要有一个独立的程序计数器如果是正在执行的是JAVA方法,
2016-05-14 17:35:52
1851
1
原创 springMVC—接受参数以及返回参数
在接受参数的方式中springMVC可以定义requet去接受,可以直接定义参数列表,在接受实体对象的时候也可以定义参数列表接受数据。在返回数据的时候可以使用Map返回数据,也可以使用springMVC提供的Mode返回数据。
2016-03-21 16:42:08
5868
2
原创 springMVC—注解开发实例
前面总结的内容都是利用配置文件去位置一个springMVC的程序,包含了配置harderMapping,Controller。这些内容也可以利用注解的形式进行配置。可以说是用注解的方式,更能提高开发的效率。
2016-03-21 15:48:34
1386
2
原创 springMVC—三种控制器controller
在springmvc中提供了三种controller的配置,1.针对不需要controller代码的,也就是只起到跳转页面的作用。2.可以接受实体类型的controller。3.可以接受表单数据的controller,它只允许POST提交,在配置文件中需要指定提交FORM,请求成功的FORM。
2016-03-21 14:18:48
8833
4
原创 springmvc—handlermapping三种映射
handlermapping负责映射中央处理器转发给controller的映射策略,简单说就是控制中央处理器的请求触发哪一个controller。 handlermapping的配置也是在springmvc的配置文件中。三种映射方式1.BeanNameUrlHandlerMapping(默认)按照controller的name来映射寻找controlller,它
2016-03-21 11:28:46
6459
1
原创 springMVC-springMVC入门实例
spring mvc框架通过model-view-controller模式来更好的将数据,业务,与展现进行分类,从这样一个角度说,springmvc 和struts2非常相似的 spring mvc的是设计师围绕dispatcherServlet展开的,dispatcherServlet负责将请求派发给特定的handler通过配置handlermapping,handlermapping将传给对应的controller,controller返回modelandview,moviewResolutio
2016-03-21 11:05:20
904
3
原创 EJB-持久化Bean开发
持久化Bean与普通的JAVA Bean无异,区别在于它们用EJB的Annotation进行了标记。持久化Bean有下列基本要求一个实体类,并将其标识为@Entity实体类必须要有主键,一般用@Id将其标识persistence.xml文件主要是定义实体的映射配置信息。
2016-02-24 12:58:02
1277
6
原创 EJB-JMS
JMS是java的消息服务,JMS的客户端直接可以通过JMS服务进行异步的消息传递,JMS支持两种消息模型,Point-to-Point(p2p)和Public/Subsribe(Pub/Sub),即点对点和发布订阅模型。
2016-02-24 09:49:39
1129
5
原创 EJB-无状态会话Bean与有状态会话Bean对比
无状态会话Bean不会受到EJB容器进行管理,也就是对象只创建一次,每次会话都调用这个对象。 有状态会话Bean能够为同义客户端在多次请求直接保存状态信息,EJB容器可以区分不同的客户端,并为不同的客户端保持与其对应的状态信息。也就是每次客户访问都会创建一个新的对象。
2016-02-21 20:55:19
1130
5
原创 EJB-EJB的基本分类
EJB分为了Enterprise Bean和Persistence两大部分。其中Enterprise Bean中又分为了会话Bean和消息驱动Bean。在会话 Bean中又进行细分分为了无状态会话 Bean 和有状态会话 Bean.在Persistence中存在的是实体Bean.
2016-02-21 20:05:04
1381
6
转载 Java注解教程及自定义注解
Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容。在这个教程当中,我们将学习Java的注解,如何定制注解,注解的使用以及如何通过反射解析注解。Java1.5引入了注解,当前许多java框架中大量使用注解,如Hibernate、Jersey、Spring。注解作为程序的元数据嵌入到程序当中。注解可以被一些解析工具或者是编译工具进行解析。我们也可以声明注解在编译
2016-01-31 19:37:18
926
4
转载 深入Java内存模型
你可以在网上找到一大堆资料让你了解JMM是什么东西,但大多在你看完后仍然会有很多疑问。happen-before是怎么工作的呢?用volatile会导致缓存的丢弃吗?为什么我们从一开始就需要内存模型?通过这篇文章,读者可以学习到足以回答以上所有问题的知识。它包含两大部分:第一部分是硬件层次的大体架构,第二部分是深入OpenJdk源代码和实现。因此,即使你没有太深入Java,你可能也会对第一
2016-01-30 12:47:57
1143
3
转载 理解Spring MVC Model Attribute 和 Session Attribute
作为一名 Java Web 应用开发者,你已经快速学习了 request(HttpServletRequest)和 session(HttpSession)作用域。在设计和构建 Java Web 应用时,理解这些作用域,如何将数据与对象和这些作用域交互是十分重要的。【在 StackOverflow 上有一篇文章可以帮助你快速了解 request 和 session 作用域】SPRING
2016-01-30 12:44:41
3191
2
原创 git的使用—安装和初始化
git属于分布式版本控制系统,分布式版本控制系统与集中式版本控制系统有何不同呢?首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就
2016-01-30 12:41:22
1346
6
原创 Linux修复/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 问题
因为装的Linux是64位的CentOS。所以在安装32位的mysql的时候出现错误:/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 。百度后找到了解决办法。1、在64系统里执行32位程序如果出现/lib/ld-linux.so.2: bad ELF interpreter: No such file o
2015-12-31 20:54:56
3371
3
原创 Linux基本概念及操作
Linux终端1.Terminal(终端)通常在我们使用 Linux时,我们并不是直接与系统打交道,而是通过一个叫做 Shell的中间程序来完成的,在图形界面下为了实现让我们在一个窗口中完成接受用户输入和显示输出,Linux系统还提供了一个叫做终端模拟器的程序终端本质上是对应着 Linux上的 /dev/tty设备,Linux 的多用户登陆就是通过不同的 /de
2015-12-31 20:38:21
3025
3
原创 Linux 下安装配置 JDK
1.下载JDK下载地址:http://pan.baidu.com/s/1gdQGPY7 密码:0b8d2.解压安装我们把JDK安装到这个路径:/usr/lib/jvm,如果没有这个目录(第一次当然没有),我们就新建一个目录1.2.cd /usr/libsudo mkdir jvm建立好了
2015-12-31 20:11:30
790
3
原创 jsp编译错误:code too large for try statement
在公司的项目中遇到了一个棘手的问题,因为项目比较老了,JSP中参杂中各种标签各种JAVA代码,而且JSP的内容超过了3000多行。我仅仅是在页面中加入了几个字段就导致了页面的jsp编译错误:code too large for try statement。主要原因是JSP中编译成SERVLET代码的时候就变成了service方法,这个方法的过大,当JSP文件太大的时候编译成的servi
2015-12-26 16:13:51
2228
4
原创 java线程内存可见性-实现方式
上篇博客中主要介绍了,多线程中内存可见性的实现原理,主要是从jmm的角度去解释了实现原理。同时也引出了如果要实现共享变量的可见性,必须保证两点:1.线程修改后的共享变量值能够及时从工作内存刷新到主内存中。2.其他线程能够及时把共享变量的最新值从主内存中更新到自己的工作内存中。这篇博客根据实现共享变量的可见性的思想原理,总结一下实习这种思想的两种方式。1.synchronized
2015-11-22 19:19:15
1149
6
原创 java线程内存可见性-java内存模型
java内存模型规定1.线程对共享内存的所有操作都必须在自己的工作内存中,不能直接从主内存中读取。2.不同线程中无法直接访问其他线程工作内存中的变量,线程间变量值的传递需要通过主内存来完成。
2015-11-22 13:34:50
1478
21
转载 优秀程序员的七大特征,你具备几条?
世界上的很多事情都是有规律的,就像 《高效能人士的七个习惯》,优秀的程序员也有七个主要特征。这些特征有些是先天具备的,也就是天赋,但有些是在日常的编程工作中学习、进步、积累、总结获得的。每个程序员都想知道自己是不是一个优秀的程序员,那么,就参考一下下面这 7 条,看看自己是否达到了做一个优秀程序员的标准。1、喜欢帮助他人,照顾比自己差的程序员程序员的脾气通常很大,常常会
2015-10-29 21:52:37
2010
10
原创 struts2——整合spring与struts2
struts2与spring整合以后,可以在struts中直接使用spring进行bean的配置。换句话说就是让struts2的action由容器管理。
2015-10-29 21:33:47
3752
6
原创 struts2—OGNL总结
OGNL是Object-Graph Navigation Language的缩写,全称为对象图导航语言,是一种功能强大的表达式语言,它通过简单一致的语法,可以任意存取对象的属性或者调用对象的方法,能够遍历整个对象的结构图,实现对象属性类型的转换等功能。 Struts2的标签库都是使用OGNL表达式来访问ActionContext中的对象数据的。如:<s:propertyvalue="xxx"/>。 Struts2将ActionContext设置为OGNL上下文,并将值栈作为OGNL的根对象
2015-10-25 13:39:46
895
6
原创 spring—声明式事务管理总结
spring的声明式事务管理是建立在spring aop的基础之上,其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据
2015-10-25 13:24:33
925
3
原创 Spring——scope详解
声明IOC容器中的对象应该处的限定场景或者说该对象的存活空间,即在IOC容器在对象进入相应的scope之前,生成并装配这些对象,在该对象不再处于这些scope的限定之后,容器通常会销毁这些对象。
2015-09-27 01:57:46
1313
19
原创 Struts2——ModelDriven运用
在struts2中提供了ModelDriven模型驱动,实现ModelDriven接口,会实现方法getModel。这样做的好处就是页面传过来的多个实体对象的属性,架构就会自动的将数据传给对象。
2015-09-27 01:36:43
944
15
原创 Hibernate——Hql实例+详解
Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL。完整的HQL语句形式如下:Select/update/delete…… from …… where …… group by …… having …… order by …… asc/desc。同时需要注意的是在hql中关键字不区分大小写,通常小写,类的名称和属性名称必须区分大小写,按照实体的设计去写大小写。 下面从
2015-08-22 01:01:06
5373
19
转载 如何快速掌握一门新技术/语言/框架?
IT行业中的企业特点是都属于知识密集型企业。这种企业的核心竞争力与员工的知识和技能密切相关。如果你在企业中扮演的是工程师的角色,那么你的核心竞争力就是IT相关的知识与技能的储备情况。众所周知,IT行业是一个大量产生新知识的地方,就拿Web前端举例,短短的5、6年时间,Web前端已经经历了数次变革,就目前来看变革还将继续下去。从以前的div+css网格化布局到JavaScript的方兴未艾,然后是各
2015-08-20 17:12:01
1244
13
原创 entity framework——实体连接查询两种方式
在最近的人事项目重构以及即将开始jrkj项目都会用到实体对像连接查询的问题。在原来的原生SQL开发中,可以利用join关键字去写SQL语句进行查询。但是利用现在的Entity Framework怎么查询呢?
2015-08-12 23:35:07
7743
6
转载 8张图理解Java
一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。1、字符串不变性下面这张图展示了这段代码做了什么12String s = "abcd";s = s.concat("ef");2、equals
2015-08-04 21:53:18
727
11
jQuery get方法+一般处理程序处理文本框内容
2014-05-30
jquery——可以编辑的表格
2014-05-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人