自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 资源 (15)
  • 收藏
  • 关注

原创 RocketMQ 事务消息发送

在一些对数据一致性有强需求的场景,可以用 RocketMQ 事务消息来解决,从而保证上下游数据的一致性。

2023-09-27 14:36:05 153

原创 ElasticSearch深度分页解决方案

Elasticsearch 是一个分布式、可扩展、实时的搜索与数据分析引擎,在使用过程中,有一些典型的使用场景,比如分页、遍历等。在使用关系型数据库中,我们被告知要注意甚至被明确禁止使用深度分页,同理,在 Elasticsearch 中,也应该尽量避免使用深度分页。这篇文章主要介绍 Elasticsearch 中分页相关内容!如果数据量小(from+size在10000条内),或者只关注结果集的TopN数据,可以使用from/size 分页,简单粗暴。

2023-09-26 10:16:56 753

转载 MySQL InnoDB的MVCC实现机制

MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。mvcc - @百度百科MVCC在MySQL InnoDB中的实现主要是为了提高数据库并发性能,用更好的方式去处理读-写冲突,做到即使有读写冲突时,也能做到不加锁,非阻塞并发读在学习MVCC多版本并发控制之前,我们必须先了解一下,什么是MySQL InnoDB下的当前读和快照读?当前读。

2022-09-23 16:33:48 298 1

原创 Redis事务详解

Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。总结说:redis事务就是一次性、顺序性、排他性的执行一个队列中的一系列命令。

2022-09-23 11:43:48 486

原创 总结git常用命令

git常用命令

2022-08-12 10:13:41 257

原创 Java8 判空新写法

目录引言API介绍实战使用引言在文章的开头,先说下NPE问题,NPE问题就是,我们在开发中经常碰到的NullPointerException.假设我们有两个类,他们的UML类图如下图所示图片在这种情况下,有如下代码user.getAddress().getProvince();这种写法,在user为null时,是有可能报NullPointerException异常的。为了解决这个问题,于是采用下面的写法if(user!=null){ Address

2022-04-21 10:55:20 207

原创 介绍一款简单好用Http客户端OkHttp

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结一. 基本的组件OkHttpClient它类似于一个浏览器,在应用中应该全局唯一Request它表示一次Http请求,可以设置url地址,请求头等信息RequestBody它表示http请求体Response它表示一次...............

2022-04-20 09:41:04 1385

原创 12 张图带你彻底理解 ZGC

ZGC(Z Garbage Collector) 是一款性能比 G1 更加优秀的垃圾收集器。ZGC 第一次出现是在 JDK 11 中以实验性的特性引入,这也是 JDK 11 中最大的亮点。在 JDK 15 中 ZGC 不再是实验功能,可以正式投入生产使用了,使用 –XX:+UseZGC 可以启用 ZGC。ZGC 有 3 个重要特性: 暂停时间不会超过 10 ms。 JDK 16 发布后,GC 暂停时间已经缩小到 1 ms 以内,并且时间复杂度是 o(1),这也就是说 GC 停顿时间是一个固.

2022-03-21 17:14:34 121

转载 Java中9种常见的CMS GC问题分析与解决

1. 写在前面| 本文主要针对 Hotspot VM 中“CMS + ParNew”组合的一些使用场景进行总结。重点通过部分源码对根因进行分析以及对排查方法进行总结,排查过程会省略较多,另外本文专业术语较多,有一定的阅读门槛,如未介绍清楚,还请自行查阅相关材料。| 总字数 2 万左右(不包含代码片段),整体阅读时间约 30min ,文章较长,可以选择你感兴趣的场景进行研究。1.1 引言自 Sun 发布 Java 语言以来,开始使用 GC 技术来进行内存自动管理,避免了手动管理带来的悬挂指针(

2022-02-18 11:22:26 677

原创 什么是 MySQL 的“回表”?

小伙伴们在面试的时候,有一个特别常见的问题,那就是数据库的回表。什么是回表?为什么需要回表?今天就来和大家聊一聊这个话题。1. 索引结构要搞明白这个问题,需要大家首先明白 MySQL 中索引存储的数据结构。这个其实很多小伙伴可能也都听说过,B+Tree 嘛!B+Tree 是什么?那你得先明白什么是 B-Tree,来看如下一张图:前面是 B-Tree,后面是 B+Tree,两者的区别在于: B-Tree 中,所有节点都会带有指向具体记录的指针;B+Tree 中只有叶子结点会带有指

2022-02-16 17:31:06 329

转载 20 个超级使用的 Java 8 Stream,玩转集合的筛选、归约、分组、聚合

先贴上几个案例,水平高超的同学可以挑战一下:1. 从员工集合中筛选出salary大于8000的员工,并放置到新的集合里。2. 统计员工的最高薪资、平均薪资、薪资之和。3. 将员工按薪资从高到低排序,同样薪资者年龄小者在前。4. 将员工按性别分类,将员工按性别和地区分类,将员工按薪资是否高于8000分为两部分。用传统的迭代处理也不是很难,但代码就显得冗余了,跟Stream相比高下立判。Java 8 是一个非常成功的版本,这个版本新增的Stream,配合同版本出现的Lambda...

2022-02-16 17:28:12 108

原创 G1回收器

目录前言一、G1的适用场景和特点1:适用场景2:特点二:理解G1的运行过程1:G1的Heap划分2:G1收集器运行:标记,回收.三:G1相关参数四:日志分析五:优化建议前言G1 GC(垃圾优先型垃圾回收器)适用于Java HotSpotVM 的低停顿、面向服务器的高可用分代式垃圾回收器。G1 GC使用并发和并行阶段实现其目标暂停时间,并保持良好的吞吐量。G1在jdk7u04中作为正式版发布,在jdk6U14中作为测试版发布,jdk6使用G1需要使用-XX:

2021-12-14 10:38:40 137

原创 WebClient响应式编程

目录前言一、WebClient是什么?二、使用步骤1.引入库2. 如何使用总结前言最近比较忙好久没更新博客了,正好项目中使用到了WebClient,之前也项目中也没有实际使用过。所以最近也一直在学习和整理WebClient的相关文档。一、WebClient是什么?WebClient 被称作响应式 web 客户端,如何理解响应式,其实就是快速响应用户。传统的 RestTemplate 正好和其相对,它不是快速响应用户,它会阻塞代码,直到 http 请求返回响

2021-12-08 19:37:26 843

转载 iOS Handle Refunds 处理退款 --- WWDC20

目录前言 一、如何收到苹果服务器通知呢? 二、使用步骤 1.引入库 2.读入数据 总结前言因最近公司产品苹果支付出现恶意退单现象,导致线上商品权益被大量在淘宝和咸鱼售卖。所以仔细查询苹果官方档退款,整理了一下退款通知流程方便大家接入。一、如何收到苹果服务器通知呢?服务器如何配置苹果通知请参考本人的这篇文章:https://blog.csdn.net/qq1353424111/article/details/108850566二、苹果退款通知1.消耗..

2021-07-03 22:08:09 1415 2

翻译 图解redis五种数据结构底层实现

redis有五种基本数据结构:字符串、hash、set、zset、list。但是你知道构成这五种结构的底层数据结构是怎样的吗? 今天我们来花费五分钟的时间了解一下。 (目前redis版本为3.0.6)动态字符串SDSSDS是"simple dynamic string"的缩写。 redis中所有场景中出现的字符串,基本都是由SDS来实现的所有非数字的key。例如 setmsg"hello world" 中的key msg.字符串数据类型的值。例如`` set msg "hello world"中

2021-06-25 23:00:31 276

原创 kafka 基于xml配置消费同一集群多个topic、不同集群下的多个topic

背景: 最近因项目需要用到kafka的消息实现程序的业务逻辑,但是配置消费者还是xml形式,于是研究一下怎么基于xml实现多个topic配置。场景一:基于xml文件配置消费同一集群下的多个topic1. 创建xml文件,内容如下<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://.

2021-04-27 11:25:33 918

转载 详解 TCP 连接的“ 三次握手 ”与“ 四次挥手

TCP connection客户端与服务器之间数据的发送和返回的过程当中需要创建一个叫TCP connection的东西;由于TCP不存在连接的概念,只存在请求和响应,请求和响应都是数据包,它们之间都是经过由TCP创建的一个从客户端发起,服务器接收的类似连接的通道,这个连接可以一直保持,http请求是在这个连接的基础上发送的;在一个TCP连接上是可以发送多个http请求的,不同的版本这个模式不一样。在HTTP/1.0中这个TCP连接是在http请求创建的时候同...

2021-01-06 14:29:32 119

原创 Spring的重试机制:浅谈@Retryable和@Recover注解

Spring的重试机制:浅谈@Retryable和@Recover注解  在我们的日常开发中,经查会遇到调用接口失败的情况,这时候就需要通过一些方法来进行重试,比如通过while循环手动重复调用或是通过JDK/CGLib动态代理的方式来进行重试。但是这种方法比较笨重,且对原有逻辑代码的入侵性比较大。while-retrycglib-retry  实际上,Spring已经为我们提供了封装好的重试功能,spring-retry,使我们可以通过@Retryable和@Reco..

2020-12-21 10:46:04 4180 3

转载 MySQL 索引优化分析:为啥你的SQL慢?为啥你建的索引常失效?

为什么你写的sql查询慢?为什么你建的索引常失效?通过本章内容,你将学会MySQL性能下降的原因,索引的简介,索引创建的原则,explain命令的使用,以及explain输出字段的意义。这些内容将帮助你了解索引,分析索引,使用索引,从而写出更高性能的sql语句。还在等啥子?案例分析我们先简单了解一下非关系型数据库和关系型数据库的区别。MongoDB是NoSQL中的一种。NoSQL的全称是Not only SQL,非关系型数据库。它的特点是性能高,扩张性强,模式灵活,在高并发场景表现得

2020-12-18 16:03:14 131 1

原创 Impossible WHERE noticed after reading const tables

Impossible WHERE noticed after reading const tables反馈的慢SQL,执行计划返回如下:Impossible WHERE noticed after reading const tablessql很简单:SELECT * FROM deposit_transaction WHERE request_Id = 'XXX'而且该表的request_id创建了唯一索引:很明显,这个字段是保持幂等操作的,通过数据库的唯一索引实现;每次数据落地前

2020-12-18 13:34:32 305

转载 【分布式】全局唯一ID生成策略

系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。比如在美团点评的金融、支付、餐饮、酒店、猫眼电影等产品的系统中,数据日渐增长,对数据库的分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求;特别一点的如订单、骑手、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯一ID的系统是非常必要的。而生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个

2020-11-27 10:15:42 247

转载 互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景

前言生活中用到的锁,用途都比较简单粗暴,上锁基本是为了防止外人进来、电动车被偷等等。但生活中也不是没有 BUG 的,比如加锁的电动车在「广西 - 窃·格瓦拉」面前,锁就是形同虚设,只要他愿意,他就可以轻轻松松地把你电动车给「顺走」,不然打工怎么会是他这辈子不可能的事情呢?牛逼之人,必有牛逼之处。那在编程世界里,「锁」更是五花八门,多种多样,每种锁的加锁开销以及应用场景也可能会不同。如何用好锁,也是程序员的基本素养之一了。高并发的场景下,如果选对了合适的锁,则会大大提高系统的性能,否则..

2020-10-23 14:26:16 103

转载 阿里巴巴开源限流系统 Sentinel 全解析

今年下半年阿里开源了自研的限流系统 Sentinel,官方对 Sentinel 的介绍中用到了一系列高大山的名词诸如 限流、熔断降级、流量塑形、系统负载保护等,还有漂亮的形容词诸如 轻巧、专业、实时等。作为技术消费者看到这样的广告词之后禁不住要大声感叹 —— NiuB!更要不得的是 Sentinel 的发布会由阿里的高级技术专家 子衿 主讲,她是一位女性开发者,这在男性主导额 IT 产业也算得上难得一见的奇观。我花了一整天的时间仔细研究了 Sentinel 的功能和代码,大致摸清了整体的架...

2020-10-14 11:55:37 552

原创 用户修改自动订阅商品如何获取服务器通知【苹果支付】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言最近开发公司苹果的包月商品支付,假设用户购买的包月商品,在自动续费管理页面修改包季商品,后端接口如何收到通知呢???通过查看官方文档了解,在开发者账户确实可以配服务器的通知地址,至于怎么配服务起通知这个pass吧,相信大家都可以找到如果找不到可以参考这个地址:https://help.apple.c...

2020-09-28 15:31:06 2447

原创 别再用if-else了,用注解去代替它吧

策略模式经常在网上看到一些名为“别再if-else走天下了”,“教你干掉if-else”等之类的文章,大部分都会讲到用策略模式去代替if-else。策略模式实现的方式也大同小异。主要是定义统一行为(接口或抽象类),并实现不同策略下的处理逻辑(对应实现类)。客户端使用时自己选择相应的处理类,利用工厂或其他方式。注解实现本文要说的是用注解实现策略模式的方式,以及一些注意点。话不多说,还是以最常 见的订单处理为例。首先定义这样一个订单实体类:@Datapublic class Order

2020-09-25 10:22:18 30406

原创 一篇文带你快速起步Apache Storm

内容大纲: Storm是什么 应用场景 Storm与Hadoop的关系 Storm怎么用 示例1:统计单词出现的次数 核心概念 集群架构 示例2:统计通话记录 1.Storm是什么Storm 是一个分布式实时大数据处理系统,可以帮助我们方便地处理海量数据,具有高可靠、高容错、高扩展的特点。Storm 是流式框架,有很高的数据吞吐能力,Strom 本身是无状态的,通过 ZooKeeper 管理分布式集群环境和集群状态。

2020-09-21 21:57:03 29371

原创 区分 Linux 的硬链接与软链接

从 inode 了解 Linux 文件系统Linux 的文件与目录现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux 保持了这一特性。为了便于文件的管理,Linux 还引入了目录(有时亦被称为文件夹)这一概念。目录使文

2020-09-21 21:52:43 30712

原创 Mysql修改存储过程相关权限问题

在使用mysql数据库经常都会遇到这么一个问题,其它用户定义的存储过程,现在使用另一个用户却无法修改或者删除等;正常情况下存储过程的定义者对它有修改、删除的权限;但是其它的用户就要相于的授权,不然无法查看、调用;mysql 中使用用户A创建一个存储过程,现在想通过另一个用户B来修改A创建的存储过程;以下记录就是基于这样的情况产生的;用户A对OTO3库的权限:mysql> show grants for 'a'@'%';+-------------------------------

2020-09-21 21:44:14 32064

原创 苹果支付验证回执单相关错误码

苹果支付错误码类型: status可能值21000:未使用HTTP POST请求方法向App Store发送请求。21001:此状态代码不再由App Store发送。21002:receipt-data属性中的数据格式错误,或者服务遇到了临时问题。再试一次。21003:收据无法认证。21004:您提供的共享密钥与您帐户的文件共享密钥不匹配。21005:收据服务器暂时无法提供收据。再试一次。21006: 该收据有效,但订阅已过期。当此状态码返回到您的服务器时...

2020-09-21 17:35:01 33583

原创 Java内存区域怎么划分的?

Java内存区域怎么划分的?运行时数据区域包含以下五个区域:程序计数器,Java虚拟机栈,本地方法栈,堆,方法区(其中前三个区域各线程私有,相互独立,后面两个区域所有线程共享)线程私用的部分(Java虚拟机栈,本地方法栈,程序计数器)Java虚拟机栈执行一个Java方法时,虚拟机都会创建一个栈帧,来存储局部变量表,操作数栈等,方法调用完毕后会对栈帧从虚拟机栈中移除。局部变量表中存储了Java基本类型,对象引用(可以是对象的存储地址,也可以是代表对象的句柄等)和returnAddress.

2020-09-18 15:12:57 37391

原创 高并发场景下,如何保证缓存与数据库一致性?

面试题:高并发场景下,如何保证缓存与数据库一致性?问题分析我们日常开发中,对于缓存用的最多的场景就像下图一样,可能仅仅是对数据进行缓存,减轻数据库压力,缩短接口响应时间。这种方案在不需要考虑高并发得去写缓存,高并发得读写缓存时,是不会有问题,但是如果是在高并发场景下,要保证缓存和数据库的一致性,至少需要解决以下问题:高并发写时的数据不一致问题高并发读写时,请求执行各步骤的顺序是不可控的。假设此时有一个请求A,B都在在执行写流程,请求A是需要将某个数据改成1,请求B是需要将某个数据改为

2020-09-18 10:06:20 42027 3

原创 Redis过期key是怎么样清理的?

在Redis中,对于过期key的清理主要有惰性清除,定时清理,内存不够时清理三种方法,下面我们就来具体看看这三种清理方法。(1)惰性清除在访问key时,如果发现key已经过期,那么会将key删除。(2)定时清理Redis配置项hz定义了serverCron任务的执行周期,默认每次清理时间为25ms,每次清理会依次遍历所有DB,从db随机取出20个key,如果过期就删除,如果其中有5个key过期,那么就继续对这个db进行清理,否则开始清理下一个db。(3)内存不够时清理当执行写入命令时

2020-09-18 10:05:50 40058

原创 MySQL是怎么解决幻读问题的?

问题分析首先幻读是什么?根据MySQL文档上面的定义The so-called phantom problem occurs within a transaction when the same query produces different sets of rows at different times. For example, if a SELECT is executed twice, but returns a row the second time that was not ret

2020-09-18 10:05:18 38411

原创 讲讲一条MySQL更新语句是怎么执行的?

这是在网上找到的一张流程图,写的比较好,大家可以先看图,然后看详细阅读下面的各个步骤。执行流程:1.连接验证及解析客户端与MySQL Server建立连接,发送语句给MySQL Server,接收到后会针对这条语句创建一个解析树,然后进行优化,(解析器知道语句是要执行什么,会评估使用各种索引的代价,然后去使用索引,以及调节表的连接顺序)然后调用innodb引擎的接口来执行语句。2.写undo loginnodb 引擎首先开启事务,对旧数据生成一个反向的UPDATE的语句(如果是INS

2020-09-18 10:04:46 37629

原创 说一说你对synchronized锁的理解?

synchronized锁的原理也是大厂面试中经常会涉及的问题,本文主要通过对以下问题进行分析讲解,来帮助大家理解synchronized锁的原理。1.synchronized锁是什么?锁的对象是什么?2.偏向锁,轻量级锁,重量级锁的执行流程是怎样的?3.为什么说是轻量级,重量级锁是不公平的?4.重量级锁为什么需要自旋操作?5.什么时候会发生锁升级,锁降级?6.偏向锁,轻量锁,重量锁的适用场景,优缺点是什么?1.synchronized锁是什么?锁的对象是什么?synchro

2020-09-18 10:03:41 38867 2

原创 谈一谈你对HashMap的理解?

HashMap的原理也是大厂面试中经常会涉及的问题,同时也是工作中常用到的Java容器,本文主要通过对以下问题进行分析讲解,来帮助大家理解HashMap的原理。1.HashMap添加一个键值对的过程是怎么样的?2.为什么说HashMap不是线程安全的?3.为什么要一起重写hashCode()和equal()方法?HashMap添加一个键值对的过程是怎么样的?这是网上找的一张流程图,可以结合着步骤来看这个流程图,了解添加键值对的过程。1.初始化table判断table是否为空或

2020-09-18 10:02:54 37932

原创 mysql面试题解答

一条MySQL更新语句的执行过程是什么样的?1.连接验证及解析客户端与MySQL Server建立连接,发送语句给MySQL Server,接收到后如果是查询语句会先去查询缓存中看,有的话就直接返回了,(新版本的MySQL已经废除了查询缓存,命中率太低了),如果是缓存没有或者是非查询语句,会创建一个解析树,然后进行优化,(解析器知道语句是要执行什么,会评估使用各种索引的代价,然后去使用索引,以及调节表的连接顺序)然后调用innodb引擎的接口来执行语句。2.写undo loginnodb

2020-09-17 15:06:32 39908

原创 MySQL数据库开发规范

所有的数据库对象名称必须使用小写字母并用下划线分割(MySQL大小敏感,见名知意,最好不超过32字符) 所有的数据库对象名称禁止使用MySQL保留关键字(如 desc、range、match、delayed 等,请参考 MySQL 官方保留字http://dev.mysql.com/doc/refman/5.7/en/keywords.html) 临时库表必须以tmp为前缀并以日期为后缀(tmp_) 备份库和库,必须以bak为前缀,日期为后缀(bak_) 所有存储相同数据的列名和列类型必须一致。(在

2020-09-17 14:54:05 37462

原创 java面试点总结

JAVA开发六大原则单一原则 : 一个类或一个方法只负责一件事情 里斯替换原则: 子类不应该重写父类已实现的方法,重载不应该比父类的参数更少 依赖倒置原则: 面向接口编程.(面向接口更能添加程序的可扩展性) 接口隔离原则: 接口中的方法应该细分,要合理的隔离开不同的功能到不同的接口中. 迪米特原则: 高内聚低耦合 开闭原则: 对修改关闭,对扩展开放总结: 用抽象构建框架,用实现扩展细节抽象类和接口的对比参数 抽象类 接口 默认的方法实现 它可以有默认的方法实现

2020-09-17 11:46:21 37458

转载 Spring Cloud构建微服务架构:服务网关(基础)【Dalston版】

通过之前几篇Spring Cloud中几个核心组件的介绍,我们已经可以构建一个简略的(不够完善)微服务架构了。比如下图所示:alt我们使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现;而服务间通过Ribbon或Feign实现服务的消费以及均衡负载;通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。为了使得服务集群更为健壮,使用Hystrix的融断机制来避免在微服务架构中个别服务出现异常时引起的故障蔓延。在该架构中,

2020-09-14 18:04:50 37363

阿里java面试问题大全

总结阿里java面试问题,有需要的小伙伴可以下载

2022-02-16

spark内核高清电子版

spark内核高清电子版

2022-02-16

mybatis 自动生成mapper、实体类可执行文件

mybatis 自动生成mapper、实体类可执行文件无需安装

2022-02-16

PowerShell-7.0.3-win-x64.zip

Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。

2020-09-11

Navicat Premium 11.0.10.0 64位 简体中文版(仅供学习使用)

Navicat是一套快速、可靠并价格相当便宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人员及中小企业的需要。Navicat 是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。

2020-09-09

jquery 表单验证

jquery form 表单验证,模板、form验证样例,简单便捷,容易上手,减少了代码前前台开发时间,更好直观体验。

2017-08-31

JavaScript学习指南

JavaScript学习指南

2017-06-20

Navicat最新版免注册

Navicat最新版免注册

2017-06-17

Hibernate实战

Hibernate实战

2017-06-17

清除Oracle中长时间持锁的session

彻底清除Oracle中长时间持锁的session

2017-06-17

Java Persistence with Hibernate

Java Persistence with Hibernate

2017-06-16

activiti工作流eclispe插件

activiti工作流eclispe插件

2017-06-16

spring中文开发文档

Spring Framework 的功能被组织成了 20 来个模块。这些模块分成 Core Container, Data Access/Integration, Web, AOP (Aspect Oriented Programming), Instrumentation, Messaging, 和 Test

2017-01-12

空空如也

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

TA关注的人

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