摘要:
感悟
很奇怪,我怎么会想着写这么一篇博客——Java语言的学习体系,这不是大学就已经学过的课程嘛。博主系计算机科班毕业,大学的时候没少捧着Java教程来学习,不管是为了学习编程还是为了期末考个高分,都在这门语言的学习上下了不少功夫,得益于之前有C语言的基础,所以那时候并没有想象的吃力,但是因为Java语言是面向对象... 阅读原文
2019-06-13 16:14:01 阅读(2282) 评论(0)
摘要:
一、JdbcTemplate对象
1、JdbcTemplate简介
在Spring Boot2.0框架下配置数据源和通过JdbcTemplate访问数据库的案例。
SpringBoot对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中... 阅读原文
2019-06-13 15:06:03 阅读(2323) 评论(0)
摘要:
提到弱引用和软引用,想到内存的动态分配与内存回收。在Java语言中,有的区域的内存分配和回收都具备确定性(比如:程序计数器、虚拟机栈和本地方法栈),它们不需要考虑过多的回收问题;而有的区域的内存分配和回收都是动态的(比如,Java堆和方法区、一个接口的多个实现类需要的内存可能不一样)。垃圾收集器对堆进行回收的条件... 阅读原文
2019-06-13 14:41:04 阅读(2338) 评论(0)
摘要:
工厂设计模式
简介
工厂设计模式是最常见的设计模式之一,在工厂模式中,提供一种最佳的创建对象的方式,最大程度的实现代码的解耦
什么是工厂模式? 通过一个工厂类创建类似功能的不同实现类的父类或接口,不用关注你所获取的类是怎么实现的,只要通过工厂获取到对象即可使用
工厂模式需要的三大模块:
一个父类或者一个接口... 阅读原文
2019-06-13 14:25:16 阅读(2569) 评论(0)
摘要:
package com.app.common.util;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
imp... 阅读原文
2019-06-13 14:08:02 阅读(2065) 评论(0)
摘要:
所谓术业有专攻,一个程序单靠自身难以吃成大胖子,要想让程序变得血肉丰满,势必令其与外界多加交流,汲取天地之精华,方能练就盖世功夫。那么程序应当如何与外部网络进行通信呢?计算机网络的通信标准主要采取TCP/IP协议组,该协议组又可分为三个层次:网络层、传输层和应用层。其中网络层包括IP协议、ICMP协议、ARP协议等等... 阅读原文
2019-06-13 12:13:04 阅读(2242) 评论(0)
摘要:
顾名思义这个就是再消费的时候,不是之前的那哥用yield进行线程切换的操作,而是用线程等待阻塞的方式去执行,说实话我感觉效率不一定有之前那个好,
因为我对这种阻塞队列使用的时候,之前有发现阻塞队列,塞着塞着线程就会进入假死状态,这个很奇怪,但是有的时候又是好的,这个也不清楚到底是为什么
但... 阅读原文
2019-06-13 10:59:07 阅读(2408) 评论(0)
摘要:
spring 中常用的组件标签有:
@Controller:控制层
@Service:业务层
@Repository:数据层
@Component:普通的pojo注入到spring容器
组件注册方式:
@ComponentScan 扫描那些要注入到spring容器的组件的包路径
packa... 阅读原文
2019-06-13 08:59:04 阅读(2344) 评论(0)
摘要:
本文参考自Java高并发编程详解
1、创建并启动一个线程
下面是不添加线程的程序代码。
package concurrent.chapter01;
import java.util.concurrent.TimeUnit;
public class TryConcurrency {
... 阅读原文
2019-06-13 08:00:04 阅读(2281) 评论(0)
摘要:
一、目的
在代理模式(一)里面我们了解了静态代理、动态代理、CGLIB代理的基本使用。
这篇主要来将JDK动态代理底层的原理,以及有关$Proxy0、InvocationHandler相关的原理。
二、模拟Java底层动态代理实现
1、模拟TimeTankProxy但是封装在MyProxy中
只是将Tank... 阅读原文
2019-06-13 06:00:14 阅读(2380) 评论(0)