摘要: 一、源码分析 源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂。 源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心。 我认为是阅读源码的最核心驱动力。我见到绝大多数程序员,对学习的态度,基本上就是这几个层次(很偏激哦): 1、只关注项目本身,不懂就baidu一... 阅读原文
2018-03-06 22:46:03 阅读(841) 评论(0)
摘要: Java语言是强类型语言,强类型包含两方面的含义:①所有的变量必须先声明、后使用;②指定类型的变量只能接受类型与之匹配的值。 Java语言支持的类型分为两类: l  基本类型:包括整数类型、浮点类型、Boolean类型、字符类型。 l  引用类型:包括类、接口、数组类型和null类型。所谓引用数据类型就是对一个对象的... 阅读原文
2018-03-06 22:41:03 阅读(709) 评论(0)
摘要: 一、MyBatis 1、MyBatis 介绍(百度)   MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJ... 阅读原文
2018-03-06 21:19:02 阅读(722) 评论(0)
摘要: 一. exit退出异常: import java.util.Scanner; public class Test3exit { /** * @param 房山的猫 * finally什么时候不走 * alt+shift+z */ public stati... 阅读原文
2018-03-06 20:06:07 阅读(748) 评论(0)
摘要: Autowired注解 Autowired顾名思义,表示自动注入,如下是Autowired注解的源代码: @Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD, ElementTy... 阅读原文
2018-03-06 18:02:02 阅读(786) 评论(0)
摘要: 1、逆向工程的作用 Mybatis 官方提供了逆向工程,可以针对数据库表自动生成Mybatis执行所需要的代码(包括mapper.xml、Mapper.java、pojo)。 2、逆向工程的使用方法 逆向工程需要的jar包如下图所示: 也可以直接下载我Github上面的源代码(https://github.com/... 阅读原文
2018-03-06 16:42:15 阅读(701) 评论(0)
摘要: package com.swift.jinji; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileFilter; import java... 阅读原文
2018-03-06 16:03:02 阅读(741) 评论(0)
摘要:   此次文章主要探讨volatile与synchronized,通过一些基础概念的介绍,让读者对于两者有更深的了解。 一、几个相关概念 1、原子性   其本意是“不能被进一步分隔的最小粒子”,而原子操作意为“不可被中断的一个或一系列操作”。在多处理器重实现原子操作变得有点复杂。 1)操作系统如何实现原子性。   单处... 阅读原文
2018-03-06 15:27:06 阅读(732) 评论(0)
摘要: 从事Java开发已有好几年,一些基础的东西容易忘记,该篇博客主要对JVM内存模型以及GC回收算法以自己的理解和认识做以记录。 内存模型 GC垃圾回收   1.内存模型 从上图可以看出,JVM分为 方法区,虚拟机栈,本地方法栈,堆,计数器 5个区域。其中最为重要的就是栈和堆。 栈:存放基本数据类型 和 引用 堆:... 阅读原文
2018-03-06 13:59:03 阅读(759) 评论(0)
摘要: 问题引出:   编写一个简单的交换值的小程序,如果我们只是简单地定义一个交换函数接收两个数,在函数内部定义一个中间变量完成交换。那么当我们把a,b两个实参传给这个函数时,往往得不到预期的结果。这是为什么呢? 在C语言和C#中:   在C语言中,如果我们运行下列代码: #include<stdio.h>... 阅读原文
2018-03-06 12:05:02 阅读(754) 评论(0)