自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xp_lx12的博客

学习是一个漫长的过程,你需要一点一滴的积累,有一天就能实现自己的梦想。

  • 博客(254)
  • 资源 (17)
  • 收藏
  • 关注

原创 响应式编程中Mono和Flux的区别

当我们在使用Project Reactor,或者使用依赖于它的框架的时候。例如spring webflux,spring cloud gateway等,经常会用看到代码中有Mono和Flux两个术语。

2023-05-18 10:22:47 1293

转载 聊聊微服务中的 BFF 架构

因为我们共同维护一个 App、PC 界面、新零售、售后、加盟商,还有各自的小程序和 H5,所以为了实现业务解耦和分开排期,每个部门需要各自维护自己的 API 服务,而且 App 与 PC 前端也需要根据部门实现组件化,此时的架构如下图所示。不同客户端的页面细节的需求可能不一样,比如 App 的功能比重大,就会要求页面中多放一些信息,而小程序的功能比重小,同样的页面就会要求少放一些信息,以至于后台服务中同一个 API 需要针对不同客户端实现不同适配;以至于决策效率低下,而且还会出现职责划分不统一的情况。

2023-02-14 13:55:24 361

转载 docker安装sonarqube

SonarQube是管理代码质量的一个开放平台,可以快速定位代码中潜在的或者明显的错误。支持Java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等二十几种编程语言的代码质量管理与检测。

2022-12-12 16:16:32 3530 1

原创 彻底弄懂线程池ThreadPoolExecutor

线程池其实是一种池化的技术的实现,池化技术的核心思想其实就是实现资源的一个复用,避免资源的重复创建和销毁带来的性能开销。在线程池中,线程池可以管理一堆线程,让线程执行完任务之后不会进行销毁,而是继续去处理其它线程已经提交的任务。降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统 的稳定性,使用线程池可以进行统一的分配,调优和监控。

2022-10-28 14:02:20 1424 4

转载 掘地三尺搞定Redis与MySQL数据一致性问题

Redis 拥有高性能的数据读写功能,被我们广泛用在缓存场景,一是能提高业务系统的性能,二是为数据库抵挡了高并发的流量请求。今天来跟大家一起深入探索缓存的工作机制和缓存一致性应对方案。在本文正式开始之前,我觉得我们需要先取得以下两点的共识:缓存必须要有过期时间;保证数据库跟缓存的最终一致性即可,不必追求强一致性。数据一致性指的是:缓存中存有数据,缓存的数据值 = 数据库中的值;缓存中没有该数据,数据库中的值 = 最新值。反推缓存与数据库不一致:缓存的数据值 ≠ 数据库中的值;缓存或者数据库存在旧的数据,导致

2022-06-24 10:21:29 132

原创 分布式事务Seata总结

目录一、分布式事务简介概念事务分布式事务理论CAP定律BASE理论二、分布式事务解决方案三、Seata简介Seata术语四、Seata Server(TC)环境搭建详解具体操作五、Seata-AT模式整体机制一阶段二阶段具体图解六、TCC事务模式什么是TCCSeata的TCC模式TCC和AT区别特点:详细讲解七、Seata-XA模式XA模式什么是XA协议Seata的事务模式Seata的XA模式为什么要在Seata中支持XAXA的价值XA模式的使用总结基础概念:事务ACIDA(Atomic):原子性,构成事务

2022-06-20 15:20:49 372

翻译 NLP全路径学习推荐

熟悉简单的机器学习模型。例如:逻辑回归、决策树、朴素贝叶斯、隐马尔科夫模型、K-Means、正则化方法等;有部分高级机器学习基础更好。例如:集成学习(随机森林、GBDT、XGB、Stacking等)、条件随机场CRF、贝叶斯网络、支持向量机、主题模型等。熟悉简单的神经网络基础。例如:神经元模型、多层感知机、反向传播算法、激活函数的使用、Word2Vec、RNN、CNN等;有部分高级深度学习基础更好。例如:LSTM、BiLSTM-CRF、TextCNN、注意力机制Attention、Transformer、B

2022-06-09 15:16:48 1252

原创 Redis6.0、7.0 新特性整理

一、redis6.0特性1、众多新模块(modules)APIRedis 6中模块API开发进展非常大,因为Redis Labs为了开发复杂的功能,从一开始就用上Redis模块。Redis可以变成一个框架,利用Modules来构建不同系统,而不需要从头开始写然后还要BSD许可。Redis一开始就是一个向编写各种系统开放的平台。如:Disque作为一个Redis Module使用足以展示Redis的模块系统的强大。集群消息总线API、屏蔽和回复客户端、计时器、模块数据的AOF和RDB等。2、更好的

2022-05-31 16:56:39 6618 1

原创 7、Python文件操作

Python文件在Python中实现文件的读写操作其实非常简单,通过Python内置的open函数,我们可以指定文件名、操作模式、编码信息等来获得操作文件的对象,接下来就可以对文件进行读写操作了。这里所说的操作模式是指要打开什么样的文件(字符文件还是二进制文件)以及做什么样的操作(读、写还是追加)。具体的如下表所示:操作模式 具体含义 'r' 读取 (默认) 'w' 写入(会先截断之前的内容) 'x' 写入,如果文件已经存在会产生异常 'a' 追加,

2022-04-28 13:40:49 1442 1

原创 6、Python的Django快速入门

目录Django概述快速入门1、环境搭建2、安装django3、检查Django环境并使用django-admin命令创建Django项目(项目名称为hellodjango)。4、启动Django自带的服务器运行项目。5、修改项目的配置文件settings.py创建自己的应用总结Django概述Python的Web框架中,Django无疑是最有代表性的重量级选手,开发者可以基于Django快速的开发可靠的Web应用程序,因为它减少了Web开发中不必要...

2022-04-26 15:13:47 480

原创 5、Python深度解析线程和进程

什么是进程进程就是操作系统中执行的一个程序,操作系统以进程为单位分配存储空间,每个进程都有自己的地址空间、数据栈以及其他用于跟踪进程执行的辅助数据,操作系统管理所有进程的执行,为它们合理的分配资源。每个进程都有自己的独立内存空间,不同进程通过进程间通信来通信。由于进程比较重量,占据独立的内存,所以上下文进程间的切换开销(栈、寄存器、虚拟内存、文件句柄等)比较大,但相对比较稳定安全。什么是线程一个进程还可以拥有多个并发的执行线索,简单的说就是拥有多个可以获得CPU调度的执行单元,这就是所谓的线

2022-04-26 11:13:50 195

原创 4、Python面向对象编程

类和对象简单的说,类是对象的蓝图和模板,而对象是类的实例。类是抽象的概念,而对象是具体的东西。在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类(型)。当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定义出一个叫做“类”的东西。定义类在Python中可以使用class关键字定义类,然后在类中通过之前学习过的函数来定义方法,这样就可以将对象的动态特征描述出来,代码如下所示。class Stude

2022-04-25 15:19:56 285 2

原创 3、python中推导式的用法

定义推导式是Python中按照固定的条件表达式,自动生成数据的一种语法规则。推导式是从一个或者多个迭代器快速创建序列的一种方法。它可以将循环和条件判断结合,从而避免冗长的代码。推导式是典型的 Python 风格通过推导式,可以直接优化传统的通过循环结构和选择结构实现的列表操作,简化传统语法生成数据的规则或者过滤数据的规则。目前,Python存在着三种推导式,分别为:列表推导式、字典推导式和集合推导式。其中,最常用的就是列表推导式。列表推导式语法:[表达式foritemin 可迭代

2022-04-25 10:40:42 314

原创 2、Python中使用字符串、List、元祖、集合和字典

目录字符串定义常用方法字符串定义字符串类型是一种结构化的、非标量类型,所以会有一系列的属性和方法。数值类型是标量类型,也就是说这种类型的对象没有可以访问的内部结构;#单引号s1 = 'hello, world!'#双引号s2 = "hello, world!"# 以三个双引号或单引号开头的字符串可以折行s3 = """hello, world!"""print(s1, s2, s3, end='')常用方法1、+运算符实现字符串重复拼接

2022-04-25 09:56:51 1305

原创 1、Python函数和模块的使用

定义函数:在Python中可以使用def关键字来定义函数,命名规则跟变量的命名规则是一致的。在函数名后面的圆括号中可以放置传递给函数的参数,而函数执行完成后我们可以通过return关键字来返回一个值。定义代码如下:def fac(num): """求阶乘""" result = 1 for n in range(1, num + 1): result *= n #返回值 return result函数的参数在Python中,函数的

2022-04-24 17:42:21 521

原创 Elasticsearch 8 正式发布 新特性来了

摘要:Elasticsearch 是一个基于 Lucene 库的搜索引擎。它提供了一个分布式、支持多租户的全文搜索引擎,具有 HTTP Web 接口和无模式 JSON 文档。Elasticsearch 是用 Java 开发的,并在 Apache 许可证下作为开源软件发布。官方客户端在 Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby 和许多其他语言中都是可用的。Elastic 8.0 版通过改进 Elasticsearch 的矢量搜索功能、对现代自然语言处理模型

2022-03-16 15:29:15 8619

原创 Git代码回滚方法

一、撤销提交revert介绍1、revert的原理是,在当前提交后面,新增一次提交,抵消掉上一次提交导致的所有变化。它不会改变过去的历史,所以是首选方式,没有任何丢失代码的风险2、revert可以抵消上一个提交,那么如果想要抵消多个需要执行git revert 倒数第一个commit id 倒数第二个commit3、这个就常用于当你提交了一次commit之后发现提交的可能有问题就可以用到revert4、还有一种情景是已经有很多人提交过代码,但是想改之前的某一次commit记录又不想影.

2022-02-09 10:32:38 9523

原创 SpringBoot常用过滤器(Filter)和拦截器(Interceptor)的执行顺序和区别

一、过滤器 Filter过滤器( Filter),是 JavaEE 的标准,依赖于 Servlet 容器,使用的时候是配置在 SpringMVC 框架中是配置在web.xml 文件中的,可以配置多个,执行的顺序是根据配置顺序从上到下。在 SpringBoot 项目中也可以采用注解的形式实现。Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是设置字符集、控制权限、控制转向、做一些业务逻辑判断等。其工作原理是,只要你在web.xml文件配

2021-12-09 18:22:12 9035 1

转载 Centos7安装Elasticsearch

一、安装Elasticsearch切换到 /opt 目录,下载Elasticsearch,cd /optwget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz解压到当前目录tar -zxvf elasticsearch-6.2.4.tar.gz由于ElasticSearch可以接收用户输入的脚本并且执行,为了系统安全考虑,需要创建一个单独的用户用来运.

2021-09-07 10:32:07 367

转载 CentOS7下 MySQL定时自动备份的实现方法

第一:数据库自动备份1.创建备份目录这里我选择了把备份文件放在 /data/backup/mysql下面,把脚本放在 /data/backup 下面:[root@izwz99z5o9dc90keftqhlrz /]# mkdir -p /data/backup/mysql[root@izwz99z5o9dc90keftqhlrz /]# cd /data/backup2.创建脚本文件创建mysql_backup.sh[root@izwz99z5o9dc90keftqhlrz backup]#

2021-04-13 15:30:40 228

原创 常用开源软件总结

小程序商城litemall小商场系统,Spring Boot后端 + Vue管理员前端 + 微信小程序用户前端 + Vue用户移动端。项目地址:https://gitee.com/linlinjava/litemall开源pc端商城mall4j一个基于spring boot、spring oauth2.0、mybatis、redis的轻量级、前后端分离、防范xss攻击、拥有分布式锁,为生产环境多实例完全准备,数据库为b2b2c设计,拥有完整sku和下单流程的完全开源商城。项目地址:htt

2021-03-10 13:43:41 584

原创 activiti 流程设计总结

1、任务节点直接关联多节点分支任务节点多分支时,会根据任务0进行审批时指定审批1或22、使用排他网管的分支AOUNT表单数据字段,根据AMOUNT的值判断分支。3、并行网管分支执行2和3审批完成,该审批才结束。4、异步审批其中一个审批,审批即可完成。...

2021-02-20 14:28:22 659

转载 秒杀系统是怎么设计的?

背景我之前写过一个秒杀系统的文章不过有些许瑕疵,所以我准备在之前的基础上进行二次创作,不过让我决心二创秒杀系统的原因是我最近面试了很多读者,动不动就是秒杀系统把我整蒙蔽了,我懵的主要是秒杀系统的细节大家都不知道,甚至不知道电商公司一个秒杀系统的组成部分。我之前在某电商公司就是做电商活动的,所以这样的场景和很多解决方案我是比较清楚的,那我就从我自身去带着大家看看一个秒杀的设计细节以及中间各种解决方案的利弊,以下就是我设计的秒杀系统,几乎涵盖了市面上所有秒杀的实现细节:正文首先设计一个系统之前,我们需

2021-01-06 14:12:42 254 2

原创 面试:Spring 事务有哪些坑?

文章目录引言1. Spring 事务的原理2. Spring 什么情况下进行事务回滚3. Spring 事务什么时候失效3.1 发生自调用3.2 方法修饰符不是 public3.3 发生了错误的异常3.4 数据库不支持事务3.4. Spring 事务隔离和数据库事务隔离是不是一个概念3.5. Spring 事务控制放在 Service 层,在 Service 方法中一个方法调用 Service 中的另一个方法,默认开启几个事务3.6. 怎么保证 Spring 事务内的连接唯一性4 总结引言今天,我们来讲

2020-11-19 10:23:44 122

原创 【JVM面试系列2】Java虚拟机类加载机制及双亲委派模式分析

文章目录前言编译Class文件Class文件结构Class文件示例魔数主次版本号其他类加载机制加载(Loading)双亲委派模式破坏双亲委派模式常见异常ClassNotFoundException和NoClassDefFoundErrorClassNotFoundExceptionNoClassDefFoundError连接(Linking)验证(Verification)准备(Preparation)解析(Resolution)常见异常符号引用直接引用初始化(Initialization)初始化实战举例使

2020-11-16 15:09:20 138 1

原创 java8 stream统计、汇总、多字段分组、多个列汇总统计

文章目录前言一、GroupingBy收集器二、使用示例2.1 准备2.2 根据单一字段分组2.3 根据Map的key的类型分组2.4 修改返回Map的value的类型2.5 修改返回自定义类型2.6 根据多个字段分组2.7 得到分组结果的平均值2.8 得到分组结果的总计2.9 得到分组结果中的最大或最小值2.10 得到分组结果中某个属性的统计2.11 把分组结果映射为另外的类型2.12 修改返回Map的类型2.13 collectingAndThen包裹一个收集器,对其结果应用转换函数3 并发的分组Coll

2020-11-12 10:32:23 28555 10

原创 【JVM面试系列5】深入分析Java垃圾收集算法和常用垃圾收集器

文章目录前言如何确定无效对象引用计数法(Reference Counting)可达性分析算法(Reachability Analysis)GC Root引用的分类(1)强引用(2)软引用(3)弱引用(4)虚引用(Phantom Reference)垃圾收集算法:1、标记-清除(Mark-Sweep)算法标记-清除算法的缺点2、复制(Copying)算法复制算法的缺点复制算法在Java虚拟机的落地形式3、标记-整理(Mark-Compact)算法分代收集算法(Generational Collection)4

2020-11-10 16:36:46 313

原创 【JVM面试系列4】new Object()到底占用几个字节,面试常见问题

文章目录总结对象的指向Java内存模型对象的访问堆内存Young区Old区名词扫盲一个对象的人生轨迹图总结总结上一篇我们分析了Java虚拟机方法执行流程及方法重载和方法重写原理,并分析了方法的调用过程及原理,Java虚拟机栈是线程私有的,没有数据安全问题,而堆相比较于Java虚拟机栈而言更为复杂,因为堆是所有线程共享的一块内存空间,会出现线程安全性问题,而垃圾回收也主要是回收堆内空间,所以堆内的布局我们非常有必要深入去了解一下。现在就让我们继续来分析一下堆内布局以及Java对象在内存中的布局把。对象的

2020-11-06 16:14:22 103

原创 【JVM面试系列3】方法重载和方法重写原理分析

文章目录结论基本概念重载overload结论1.重载(overload)方法对重载方法的调用主要看静态类型,静态类型是什么类型,就调用什么类型的参数方法。2.重写(override)方法对重写方法的调用主要看实际类型。实际类型如果实现了该方法则直接调用该方法,如果没有实现,则在继承关系中从低到高搜索有无实现。3.java文件的编译过程中不存在传统编译的连接过程,一切方法调用在class文件中存放的只是符号引用,而不是方法在实际运行时内存布局中的入口地址。基本概念1.静态类型与实际类型,方法接

2020-11-06 11:02:14 84

原创 【JVM面试系列1】深入分析Java虚拟机堆和栈及OutOfMemory异常产生原因

Java虚拟机中的堆和栈 前言什么是JVMJava程序执行流程运行时数据区PC(program counter) Register(程序计数器)Heap(堆)模拟堆内OutOfMemoryError Method Area(方法区)Run-Time Constant Pool(运行时常量池)字面量String字符串去哪了intern()方法new String("lonely")创建了几个对象 符号引用 jdk1.7和1.8的实现方法区的差异模拟方法区OutOfMemoryErr.

2020-11-04 11:03:58 188

原创 Linux命令速查手册

查看Linux系统信息arch #显示机器的处理器架构(1)uname -m #显示机器的处理器架构(2)uname -r #显示正在使用的内核版本dmidecode -q #显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda #罗列一个磁盘的架构特性hdparm -tT /dev/sda #在磁盘上执行测试性读取操作cat /proc/cpuinfo #显示CPU info的信息cat /proc/int

2020-10-23 10:56:40 523

原创 MYSQL查询某字段中以逗号分隔的字符串的方法

首先我们建立一张带有逗号分隔的字符串。CREATE TABLE test(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),pname VARCHAR(20) NOT NULL,pnum VARCHAR(50) NOT NULL);然后插入带有逗号分隔的测试数据INSERT INTO test(pname,pnum) VALUES('产品1','1,2,4');INSERT INTO test(pname,pnum) VALUES('产品2','

2020-09-28 13:48:39 391

原创 java8 Lambda、Stream和函数式接口使用说明

1.lambda表达式《java8 Lambda表达式简介》《java8 lambda表达式,方法的引用以及构造器的引用》2.函数式接口《java8 函数式接口简介》《JAVA8 Function接口以及同类型的特化的接口》《JAVA8 Consumer接口》《JAVA8 Supplier接口》《JAVA8 UnaryOperator接口》《JAVA8 BiConsumer 接口》3.stream接口操作《java8 Stream接口简介》《 java8 St

2020-09-22 10:50:19 222

原创 就是要让你搞懂Nginx,这篇就够了!

1.Nginx知识网结构图Nginx是一个高性能的HTTP和反向代理服务器,特点是占用内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好nginx专为性能优化而开发,性能是其最重要的要求,十分注重效率,有报告nginx能支持高达50000个并发连接数1.1反向代理正向代理正向代理:局域网中的电脑用户想要直接访问网络是不可行的,只能通过代理服务器来访问,这种代理服务就被称为正向代理。反向代理反向代理:客户端无法感知代理,因为客户端访问网络不需要配置,

2020-09-09 09:16:41 189

原创 VIM常用快捷键

一、移动光标h,j,k,l 上,下,左,右ctrl-e 移动页面ctrl-f 上翻一页ctrl-b 下翻一页ctrl-u 上翻半页ctrl-d 下翻半页w 跳到下一个字首,按标点或单词分割W 跳到下一个字首,长跳,如end-of-line被认为是一个字e 跳到下一个字尾E 跳到下一个字尾,长跳b 跳到上一个字B 跳到上一个字,长跳0 跳至行首,不管有无缩进,就是跳到第0个字符^ 跳至行首的第一个字符$ 跳至行尾gg 跳至文首G 调至文尾5gg/5G 调至第5行gd 跳

2020-09-03 14:28:05 117

转载 【秒杀系统架构】分析与实战!

1 秒杀业务分析正常电子商务流程 查询商品; 创建订单; 扣减库存; 更新订单; 付款; 卖家发货; 秒杀业务的特性 低廉价格; 大幅推广; 瞬时售空; 一般是定时上架; 时间短、瞬时并发量高; 2 秒杀技术挑战假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最大并发请求数是10000,秒杀系统需要面对的技术挑战有:1、对现有网站业务造成冲击秒杀活动只是网站营销的一

2020-08-31 10:40:06 554

原创 IDEA显示Run Dashboard窗口

切记:关闭项目,或者关闭idea,否则下面的代码添加不上1. 找到项目中.idea文件下的workspace.xmlimage.png2. 编辑 workspace.xml并找到<component name="RunDashboard">image.png

2020-08-27 13:58:20 207

原创 JAVA 线上故障排查完整套路

线上故障主要会包括 CPU、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如 jstack、jmap 等工具也是不囿于一个方面的问题的,基本上出问题就是 df、free、top 三连,然后依次 jstack、jmap 伺候,具体问题具体分析即可。一、CPU一般来讲我们首先会排查 CPU 方面的问题。CPU 异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁 gc 以及上下文切换过多。而最常见的往往是业务逻...

2020-07-04 11:26:36 229

转载 使用JMeter进行简单POST的JSON操作

1.启动jmeter:在bin下以管理员身份运行jmeter.bat,启动jmeter2. 创建测试计划:默认启动jmeter时会加载一个测试技术模板,保存测试计划:修改名称为UseTestt,点击保存,选择保存路径,后面的步骤,每次添加或修改了了一些选项,软件并不会自动保存到jmx文件中,所以进行测试后,如果需要保存本次测试选项,要手动到“文件”菜单中保存一下。3. 添加线程组右键左边树中的测试计划“UseTestt”节点,“添 加”→”Threads”→”线程组”..

2020-06-06 16:37:07 723

转载 springboot整合nacos作为配置中心和注册中心

springboot整合nacos作为配置中心和注册中心springboot整合nacos作为注册中心和配置中心1.pom文件添加依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mav

2020-05-11 21:52:15 1344 1

mysql-8.0.16-winx64.zip

在安装时,避免权限问题出错我们尽量使用管理员身份运行CMD,否则在安装时会报错,会导致安装失败的情况!https://msd.misuland.com/pd/3127746505234974566安装教程

2020-05-08

5天修炼--高级项目管理师.pdf

信息系统项目管理师, 5天修炼--高级项目管理师,主要讲解九大管理。

2019-05-23

eosio镜像压缩文件

eosio/eos:v1.4.2,eosio镜像压缩文件,使用docker load --input ./eosio.tar导入成为镜像文件

2018-12-27

Java将pdf文件转换成String

Java将pdf文件转换成String,其中需要commons-logging-1.2.jar、fontbox-2.0.4.jar、pdfbox-2.0.4.jar这三个包就可以。

2018-05-23

Ubuntu14.04下mysql的安装包和mysql的依赖包libaio和libmecab

mysql的安装包和mysql的依赖包libaio1_0.3.110-3_amd64和libmecab, libmecab2_0.996-1.3_amd64

2018-01-15

spring-lib3.2.2 包

spring-lib3.2.2 包!!!!!!!!!!!!!!!!!!!!!!!!!

2017-09-29

Git-2.11.0-64-bit安装包

windows版的git客户端,Git-2.11.0-64-bit安装包!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

2017-09-08

pgadmin3-1.22.1安装包

pgadmin3-1.22.1安装包

2017-08-22

jQuery高级编程 高清PDF完整版带目录和源代码

jQuery高级编程 高清PDF完整版带目录和源代码

2017-08-18

阿里巴巴Java开发手册v1.2.0-1

阿里巴巴Java开发手册v1.2.0-1

2017-08-09

阿里巴巴Java开发手册(正式版)

阿里巴巴Java开发手册(正式版)

2017-08-09

精通Spring+4.x++企业应用开发实战 源码

精通Spring+4.x++企业应用开发实战 源码

2017-08-07

java开发实战经典pdf和源码

JAVA开发实战经典扫描pdf文档和源代码.

2017-06-09

不用安装oracle数据库客户端Oracle安装包instantclient-basic-win32

不用安装oracle数据库客户端Oracle安装包instantclient-basic-win322

2017-03-27

spring+mybatis企业应用实战源代码

spring+mybatis企业应用实战源代码

2017-03-26

spring4.2.0包

spring4.2.0开发包

2017-03-26

空空如也

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

TA关注的人

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