- 博客(63)
- 收藏
- 关注
原创 Docker的核心与安装
Docker的三大核心Docker镜像: Dcoker镜像类似于虚拟机镜像,可以将它理解为一个面向Docker引擎的只读模板,包含了文件系统。Docker容器: Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器都是互相隔离、互不乐见的。Docker仓库: Dcoker仓库类似于代码仓库,是...
2019-12-03 11:56:28 213
原创 什么是Docker?
如果说个人主机时代大家比拼的关键是CPU主频的高低和内存的大小,那么云计算时代,虚拟化技术无疑是整座信息技术大厦最核心的一块基石。伴随着信息技术产业的发展,虚拟化技术已经应用到各种关键场景中。从最早上世纪60年代IBM推出的大型主机虚拟化到后来X86平台上的虚拟化,虚拟化技术自身也在不断丰富和创新。什么是DockerDocker是基于Go语言实现的云开源项目,诞生于2013年初,最初发起者是d...
2019-11-27 12:09:18 215
原创 LINUX系统下jdk安装与部署
最近这段时间在公司实习,也在学习不少东西,目前都是在linux系统下的一些东西的学习,接下来就会抽时间把最近学习和了解的一些东西总结出来。linux下jdk的安装与部署目前在公司实习要学习greenplum数据库和docker容器,但都是基于linux系统之下的,以后还是要对linux系统加强熟练,下面就先记录一个简单的linux下jdk的下载安装与部署,下载jdk对后面的学习都会用到,像T...
2019-11-20 15:18:00 799
原创 内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类。内部类是一种非常有用的特性,因为他允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可视性。然而必须要了解,内部类统一组合是完全不同的概念,这一点很重要。在最初,内部类看起来就像是一种隐藏机制:将类至于其他类的内部。但是,你将会了解到,内部类远不止如此,他了解外围类,并能与之通信;而且你用内部类写出的代码更优雅而清晰,尽管并不总是这样...
2019-08-25 17:33:59 205 1
原创 Spring框架--spring的jdbcTemlate
一、Spring对不同的持久化支持Spring为各种支持的持久化技术,都提供了简单操作的模板和回调ORM持久化技术模板类JDBCorg.springframework.jdbc.core.JdbcTemplateHibernate5.0org.springframework.orm.hibernate5.HibernateTemplate––IBat...
2019-08-17 19:13:44 329
原创 Spring框架--AOP注解形式
同样的spring的AOP也有注解形式,而且要比xml配置形式简单的多,具体内容与xml配置方式差不多,下面我们就简单实现一下AOP的注解形式。1.xml配置文件:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" x...
2019-08-17 15:58:27 124
原创 Spring框架--AOP(xml配置形式实现)
一、AOP的简介AOP的全称是 Aspect-Oriented Programming,即面向切面编程(也称面向方面编程)。它是面向对象编程(OOP)的一种补充,目前已成为一种比较成熟的编程方式。在传统的业务处理代码中,通常会进行事务处理、日志记录等操作。虽然OOP可以通过组合或者继承的方式来达到代码的重用,但如果要实现某个功能(如日志记录),同样的代码仍然会分散到各个方法中。这样如果想要关闭...
2019-08-17 15:42:28 150
原创 Spring框架--基于IOC的案例
今天我们实现一个小小的IOC的案例,通过spring框架对service层和dao层对象进行管理,c3p0连接池和数据库相连接,通过service对象调用方法实现对数据库的增删改查。1.首先创建一个数据库,在eesy库下创建一张表account,如图:2.引入依赖:<?xml version="1.0" encoding="UTF-8"?><project xmlns=...
2019-08-17 14:43:17 189
原创 Spring框架--IOC(注解形式)
一、注解形式的概述:spring的注解形式相对于xml配置方式在编码的过程中要简单很多,他不用再去繁琐的将要spring管理的类去注册到配置文件中,还有一些配置信息也不用写在xml配置文件中,可以写在一个类里面。下面我们就将对一些基本的注解进行讲解,并且以上一个xml配置方式的案例来实现 springIOC的注解形式,最后再对一些新的注解进行介绍二、基本注解的介绍:首先我们需要了解一些基本的...
2019-08-17 14:08:10 185
原创 Spring框架--IOC(配置形式)
一、创建bean的三种方式:1.使用默认构造函数创建:在spring的配置文件中适用bean标签,配以id和class属性之后,且没有其他属性和标签时采用的就是默认构造函数创建bean对象,此时如果此类中没有默认构造函数,则对象无法创建(1)xml配置文件:<bean id="accountService" class="first.com.service.impl.AccountS...
2019-08-15 14:48:34 122
原创 Spring框架--简单介绍
简介Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IOC(Inverse Of Control:控制反转)和AOP(Aspect Oriented Programming:面向切面编程)为内核,提供了展现层Spring MVC和持久层 SpringJDBC以及业务层事务管理众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Ja...
2019-08-15 13:58:44 164
原创 Mybatis框架--动态SQL
什么是动态SQL?MyBatis 的强大特性之一便是它的动态 SQL,它极大的简化了我们拼接SQL的操作。动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似。MyBatis 采用功能强大的基于 OGNL 的表达式来消除其他元素。ifchoose(when,otherwise):分支选择 带了break的swtich-casetrim(where,...
2019-08-05 14:36:17 171
原创 Mybatis框架--封装Map和List返回结果
select记录封装Map1.编写映射文件:<select id="getEmpByMap" resultType="Bean.Employee"> select * from tbl_employee where id=#{id} and last_name=#{lastName}</select>2.dao层接口方法:public inter...
2019-08-05 13:31:26 756
原创 Mybatis框架--映射文件操作
一、增删改查接下来我们通过映射文件的操作来实现mybatis对数据库的增删改操作1.EmployeeMapper.xml文件:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/...
2019-08-05 11:48:48 188
原创 Mybatis框架--全局配置文件中的标签讲解
全局配置文件中的标签在Myabatis框架中的全局配置文件mybatis-config.xml是十分重要的,里面也有许多标签来配置和部署来实现不同的功能,今天我们就来分享一下,全局配置文件中的几个重要的标签1.properties 标签mybatis使用 properties 来引入mybatis使用properties配置文件,里面有两个信息resouce:引入类路景观url:引入磁盘...
2019-08-03 16:39:53 506
原创 Mybatis框架--基本介绍
Mybatis介绍Mybatis是一个持久层框架,ORM框架,是Apache下的顶级项目,支持定制化SQL、存储过程以及高级映射。Mybatis避免了JDBC编程编程过程所有的JDBC的代码和手动设置参数以及获取结果集。主要让开发人员机制精力放在SQL上,通过mybatis提供的映射方式获取数据对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R...
2019-08-03 15:59:42 487
原创 连接池(c3p0)
一、连接池的介绍连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。这项技术能明显提高对数据库操作的性能。连接池的好处:(1)对于大多数应用程序,当它们正在处理事务时,仅需要能够访问JDBC连接的 1 个线程。当不处理事务时,这个连接就会闲置(造成资源的浪费)。相反,连接池允许闲置的连接被其它需要的线程使用。(2)当一个线程需要用 JDBC 对一个 数据库操作...
2019-08-03 11:26:51 206
原创 Mysql索引及索引的优化
索引是什么?索引创建在表上,对数据库表中的一列或多列的值进行排列的一个结果。它是表中一列或多列值得集合和相应的指向表中物理标识这些值得数据页的逻辑指针清单。优点:提高查询效率...
2019-07-31 16:37:07 99
原创 Mysql基本的SQL语句
Mysql数据库Mysql数据库设计C/S客户端服务端模型,客户端发起插入、修改、删除等操作请求,服务端可以进行对应响应,能够支持集群处理,而且能够中从复制读写分离等操作,提高效率。Mysql服务器采用IO复用和线程池来实现高并发的数据库请求。基本的SQL语句1.创建数据库create database 库名;2.查看数据库show databases;3.删除数据库drop da...
2019-07-27 13:39:22 108
原创 Mysql数据库的安装与部署
Java Jdbc 课程内容是在 Windows 环境下展开教学的,Jdbc 是通过 Java 语言对数据库进行的操 作的媒介。我们在这一部分主要讲解 Java 程序通过 Jdbc 对 MySql 数据库的操作。所以我们需要先在电脑 上安装 Oracle 旗下的 MySql。Windows 安装 Mysql 开发环境需要做三件事情:1.下载 Mysql 压缩文件2.解压 Mysql(解压即可...
2019-07-27 11:27:14 595
原创 JVM内存模型
1.JVM生命周期1.JVM实例的诞生当启动一个Java程序时,一个jvm实例就产生了,任何一个拥有 public static void main (String[] args) 函数的class都可以作为JVM实例运行的起点2.JVM实例的运行mian()作为该程序的初始线程的起点,任何其他线程均由该线程启动。JVM内部有两种线程:守护线程和非守护线程。main()属于非守护线程,守护...
2019-07-26 16:10:49 109
原创 垃圾回收
GC(Garbag Collection)基本原理将内存中不在被使用的对象回收,GC中用于回收的方法称为收集器,由于GC消耗一些资源和时间,Java在对象的生命周期特征分析后,按新生代,旧生代的方式对对象进行收集,尽可能缩短GC对应用造成暂停。对新生代的对象收集称为 Minor GC对旧生代的对象收集称为 Full GC程序中主动调用System.gc()强制执行为Full GCJV...
2019-07-26 15:40:05 83
原创 Netty框架
1.Netty的简介Netty是一个高性能,异步事件驱动的NIO框架,他提供了对TCP、UDP和文件传输的支持。使用更高效的 socket 底层,对epoll空轮询引起的cpu占用飙升在内部进行了处理,避免直接使用NIO陷阱,简化了NIO处理的方式。采用多种decoder/encoder支持,对TCP粘包/分包进行自动化处理。可接受处理线程池,提高连接效率,对重连,心跳检测的简单支持。可配置I...
2019-07-25 18:01:13 164
原创 NIO的介绍
NIO是什么?是同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有IO请求时才启动一个线程进行处理。连接数目多且连接比较短(轻操作)的架构,比如聊天服务器。JDK1.4引入的一种新型IO。对BIO的一种改进,基于Reactor模型。一个Socket连接其实只有在一小部分情况下才会发生数据 传输IO操作,大部分...
2019-07-25 16:46:29 219
原创 BIO与AIO
BIO与AIO的区别BIO:同步阻塞IO买服务器实现模型为一个连击一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善,适用于连接数目比较小且固定的架构。传统的同步阻塞模型BIO是通过Socket和ServerSocket实现的,ServerSocket监听端口,Socket进行连接。这种情况不适合处理...
2019-07-25 16:21:32 130
原创 五种IO模型
在Linux操作系统中,对于一次读取IO的请求操作,数据并不会直接拷贝到用户程序的用户空间缓冲区。它首先会被拷贝到操作系统的内核空间,然后才会从操作系统内核缓冲区拷贝到用户缓冲区。的IO操作分为两步:1.等待数据到达内核缓冲区2.将内核空间数据拷贝到用户空间网络IO 的本质是Socket的读取,Socket在Linux中被当成流。所以网络IO也是对流的读取。下面以read()为例:...
2019-07-25 15:55:56 101
原创 网络编程的学习(二)——TCP和UDP
1.TCP协议简介TCP是TCP/IP协议栈中的传输层的协议,TCP协议又叫传输控制协议(Transport Control Protocal),是面向连接的,可靠的字节流服务。它的可靠性体现在:1,滑动窗口机制;2,3次握手建立连接;3,一定的拥塞避免算法;4,流量控制;5,以及一定的超时重传机制。本文不介绍实现原理。首先我们要学习TCP协议,首先当然要了解TCP报文的报文格式,下面就是TC...
2019-03-10 16:49:29 166
原创 网络编程的学习(一)
1.网络的概念计算机网络通过通信介质、通过设备和网络以及网络传输协议将分散在不同地点的端口连接,实现资源共享和数据传输的系统。通信设备:信号塔、路由器、交换机传输介质:光纤、电缆、光波、双绞线传输协议:TCP/IP**网络编程:**编写程序代码将联网的两个或者多个设备(计算机)直接进行连接的过程OSI:(Open System Interconnection)网络开发互联协议2. 计...
2019-03-10 14:32:47 290
原创 ThreadPoolExecutor
ThreadPoolExecutor源码的学习(基于JDK 1.7)1.继承关系ThreadPoolExecutor就是我们经常说的大名鼎鼎的线程池,Executors工厂创建的线程池都是该类的实例,通过调节参数的大小创建适用于各个场景的线程池。通过源码我们了解到ThreadPoolExecutor继承了AbstractExecutorService,该抽象类为线程池提供了默认实现。2....
2019-02-17 16:58:21 1411 2
原创 线程池的基础理解
线程池1.理解什么是线程池线程池从字面意思来看,是指管理一组同构工作线程的资源池。现代机器CPU基本都是多核系统,利用多线程可以明显提高系统的效率,但是如果不控制线程的使用,会给系统带来严重的后果,因此,JDK提供了线程池供我们使用。线程池是与工作队列(Work Queue)密切相关的,其中在工作队列中保存了所有等待执行的任务。工作者线程(Worker Thread)的任务很简单:从工作队列获...
2019-02-12 11:59:31 164
原创 实现简单的麻将游戏
实现简单的麻将游戏描述:实现功能点实现麻将的准备牌、洗牌、发牌、看牌知识点集合知识项目思路思路介绍Icon麻将的功能需求分析具体规则:组装136张麻将条、筒、万加到一起的数目是108张东、西、南、北风、红中、白皮、发财是28张,总共136张将136张牌顺序打乱 4.将136张牌顺序打乱四个玩家参与游戏,四人交替摸牌,每次4张,3次,之后庄家摸2张,两张之间个索引相...
2018-12-13 13:24:51 2961
原创 猜拳游戏项目
猜拳游戏项目项目功能点:1猜拳游戏,每一把游戏进行三局,可以玩多把,每一局赢者积一分,输者不扣分,平局不计分,三局决胜负。2两人进行猜拳游戏。可以随机选取要比赛的对手。考察知识点:Java类和对象设计思路:1有两方,甲方:玩家(Player) 乙方:电脑(Computer)模拟 进行猜拳游戏2 猜拳开始:赢者积一分,平局不计分,输者不扣分。每次三局决胜负3 每一把游戏决定最终的胜...
2018-12-13 13:19:15 2558
原创 数字化婚姻配对尝试
数字化婚姻配对尝试建立一个模型,来模拟推导社会男女择偶过程。题目内容:为了模型简化,一个人的特性指标有三个,这里假设为财富、样貌、品格,每个指标均可取值1-100之间任意数字。同样也对这3项指标有自己的需求。这3个需求值取值范围都在1-98间,当然三者的和必须为100.所以任意一个人可以用以下数组来表述:G(A、B、C、A1、B1、C1)G代表男,M代表女。举例G11(80、50、40、...
2018-12-13 13:06:10 246
原创 IO总体框架介绍二
IO总体框架介绍二IO流的体系结构在学习IO流这里,我们将会接触到40多个不同的类,这些类看上去很杂乱,但实际上很有规则,如下图,是已经划分好的框架图:主要的流的体系图:每个输入流都有相应的输出流输入/输出流体系中常用的流的分类表:注:表中粗体字所标出的类代表节点流,必须直接与指定的物理节点关联:斜体字标出的类代表抽象基类,无法直接创建实例。四大基类流介绍InputStream...
2018-12-04 17:50:24 162
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人