自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)

原创 Java后端组装树形结构数据

项目开发中,几乎无法避免的会遇到树形结构,今天和大家分享java后端如何处理数据为树形结构。1.封装测试实体类package com.ldl.cn.demo;import java.util.ArrayList;import java.util.List;public class Dept { private int id; private int...

2019-10-22 23:25:27 5751 3

原创 Java调用Python脚本实践

1.环境准备 这一步骤需要搭建java和python环境,流程极其简单。笔者的环境如下:2.Python脚本import sysimport reflag = 0if len(sys.argv) >= 2 and re.search("^\d+$", sys.argv[1]): flag = int(sys.argv[1]) * 10else :...

2019-09-06 17:35:38 112

原创 Java枚举,这一篇就够了

项目中枚举类型的使用,基本上可以分为两类:作为常量和自定义的操作。下面就以及其简单的方式说明如何使用:package com.ldl.cn;public class TestEnum { //①作为常量使用 public enum Week{ MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,S...

2019-08-15 21:23:37 67

原创 TestCase模拟Post请求

本文对Post请求进行简单的模拟,读者可以在TestCase中实践之。①引入httpclient的依赖: <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclien...

2019-08-06 22:39:16 80

原创 运用kaptcha生成验证码实践

本文与大家分享基本上每个系统、项目都会使用到的验证码生成技术,技术上采用kaptcha。①前期准备 创建一个基于maven的springboot项目,添加kaptcha依赖: <dependency> <groupId>com.github.axet</groupId> &lt...

2019-07-31 23:04:44 94

原创 跟着思维导图学MySQL

2019-07-21 21:58:36 66

原创 跟着思维导图学Java

2019-07-03 21:56:40 70

原创 Java遍历List、Map时添加、删除元素

本文主要演示遍历List、Map时的添加、删除元素操作。 关于List和Map相关的遍历问题,笔者已在《Java常用数据结构基础知识总结(二)》一文中做了简要介绍,如有需要的可以参考,此处不再赘述。源码如下:1.基于List的操作package com.ldl.cn.test;import java.util.ArrayList;import ...

2019-06-04 14:04:59 2589 1

原创 MyBatis-Plus自动生成各层代码实践

MyBatis-Plus是一个MyBatis框架的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。 本文将与大家分享、演示项目中很实用的代码生成。1.新建项目、引入依赖项目结构图如下: 2.编写生成类MyBatisPlusGenerator源码如下:pa...

2019-05-29 10:29:58 3412 1

原创 Java设计模式之访问者模式(Visitor)实践

访问者模式定义:主要将数据结构与数据操作分离。 需要处理稳定的数据结构和易变的操作耦合问题,此时可以使用访问者模式。以下代码演示访问者模式简单的实际运用:定义一个接口GoHome:package com.ldl.cn.VisitorModel;public interface GoHome { public void use(Transport t...

2019-05-12 10:06:57 116

原创 Java设计模式之原型模式(Prototype)实践

原型模式定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 在运行期需要建立和删除原型,此时可以使用原型模式。以下代码演示原型模式简单的实际运用:定义一个抽象类Ball:package com.ldl.cn.PrototypeModel;public abstract class Ball implements Cloneable{...

2019-05-11 16:31:27 100

原创 Java设计模式之备忘录模式(Memento)实践

备忘录模式定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 需要保存/恢复数据的相关状态场景,可以使用备忘录模式。以下代码演示备忘录模式简单的实际运用:定义一个类Memento:package com.ldl.cn.MementoModel;public class Memento { private S...

2019-05-11 16:30:52 83

原创 Java设计模式之中介者模式(Mediator)实践

中介者模式定义:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 想通过一个中间类来封装多个类中的行为,而又不想生成太多的子类,此时可以使用中介者模式。以下代码演示中介者模式简单的实际运用:定义一个类Taobao:package com.ldl.cn.MediatorModel;...

2019-05-11 16:30:17 78

原创 Java设计模式之解释器模式(Interpreter)实践

解释器模式定义:给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的句子。 如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子,此时可以使用解释器模式。以下代码演示解释器模式简单的实际运用:定义接口Expression:package com.ldl.cn.InterpreterM...

2019-05-11 16:29:31 79

原创 Java设计模式之享元模式(Flyweight)实践

享元模式定义:运用共享技术有效地支持大量细粒度的对象。 需要减少创建对象的数量,以减少内存占用和提高性能时,可以考虑使用享元模式。以下代码演示享元模式简单的实际运用:定义一个抽象类People:package com.ldl.cn.FlyweightModel;public abstract class People { public abstra...

2019-05-11 16:28:53 129

原创 Java设计模式之责任链模式(ChainOfResponsibility)实践

责任链模式定义:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。 有多个对象可以处理同一个请求,具体哪个对象处理该请求由运行时刻自动确定。此时可以使用责任链模式。以下代码演示责任链模式简单的实际运用:定义一个抽象类Worker:package com.ldl.cn.ChainO...

2019-05-11 16:28:17 76

原创 Java设计模式之生成器模式(Builder)实践

生成器模式定义:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 一些基本部件不会变,而其组合经常变化的时候。此时可以使用生成器模式。以下代码演示生成器模式简单的实际运用:定义一个Dinner类:package com.ldl.cn.BuilderModel;public class Dinner { private Str...

2019-05-11 16:27:37 173

原创 Java设计模式之桥接模式(Bridge)实践

桥接模式定义:将抽象部分与实现部分分离,使它们都可以独立的变化。 实现系统可能有多个角度分类,每一种角度都可能变化。此时可以使用桥接模式。以下代码演示桥接模式简单的实际运用:定义一个接口Travel:package com.ldl.cn.BridgeModel;public interface Travel { public void travel...

2019-05-11 16:26:56 250

原创 Java设计模式之代理模式(Proxy)实践

代理模式定义:为其他对象提供一种代理以控制对这个对象的访问。 想在访问一个类时做一些控制时,可以使用代理模式。以下代码演示代理模式简单的实际运用:定义一个接口People:package com.ldl.cn.ProxyModel;public interface People { void programming();}定义类JavaP...

2019-05-11 16:26:17 155

原创 Java设计模式之状态模式(State)实践

状态模式定义:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。 当代码中包含大量与对象状态有关的条件语句时,可以使用状态模式。以下代码演示状态模式简单的实际运用:定义一个接口State:package com.ldl.cn.StateModel;public interface State { void doPlay(Cont...

2019-05-11 16:25:32 144

原创 Java实现猜拳游戏

源码如下:package com.ldl.cn.java;import java.util.Scanner;public class Test { private static int PER_WIN = 0; private static int COM_WIN = 0; @SuppressWarnings("resource") pub...

2019-05-07 22:45:07 373

原创 微信公众号开发之获取access_token

进行微信公众号相关开发,获取access_token是首要一步,因为access_token是公众号的全局唯一接口调用凭据。公众号调用各接口时都需使用access_token。 access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。更多关于access_t...

2019-05-01 16:20:39 648

原创 Java设计模式之组合模式(Composite)实践

组合模式定义:将对象组合成树形结构以表示"部分-整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 项目中的部分、整体场景,如树形菜单结构、文件夹管理等,可以考虑使用组合模式。以下代码演示组合模式简单的实际运用:定义一个接口Node:package com.ldl.cn.CompositeModel;public interface ...

2019-04-28 23:22:59 205

原创 Java设计模式之迭代器模式(Iterator)实践

迭代器模式定义:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 当需要为遍历不同的聚合结构提供一个统一的接口时,可以使用迭代器模式。以下代码演示迭代器模式简单的实际运用:定义一个抽象迭代器接口Iterator:package com.ldl.cn.IteratorModel;public interface Iterato...

2019-04-28 23:22:06 46

原创 Java设计模式之模板方法模式(Template)实践

模板方法模式定义:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结 构即可重定义该算法的某些特定步骤。 有多个子类共有一些方法,且逻辑相同,这种情况下我们可以使用模板方法模式。以下代码演示模板方法模式简单的实际运用:定义一个抽象类Train:package com.ldl.cn.TemplateModel;pub...

2019-04-28 23:21:15 132

原创 Java设计模式之外观模式(Facade)实践

外观模式定义:为子系统中的一组接口提供一个一致的界面,使得子系统更加容易使用。 当客户端不需要知道(子)系统内部复杂联系时,可以使用外观模式。以下代码演示外观模式简单的实际运用:定义一个接口:package com.ldl.cn.FacadeModel;public interface People { void say();}分别定义Pe...

2019-04-24 23:10:14 105

原创 Java设计模式之适配器模式(Adapter)实践

适配器模式定义:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。 当现有对象不能满足新环境时,可以使用适配器模式。以下代码演示适配器模式简单的实际运用:定义一个目标接口:package com.ldl.cn.AdapterModel;public interface Target { void r...

2019-04-24 23:09:32 45

原创 Java设计模式之命令模式(Command)实践

命令模式定义:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。 当需要通过调用者调用、接受者执行命令这样的功能时,可以使用命令模式。以下代码演示命令模式简单的实际运用:定义一个接口Command:package com.ldl.cn.CommandModel;public int...

2019-04-24 23:08:46 64

原创 Java设计模式之单例模式(Singleton)实践

单例模式定义:保证一个类仅有一个实例,并提供访问它的方式。 当需要控制单一实例数或节省系统资源的时候,可以使用单例模式。以下代码演示单例模式简单的实际运用:定义一个Singleton类:package com.ldl.cn.SingletonModel;public class Singleton { private static Singlet...

2019-04-21 15:06:06 194

原创 Java设计模式之抽象工厂模式(AbstractFactory)实践

抽象工厂模式定义:提供一个创建一系列相互依赖对象的接口,而无需指定它们的具体类。 向客户端提供一个接口,当客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象,可以使用抽象工厂模式。以下代码演示抽象工厂模式简单的实际运用:分别定义接口ProductInterface1、ProductInterface2:package com.ldl.cn.Abst...

2019-04-21 15:05:12 137

原创 Java设计模式之工厂模式(Factory)实践

工厂模式定义:定义创建对象的接口,并由其子类决定实例化哪一个工厂类。 在不同条件下需要创建不同实例时,可以使用工厂模式。以下代码演示工厂模式简单的实际运用:定义一个接口ProductInterface:package com.ldl.cn.FactoryModel;public interface ProductInterface { void p...

2019-04-21 15:04:31 182

原创 Java设计模式之装饰者模式(Decorator)实践

装饰者模式定义:动态地给对象添加一些额外的职责。 项目中需要扩展类而又不希望增加过多子类的情况下,可以考虑使用装饰者模式。以下代码演示装饰者模式简单的实际运用:定义一个抽象的Stationery类:package com.ldl.cn.DecoratorModel;public abstract class Stationery { String ...

2019-04-20 00:26:02 85

原创 Java设计模式之观察者模式(Observer)实践

观察者模式定义:定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。 项目中一个对象状态发生变化,若需要通知到所有依赖其的对象,则我们可以使用观察者模式。以下代码演示观察者模式简单的实际运用:定义一个Subject(主题)接口:package com.ldl.cn.ObserverModel;public ...

2019-04-20 00:25:15 94

原创 Java设计模式之策略模式(Strategy)实践

策略模式定义:定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。 实际项目开发中,会有些类仅需要依靠行为就可以区分开来,这时候我们便可以利用封装,使用的时候按实际情况替换即可。 以下代码演示策略模式简单的实际运用:定义一个Strategy接口:package com.ldl.cn.StrategyModel;public int...

2019-04-20 00:23:19 3884

原创 环境搭建---Nginx环境搭建

      Nginx是一个高性能的HTTP和反向代理服务。本文与大家分享和交流Nginx的安装。一、下载与解压      官网下载压缩包,并根据个人喜好解压到相应目录下。      解压后的目录结构:二、安装相关依赖这一步执行:yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-deve...

2019-01-12 19:31:08 66

原创 MySQL数据库备份与恢复

        往往在项目开发中,少不了对数据库的备份与恢复需求。随着客户群体的不同,对数据库备份和恢复的细节要求又不尽相同。今天与大家讨论和交流主流数据库MySQL的简单的备份与恢复,并列举实例供大家参考。一、数据库备份(1)备份多个数据库以下命令将备份数据库test1、test2到/home/mysqlFiles目录下的backup1.sql:mysqldump -u root ...

2019-01-12 17:21:53 156

原创 Java大小端数据互转实践

        在实际项目开发中(特别是通信领域的项目开发)往往会遇到有关大小端数据转换问题——数据是以大端模式存储的,而机器是小端模式,必须进行转换,否则使用时会出问题。关于大小端模式的定义,其实就是数据的高(低)字节保存在低(高)内存地址中与否。直入主题,本文演示大小端数据转换基于Java的实现。编码实现:      public static  byte[] string2Bytes...

2018-12-13 16:05:52 2916

原创 环境搭建---Gradle环境搭建

         Gradle是一个基于Apache Ant和Apache Maven的项目自动化建构工具。本文与大家分享和交流Gradle的安装。一、下载与解压         官网下载压缩包,并根据个人喜好解压到相应目录下。         解压后的目录结构:二、配置环境变量       Gradle需要配置环境变量,并使之生效,键入vim /etc/profi...

2018-11-21 21:47:03 145

原创 Java基础之反射总结

      Java语言的反射机制,我们可以理解为:在运行状态中,对于任意一个实体类或对象,我们可以获取这个类的所有属性和方法。正因如此,使得Java的反射机制在流行框架如Spring、hibernate、MyBatis,设计模式如工厂模式、动态代理等应用广泛,当然JDK中也有许多底层代码也是灵活地运用了反射机制。本文和大家一起探讨学习Java语言的反射机制,主要介绍在运行时对某个类对象信息如类名...

2018-11-13 22:31:21 81

原创 Java基础之IO流小结

      Java程序中对于数据的输入和输出操作是以流的方式进行的。一个流可以被定义为一个数据序列。我们可以理解为:流是用来读写数据的。Java语言提供的java.io包可以很方便的让我们对数据进行输入和输出操作。本文将和大家分享学习Java IO流的相关基础知识。一、Java IO流总览      Java语言的java.io包提供了操作数据输入和输出的丰富的类库。通常我们可以根据数据流...

2018-11-10 21:10:36 97

空空如也

空空如也

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