自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

转载 java设计模式——适配器模式 Java源代码

前言:适配器模式就是把一个类的接口变换成客户端所能接受的另一种接口,从而使两个接口不匹配而无法在一起工作的两个类能够在一起工作。通常被用在一个项目需要引用一些开源框架来一起工作时,这些框架的内部都有一些关于环境信息的接口,需要从外部引入,但是外部的接口不一定能匹配,在这种情况下,就需要适配器模式来转换接口。情景:美国的插座,提供110伏电压;中国的插座,提供220伏电压。...

2019-02-12 22:05:00 150

转载 中文乱码之《字符编码:ASCII,Unicode 和 UTF-8》

参考文献:字符编码笔记:ASCII,Unicode 和 UTF-8一、ASCII 码我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111...

2019-01-25 23:46:00 1468

转载 java 中文乱码以及转码

查看此文章需要对字符集编码有一定的认识:任意门:字符集编码基础一、字符串的内部表示?重点:字符串在java(指在JVM中、在内存中)中统一用unicode表示( 即utf-16 LE) , 下面解释:对于String s = "你好哦!";如果源码文件(java文件)是GBK编码, 操作系统(windows)默认的环境编码为GBK,那么编译时, JVM将按照GBK编...

2019-01-25 23:46:00 541

转载 spring学习总结——高级装配学习四(运行时:值注入、spring表达式)

前言:  当讨论依赖注入的时候,我们通常所讨论的是将一个bean引用注入到另一个bean的属性或构造器参数中。bean装配的另外一个方面指的是将一个值注入到bean的属性或者构造器参数中。在没有学习使用怎么注入外部值时,我们正常是直接将值写死在代码中。如将专辑的名字装配到BlankDisc bean的构造器或title属性中。例如,我们可能按照这样的方式来组装BlankDi...

2018-11-26 22:12:00 108

转载 spring学习总结——高级装配学习三(Bean的作用域)

一、bean的作用域  在默认情况下,Spring应用上下文中所有bean都是作为以单例(singleton)的形式创建的。也就是说,不管给定的一个bean被注入到其他bean多少次,每次所注入的都是同一个实例。如果你所使用的类是易变的(mutable),它们会保持一些状态,因此重用是不安全的。在这种情况下,将class声明为单例的bean就不是什么好主意了,因为对象会被污染,...

2018-11-25 22:14:00 97

转载 spring学习总结——高级装配学习二(处理自动装配的歧义性)

  我们已经看到如何使用自动装配让Spring完全负责将bean引用注入到构造参数和属性中。自动装配能够提供很大的帮助。不过,spring容器中仅有一个bean匹配所需的结果时,自动装配才是有效的。如果不仅有一个bean能够匹配结果的话,Spring此时别无他法,只好宣告失败并抛出异常。更精确地讲,Spring会抛出NoUniqueBeanDefinitionException。  ...

2018-11-22 22:42:00 111

转载 spring学习总结——高级装配学习一(profile与@Conditional)

前言:  在上一章装配Bean中,我们看到了一些最为核心的bean装配技术。你可能会发现上一章学到的知识有很大的用处。但是,bean装配所涉及的领域并不仅仅局限于上一章 所学习到的内容。Spring提供了多种技巧,借助它们可以实现更为高级的bean装配功能。在本章中,我们将会深入介绍一些这样的高级技术。使用情景:  在开发软件的时候,有一个很大的挑战就是将应用程序从一个...

2018-11-18 20:53:00 222

转载 spring学习总结——装配Bean学习四(导入和混合配置)

情景:在典型的Spring应用中,我们可能会同时使用自动化和显式配置(JavaConfig)或者XML配置,幸好在Spring中,这些配置方案都不是互斥的。你尽可以将JavaConfig的组件扫描和自动装配和/或XML配置混合在一起。  关于混合配置,第一件需要了解的事情就是在自动装配时,它并不在意要装配的bean来自哪里。自动装配的时候会考虑到Spring容器中所有的bean,不管...

2018-11-17 22:12:00 155

转载 spring学习总结——装配Bean学习三(xml装配bean)

通过XML装配bean  Spring现在有了强大的自动化配置和基于Java的配置,XML不应该再是你的第一选择了。不过,鉴于已经存在那么多基于XML的Spring配置,所以理解如何在Spring中使用XML还是很重要的。但是,我希望本节的内容只是用来帮助你维护已有的XML配置,在完成新的Spring工作时,希望你会使用自动化配置和JavaConfig。一、创建XML配置规...

2018-11-17 21:30:00 102

转载 spring学习总结——装配Bean学习二(JavaConfig装配bean)

通过Java代码装配bean前言:上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean;使用场景:比如说,你想要将第三方库中的组件装配到你的应用中,在这种情况下,是没有办法在它的类上添加@Component和@Autowired注解的,因此就不能使用自动化装配的方案了。  在使用第三方jar包情况下,你必须要采用显式装配的方式。在...

2018-11-14 22:02:00 151

转载 spring学习总结——装配Bean学习一(自动装配)

一、Spring配置的可选方案Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系。但是,作为开发人员,你需要告诉Spring要创建哪些bean并且如何将其装配在一起。当描述bean如何进行装配时,Spring具有非常大的灵活性,它提供了三种主要的装配机制:在XML中进行显式配置。在Java中进行显式配置。(在JavaConfig中配置@bean...

2018-11-14 21:16:00 139

转载 Java中Class对象详解

参考文献:深入理解Java类型信息(Class对象)与反射机制一、RRTI的概念以及Class对象作用  认识Class对象之前,先来了解一个概念,RTTI(Run-Time Type Identification)运行时类型识别,其作用是在运行时识别一个对象的类型和类的信息;  这里分两种:传统的”RRTI”,它假定我们在编译期已知道了所有类型(在没有反射机制创建和使...

2018-11-07 21:51:00 107

转载 java泛型总结

参考文献一. 泛型概念的提出(为什么需要泛型)?  首先,我们看下下面这段简短的代码:public class GenericTest { public static void main(String[] args) { List list = new ArrayList(); list.add("qqyumidi"...

2018-11-04 22:19:00 72

转载 JAVA设计模式——代理(动态代理)

  传送门:JAVA设计模式——代理(静态代理)  序言:  在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所以本篇随笔就是对ja...

2018-10-30 22:32:00 216

转载 JAVA设计模式——代理(静态代理)

定义为其它的对象提供一种代理,以控制这个对象的访问使用场景当不想直接访问某个对象的时候,就可以通过代理1.不想买午餐,同事帮忙带2.买车不用去厂里,去4s店3.去代理点买火车票,不用去车站UML介绍下上面的UML图的意思,以购买火车票为例:定义代理的接口,买票(1)IProxy代理的对象,完成代理的任务,设置具体的代理,调用...

2018-10-30 21:32:00 70

转载 java--反射机制总结

一、什么是Java反射机制? JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的以及动态调用对象的方法的功能称为Java的反射机制。二、反射机制提供了哪些功能?在运行时判定任意一个对象所属的类在运行时构造任意一个类的对象;在运行时判定任意一个类所...

2018-10-27 23:38:00 109

转载 spring学习总结——介绍

介绍:以下博客的内容都是依据《spring实战4》这本书、spring4.0 来总结。一、spring作用  Spring可以做很多事情,它为企业级开发提供给了丰富的功能,但是这些功能的底层都依赖于它的两个核心特性,也就是依赖注入dependencyinjection,DI)和面向切面编程(aspect-orientedprogramming,AOP)。Spring框架关注于通过...

2018-10-07 18:43:00 120

转载 Maven学习总结(八)——使用Maven构建多模块项目

在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为domain(域模型层)、dao(数据库访问层)、service(业务逻辑层)、web(表现层),这样分层之后,各个层之间的职责会比较明确,后期维护起来也相对比较容易,今天我们就是使用Maven来构建以上的各个层。  项目结构如下:  system-parent     |----p...

2018-09-16 21:14:00 58

转载 Maven学习总结(七)——eclipse中使用Maven创建Web项目

一、创建Web项目1.1选择建立MavenProject  选择File->New->Project,如下图所示:    在New窗口中选择Maven->MavenProject。点击【next】如下图所示:  1.2选择项目路径  根据项目的实际情况选择项目的存放目录,也可以选择【UsedefaultWorks...

2018-09-16 21:13:00 81

转载 Maven学习总结(五)——聚合与继承

一、聚合  如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合  注意:maven打包生成的普通jar包,只包含该工程下源码编译结果,不包含依赖的内容;所以需要使用自定义插件实现打包来包含依赖包;1.1、聚合配置代码1 <modules>2 <module>模块一</module>3 ...

2018-09-16 20:54:00 79

转载 Maven学习总结(四)——Maven核心概念

一、Maven坐标1.1、什么是坐标?  在平面几何中坐标(x,y)可以标识平面中唯一的一点。1.2、Maven坐标主要组成groupId:组织标识(包名)artifactId:项目名称version:项目的当前版本packaging:项目的打包方式,最为常见的jar和war两种样例:    1...

2018-09-16 19:55:00 80

转载 Maven学习总结(三)——使用Maven构建项目

 maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项目的过程。一、构建Jave项目1.1、创建Jave Project  1、使用mvn archetype:generate命令,如下所示:mvn archetype:generate -DgroupId=com.mycompany.app -DartifactI...

2018-09-16 19:39:00 61

转载 maven——依赖管理

  管理包依赖是 Maven 核心功能之一,下面通过如何引入 jar 包;如何解析 jar 包依赖;包冲突是如何产生;如何解决包冲突;依赖管理解决什么问题;什么是依赖范围;使用包依赖的最佳实践等 6 个问题来介绍。如何引入 jar 包  在代码开发时,如果需要使用第三方 jar 包提供的类库,那么需要在 pom.xml 加入该 jar 包依赖。例如:使用 zookeepe...

2018-09-16 19:29:00 58

转载 git常用命令总结--廖雪峰老师Git教程命令总结

学习了廖雪峰老师的Git教程之后的命令总结,重点关于git和远程仓库的东西。如果没有学过,这是传送门下面这个图很重要一、git初始化本地仓库和配置  echo "想输入到文件的内容,一般为# 库名字" >> README.md  git init 初始化一个仓库  如果没有配置需要配置    git co...

2018-09-09 17:31:00 261

转载 git rebase 使用详解

rebase假设你现在基于远程分支"origin",创建一个叫"mywork"的分支。$ git checkout -b mywork origin现在我们在这个分支做一些修改,然后生成两个提交(commit).$ vi file.txt$ git commit$ vi otherfile.txt$ git commit...

2018-09-08 23:44:00 140

转载 UML类图关系图解

一、类结构在类的UML图中,使用长方形描述一个类的主要构成,长方形垂直地分为三层,以此放置类的名称、属性和方法。其中,一般类的类名用正常字体粗体表示,如上图;抽象类名用斜体字粗体,如User;接口则需在上方加上<<interface>>。属性和方法都需要标注可见性符号,+代表public,#代表protected,-代表private。...

2018-07-23 22:33:00 232

转载 JAVA设计模式总结之23种设计模式

上一篇总结了设计模式的六大原则《JAVA设计模式总结之六大设计原则》,这一篇,正式进入到介绍23种设计模式的归纳总结。一、什么是设计模式 ...

2018-07-23 20:41:00 69

转载 JAVA 设计模式遵循的六大基本准则

JAVA 设计模式遵循的六大基本准则一、单一职责原则:(Single Responsibility Pinciple)  一个类只负责一项职责。 当超过一项职责需要负责时,需要增加新的类来负责新的职责,而不是在类中个性代码。  如果一个类承担的职责太多,就是高度地职责耦合,非常不利于扩展功能。这是非常脆弱的设计。 容易发生修改一个地方而影响其他地方的情况。 ...

2018-07-21 22:31:00 156

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除