- 博客(86)
- 资源 (10)
- 收藏
- 关注

原创 javaEE规范和SSH三大框架到底有什么关系
1994-2000 年是互联网的大航海时代。请注意,下面的时间点及其重要。1994年,网景公司(Netscape)发布了Navigator浏览器0.9版。这是历史上第一个比较成熟的网络浏览器,轰动一时。但是,这个版本的浏览器只能用来浏览,不具备与访问者互动的能力。网景公司急需一种网页脚本语言,使得浏览器可以与网页互动。1995年Sun公司将Oak语言改名为Java,正式向市场推出。Su
2014-03-06 17:46:30
14499
3

原创 网络操作系统和分布式系统区别简介
网络操作系统(NOS)是网络的心脏和灵魂,是向网络计算机提供服务的特殊的操作系统。它在计算机操作系统下工作,使计算机操作系统增加了网络操作所需要的能力。网络操作系统严格来说应称为软件平台。网络操作系统运行在称为服务器的计算机上(你的pc装了此系统,pc就是一个小服务器),并由联网的计算机用户共享,这类用户称为客户。 NOS是以使网络相关特性达到最佳为目的的,如共享数据文件、软件应用,以及共
2012-10-15 12:17:02
7641

原创 虚拟存储器 与虚拟内存详解
在没有虚拟存储器之前源程序在gcc –o 后生成的文件是可执行目标程序a.out,每条指令都有一个逻辑地址 32位。它存在硬盘上。要执行时,只需找到该文件,将其装入内存。装入的方式可以有多种,比如分页,分段等等。但是,必须将该程序完全装入内存。 分页:将一个进程的逻辑地址空间(32位)分成若干大小相等的页。使用分页方式时有一个问题,必须清楚:os是根据文件系统找到的a.
2012-07-06 17:11:22
5432
原创 插件的目标和生命周期的阶段
插件的目标和生命周期的阶段 生命周期的阶段插件的目标插件的目标 绑定到 生命周期的阶段内置绑定生命周期的阶段平时执行的如 clean compile package install都是生命周期的阶段插件的目标如dependency:tree有些插件目标 不适合绑定到 生命周期中 ,所以mvn也支持直接运行 插件目标的形式。dependency 其实是 某个完整插件的前缀。(为了便于书写和记忆)插件的目标 绑定到 生命周期的阶段phase : 插件绑定的生命周期goal: 插件要执行的
2020-10-20 01:35:33
321
原创 debug mvn的 执行阶段
debug mvn的 执行过程第0步:在想debug的地方打普通的断点第一步 启动 mvnDebug在Terminal下执行 mvnDebug compile第二步 连接刚才启动的桩第三步, 运行第二步配置好的LocalDebug
2020-10-19 22:50:18
1038
原创 mybatis 中的注解
* <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">* <property name="basePackage" value="org.mybatis.spring.sample.mapper" />* <!-- optional unless there ...
2018-05-29 15:44:45
1378
3
原创 NIO中的多路复用
多路复用 对比 线程池 伪异步的优点:使用线程池模型:假设机器A可以开1000个线程,那最多就是1000个连接。因为网络IO较慢且需要阻塞,此时可能有900个线程处于阻塞在网络IO处的状态。也就是只有100个线程在干别的事情。这样对整个机器A的所有资源都是浪费。使用多路复用以后, 网络IO阻塞不在占用独有的线程。同样是机器A,做实际事情的线程数可能可以开到1000, 实际做事的效率就<str...
2018-02-27 14:44:39
3549
原创 远程分支已经不存在的解决办法
On branch feature/20180104_1709631_deletenotuse_1Your branch is based on 'origin/feature/20180104_1709631_deletenotuse_1', but the upstream is gone.1)新建出新的分支 [new branch] feature/201801
2018-01-16 16:04:11
6429
原创 mybatis&spring 最小集
最近又搞起mybatis&spring的事儿啦, 所有的东西早忘光了。 再次总结一遍。mybatis&spring 最小集1)pom.xml org.mybatis mybatis 3.4.2 org.mybatis
2017-11-23 22:45:06
350
原创 mybatis、 jdbc、 mysql-connector 之间的关系
先明确 jdbc 和 mysql-connector http://www.cnblogs.com/jianshu/p/6023098.htmlJDBC(Java Database Connectivity)是一组接口, JDBC的目标是使Java程序员 使用这组接口连接任意的数据库系统。mysql-connector-java 是 jdbc 的一个实现 ,用它可以连接mysql系统。如果我当前
2017-06-08 11:55:32
4104
原创 高性能Mysql笔记 (7)---查询缓存
如果表发生变化,和这个表相关的所有缓存数据都将失效。1)使用hash(sql语句和客户端的一些原始信息) 的方式 判断是否命中。 因此sql语句即使多一个空格,也会造成缓存不命中。 2)查询缓存占用太大的内存或者碎片太多时,失效这些缓存可能会成为瓶颈。缓存如何管理内存query_cache_size : 分配内存的总大小 query_cache_min_res_unit : 申请块的最小值 (简
2017-06-06 14:36:13
412
原创 高性能Mysql笔记 (6)---查询优化
为什么查询会慢是否向db请求了不需要的数据 需要10行但查询了100行 | 多表关联返回全部列 | 每次都是取出所有列db是否扫描了额外的行【推荐】SQL性能优化的目标:至少要达到 range 级别,要求是ref级别,如果可以是consts最好。 说明: 1)consts 单表中最多只有一个匹配行(主键或者唯一索引),在优化阶段即可读取到数据。 2)ref 指的是使用普通的索引。(no
2017-06-06 14:27:49
3493
原创 高性能Mysql笔记 (5)---索引优化
索引的类型 btree索引 最左匹配,匹配范围值, 不能跳列。 hash索引索引的优点: 1 大大减少服务器需要扫描的数据量 2 帮助服务器避免排序和临时表 3 将随机IO变为顺序IO顺序io/ 随机io: 如果索引不能覆盖查询所需的全部列,那就要回表查询,这些查询都是随机IO。因此按照索引顺序读取数据的速度要比顺序全表扫描慢。索引三星: 索引将相关的记录放在一起则获得一星 索引中的
2017-06-06 14:24:03
550
原创 高性能Mysql笔记 (4) --库表结构优化
选择正确的数据类型为标识列(如userID)选择合适的数据类型非常重要。1使用内置类型而非字符串存储日期和时间 2使用整形存储ip地址 (INET_ATON) 3除非真的需要存储NULL值(如稀疏表),否则指定列为NOT NULL 可使用 0 “” 等特殊字符代替NULL4对于存储和计算 INT(1) 和 INT(20)是相同的,这种指定只是规定了MYSQL和一些交互工具用来显示字符的个数。因
2017-06-06 14:18:03
1040
原创 高性能Mysql笔记 (2)(3)
基准测试也就是生物里面学的对照试验, 基准测试的具体做法是: 1)在系统上运行一系列测试程序并把性能计数器的结果保存起来。 2)这些结果可以建立一个已知的性能水平,将这个性能水平称为基准线。 3)仅改变其中一个条件,其他所有条件保持不变,再执行一次,并保存结果 4)对比两次试验结果,看改变条件对结果的影响。如何确认服务器是否达到了性能最佳状态找出某条语句为什么执行不够快诊断看不到的地方都是
2017-06-06 14:09:01
304
原创 高性能Mysql 笔记 (1)
应用和mysql的连接 是长连接还是短连接?大部分是长连接,并且现在应用很少直连mysql而都是通过开源数据库连接池,比如c3p0mysql服务端使用 典型的 “线程池” 实现伪异步IO。 mysql server监听进程,监听到新的请求,然后mysql为其分配一个新的 thread,去处理此请求。MySQL为什么使用线程的模型而不是epoll之类的技术? mysql的瓶颈一般是
2017-06-06 14:07:25
436
原创 java rmi stub 反编译以后, 动态代理
源文件:/** * * User: xingxiaobing * Date: 2015-02-13 * 远程的接口的实现 */ public class HelloImpl extends UnicastRemoteObject implements IHello { /** * 因为UnicastRemoteObject的构造方法抛出了Rem
2015-02-13 12:36:07
1803
原创 The project contains another dependency with the same archive name.
Q1: The project contains another dependency with the same archive name.在本地库搜索在pom.xml中搜索将其排除更新maven 后问题解决其他同样的错误,可以仿照上述过程修复。
2015-01-29 12:48:45
5629
原创 汇集的一些文章
JAVA 中BIO,NIO,AIO的理解http://my.oschina.net/hanruikai/blog/294108正则表达式实例http://www.cnblogs.com/diony/archive/2010/12/16/1908499.htmljava精华文章http://blog.youkuaiyun.com/kobejayandy/artic
2015-01-05 16:35:49
689
转载 Java 静态变量的初始化顺序
1 无继承情况下的Java初始化顺序:class Sample{ Sample(String s) { System.out.println(s); } Sample() { System.out.println("Sample默认构造函数被调用");
2014-12-16 17:34:23
730
转载 servlet中service() doGet() doPost() 方法
HttpServlet 里的三个方法:service(HttpServletRequest req, HttpServletResponse resp) ,doGet(HttpServletRequest req, HttpServletResponse resp), doPost(HttpServletRequest req, HttpServletResponse res)的区别和联系:
2014-10-20 10:17:07
835
原创 netty权威指南--------第四章TCP粘包/拆包问题
第三章中的示例用于功能测试一般没有问题,但当压力上来或者发送大报文时,就会存在粘包/拆包问题。这时就需要使用LineBasedFrameDecoder+StringDecoderclient端请求改为连续的100次package com.xiaobing.netty.fourth;import java.net.SocketAddress;imp
2014-09-21 10:05:06
7038
转载 java反射详解
http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解。下面开始正文。【案例1】通过一个对象获得完整的包名和类名
2014-08-07 16:58:52
939
转载 Tomcat的Session管理
cookie的值, 可以结合chrome F12 下的 Resource 和Network查看Session对象的创建一般是源于这样的一条语句: Session session = request.getSession(false);或者Session session = request.getSession();如果不在乎服务器压力可能多那么一点点的话。 在Tomcat的实现中
2014-03-07 10:19:57
10127
原创 仅从性能上分析 java到底和C /C++ 差在了那里
C /C++程序是需要 编译------链接------运行的过程的。Java 有前端编译,.class文件的加载相当于链接(动态链接,动态运行中的 动态链接),java程序的运行过程,实际包含了C/C++程序的编译过程的一部分(字节码相当于C/C++经过一定编译的后形成的代码),和运行过程。 Java的编译分为把*.java 编译为 *.class 的过程 ,常用的编译器有 ja
2014-03-05 20:14:23
5760
原创 对java 内存可见性的理解
同步包括两方面的含义: 独占性和可见性。很多人仅仅理解了独占性,而忽略了可见性。一种常见的错误是,只有在写入共享变量时才需要同步,而读取的时候并不需要同步。 publicclass GetAndSet { privateint i; publicint getI() { returni; } public
2014-03-04 17:24:21
7860
转载 java 线程池
http://www.cnblogs.com/jersey/archive/2011/03/30/2000231.htmlReference: 《创建Java线程池》[1],《Java线程:新特征-线程池》[2], 《Java线程池学习》[3],《线程池ThreadPoolExecutor使用简介》[4],《Java5中的线程池实例讲解》[5],《ThreadPoolExe
2014-01-03 18:02:48
890
转载 Inside AbstractQueuedSynchronizer
Inside AbstractQueuedSynchronizer (1)Inside AbstractQueuedSynchronizer (2)Inside AbstractQueuedSynchronizer (3)Inside AbstractQueuedSynchronizer (4)1 Overview 如果查看Reentran
2014-01-03 16:54:09
958
转载 CLH队列锁
http://blog.youkuaiyun.com/aesop_wubo/article/details/7533186CLH锁即Craig, Landin, and Hagersten (CLH) locks,CLH锁是一个自旋锁,能确保无饥饿性,提供先来先服务的公平性。CLH锁也是一种基于链表的可扩展、高性能、公平的自旋锁,申请线程只在本地变量上自旋,它不断轮询前驱的状态,如果发现前
2014-01-03 14:29:28
8048
1
转载 绝对路径在不同环境下 到底是相对于什么的绝对
1.基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"/"代表
2013-12-10 15:31:56
808
转载 WEB前端html、css、js分离开发简谈
在WEB 0 时代,除了W3C自己的网站,页面基本上只有一堆杂乱的混合的代码,他们是HTML 3- 、CSS 1- 、JAVASCRIPT 1- 的大盛宴。以大部分网站的登录表单和无尽的链接为例,大部分代码就像下面这个样子: 用户名: 密码:
2013-09-29 14:46:00
2782
转载 Spring ContextLoaderListener源码分析 .
http://blog.youkuaiyun.com/hz_blog/article/details/7688921 当我们要自动装配ApplicationContext配置信息时候,首先在web.xml配置ContextLoaderListener,下面是部分源代码:[java] view plaincopyprint?public class ContextLoader
2013-09-23 17:11:00
3735
转载 web.xml中 listener、filter、servlet等 加载顺序
Web项目的很多信息都配置在web.xml文件中,而且项目启动时,容器(下文以Tomcat为例)会先读配置文件,那web.xml文件中的那么多内容是按照什么顺序加载的呢? 这个读取顺序跟文件内容的上下文顺序基本没有关系,也就是说这些配置信息的读取顺序是一定的,跟他写在哪个位置没关系,写到最后的可能第一个执行。 分析: (1)因为无论是Listen
2013-09-07 17:17:30
1523
转载 存储过程基本介绍
存储过程存储过程(stored procedure)是一组为了完成特定功能的sql 语句集,经编译后存储在数据库。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。所以,存储过程不可能在jdbc中用sql语句完成。存储过程只能是在DB写好了,由jdbc调用。在sql server 的系列版本中存储过程分为两类:系统提供的存储过程和用户自定义存储过程
2013-08-20 19:45:59
799
原创 spring AOP 是如何一步一步被简化的
Aop的配置使用 Aop的思想实现是基于代理设计模式的, 动态增加某些功能。因此在最开始阶段1 所有需要被织入的类都需要被代理(ProxyFactoryBean)。2 切面(advisor)的实现中写了切点匹配类的规则和匹配方法的规则3 增强(advise)需要自己实现。 ProxyFactory 内部使用了 jdk动态代理或者CGLib代理实现。
2013-08-20 19:27:27
1146
转载 mybatis与spring3.1整合
http://thoughtfly.iteye.com/blog/1485993因spring3发布时mybatis还没有出正式版本,所以spring没有整合最新的mybatis.不过社区倒是开发了一个中间件。 需要的jar包mybatis-3.0.6.jarmybatis-spring-1.0.2.jar 要点:1.在spring中配置mybatis工厂类,
2013-08-13 15:37:35
5497
原创 BeanFactory到WebApplicationContext的结构 以及bean和spring容器的关系
BeanFactory: Ioc 容器ApplicationContext: Spring容器WebApplicationContext需要ServletContext实例,也就是说它必须在拥有Web 容器的前提下才能完成启动的工作。Spring分别提供了用于启动WebApplicationContext的 Servlet和 Web容器监听器:
2013-08-12 19:59:22
2595
原创 spring 资源加载使用说明
Spring 提供了一个强大加载资源的机制,不但能够通过“classpath:”、“file:”等资源地址前缀识别不同的资源类型,还支持Ant 风格带通配符的资源地址。首先,我们来了解一下Spring 支持哪些资源类型的地址前缀:其中和“classpath:”对应的,还有另一种比较难理解的“classpath*:”前缀。假设有多个JAR 包或文件系统类路径都拥有一个相同的包
2013-08-12 16:39:29
1785
数据库索引技术ppt
2012-08-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人