- 博客(436)
- 资源 (7)
- 收藏
- 关注
原创 Spring Cloud OAuth2 认证流程
Spring Cloud OAuth2 认证流程本文基于官方提供的示例进行讲解,文中部分源码使用的 5.0 版本,基本上没太大差别。建议配合本文提供的关键代码和官方示例结合查看,可以运行官方示例查看效果。 认证服务器:https://github.com/spring-cloud-samples/authserver SSO客户端:https://github.com/spring-c
2017-09-24 17:25:29 36498 9
原创 Spring @Configuration 和 @Component 区别
Spring @Configuration 和 @Component 区别 一句话概括就是 @Configuration 中所有带 @Bean 注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例。下面看看实现的细节。@Configuration 注解:@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Docu
2017-09-23 17:25:08 120588 30
原创 JMX 入门(三)认证加密
这篇博客参考官方教程以及个人的理解,通过实际的代码和操作来学会使用 JMX。 JMX 入门(一)基础操作 JMX 入门(二)Java客户端 JMX 入门(三)认证加密 认证连接在JMX 入门(一) 中,我们最后通过下面的命令开启了远程访问功能(命令过长时,win 使用 ^ 换行,Linux 使用 \换行)。java -Dcom.sun.manageme...
2017-08-26 12:42:22 6091
原创 MyBatis 示例之存储过程(三)
在开始阅读本篇前,建议先看前两篇: MyBatis 示例之存储过程(一) http://blog.csdn.net/isea533/article/details/76358365 MyBatis 示例之存储过程(二) http://blog.csdn.net/isea533/article/details/77148552本示例是《MyBatis 从入门到精通》 书中第三
2017-08-26 09:05:31 3120
原创 MySql 5.7 UPDATE 和 DELETE 导致的 error code [1093]
错误信息 Error: 1093 SQLSTATE: HY000 (ER_UPDATE_TABLE_USED) Message: You can’t specify target table ‘%s’ for update in FROM clause 在 MySql 中,由于安全原因,类似下面的 SQL 是无法执行的:delete from tab
2017-08-24 16:03:18 2324
原创 JMX 入门(二)Java客户端
这篇博客参考官方教程以及个人的理解,通过实际的代码和操作来学会使用 JMX。 JMX 入门(一)基础操作 JMX 入门(二)Java客户端 JMX 入门(三)认证加密 创建 JMX 客户端前面一篇中,通过 MBeanServer 发布的 JMX 服务称之为服务端,我们已经知道如何通过 JConsole 作为客户端连接 JMX 服务,在这一篇中,我们将通过 Ja...
2017-08-21 20:07:33 3769 2
原创 JMX 入门(一)基础操作
JMX 官方教程:http://docs.oracle.com/javase/tutorial/jmx/index.html这篇博客参考官方教程以及个人的理解,通过实际的代码和操作来学会使用 JMX。 JMX 入门(一)基础操作 JMX 入门(二)Java客户端 JMX 入门(三)认证加密 JMX 简介 不想看简介的可以直接跳到标准MBean...
2017-08-20 18:44:56 8060 2
原创 批量上传 Jar 包到 Maven 私服的工具
基本信息适用环境:内网环境下的 Maven 私服,无法连接外网(或者需要翻墙),需要通过其他手段下载完依赖后导入到内网私服的情况。功能描述:单个依赖包含的pom,jar等文件应该在一个单独的目录中,可以指定下面的路径,上传 gson 到私服。 还可以指定到 f:\\.m2\\repository\\Gson\\gson,上传 gson 的多个版本。也可以直接 f:\\.m2\\repositor
2017-08-15 17:10:08 20313 7
原创 MyBatis 示例之存储过程(二)
在开始阅读本篇前,建议先看前一篇: MyBatis 示例之存储过程(一) http://blog.csdn.net/isea533/article/details/76358365本示例是《MyBatis 从入门到精通》书中第二个存储过程的例子,有关本示例的基础环境,可以从 http://mybatis.tk 或者 https://github.com/mybatis-book/book
2017-08-13 18:09:01 2255 3
原创 Maven - 通过开发插件了解 Maven
# Maven - 通过开发插件了解 Maven如果单纯看 Maven 的一些介绍或者用法,可能在看的时候知道了,过段时间可能就忘了。如果对 Maven 了解比较少,在使用过程中就可能会遇到很多坑,因此本文通过开发简单插件了解相关的多种信息,本文大部分内容来自官方文档。官方文档:>https://maven.apache.org/guides/plugin/guide-java-plugin-develo
2017-08-13 16:49:17 3767
原创 MyBatis 示例之存储过程(一)
本示例是《MyBatis 从入门到精通》书中第一个存储过程的例子,有关本示例的基础环境,可以从 http://mybatis.tk 或者 https://github.com/mybatis-book/book 获取,示例源码在 simple-all 中。存储过程在数据库中比较常见,虽然大多数存储过程比较复杂,但是使用 MyBatis 调用时,用法都一样,因此我们这一节使用一个简单的存储过程来了解
2017-07-29 21:04:46 20308 6
原创 MyBatis XML 标签类型说明
MyBatis XML 标签类型说明resultMap 标签的类型属性为 type(必填)。id, result 标签的类型属性为javaType(可选)。idArg, arg 标签和上面两个类似,也都是 javaType(可选)。association 标签的类型属性为 javaType(可选)。discriminator 标签的类型属性为 javaType(可选)。collectio
2017-07-28 10:36:33 7298
原创 《MyBatis 从入门到精通》转发送书~~~
《MyBatis 从入门到精通》转发送书~~~京东已经可以直接购买:https://item.jd.com/12103309.html 活动地址https://github.com/mybatis-book/book/issues/4活动说明根据参与人数进行送书,随机从所有参与人员中抽取几位朋友送书。活动页面有效参与人数每超过100人,就增加一个送书名额。活动时间:2017年6月30日 至 201
2017-06-30 21:44:55 3775 3
原创 Apache Kafka 入门 - Spring Boot 集成 Kafka
Apache Kafka 入门Kafka的基本配置和运行Kafka命令详细介绍Kafka-manager的基本配置和运行Kafka API 简单用法Spring Boot 集成Kafka本篇为第五篇。Spring Boot 集成 Kafka 参考文档 https://kafka.apache.org https://projects.spring.io/sprin
2017-06-28 21:59:01 26622
原创 Apache Kafka 入门 - Kafka API 简单用法
Apache Kafka 入门Kafka的基本配置和运行Kafka命令详细介绍Kafka-manager的基本配置和运行Kafka API 简单用法Spring Boot 集成Kafka本篇为第四篇。Kafka API 简单用法本篇会用到以下依赖:<dependency> <groupId>org.apache.kafka</groupId> <artifactId>ka
2017-06-27 20:03:33 18120 1
原创 Maven 的聚合(多模块)和 Parent 继承
即使是长期从事 Maven 工作的开发人员也不能完全掌握聚合(多模块)和 Parent 继承的关系,在使用多模块时,子模块总要指定聚合的 pom 为 <parent>。由于在大多数示例中都是这么写的,所以很难让人搞懂这两者的具体作用和关系。实际上在 Maven 中聚合(多模块)和继承是两回事,两者不存在直接联系。 pom文档地址:https://maven.apache.org/pom.html
2017-06-26 21:16:57 65409 11
原创 Apache Kafka 入门 - Kafka-manager的基本配置和运行
Apache Kafka 入门Kafka的基本配置和运行Kafka命令详细介绍Kafka-manager的基本配置和运行Kafka API 简单用法Spring Boot 集成KafkaKafka支持Linux和WIndows环境,本文运行环境使用Linux(CentOS)。本篇为第三篇。Kafka-manager的基本配置和运行想要查看和管理Kafka,完全使用命令并不方便,我们可以使
2017-06-25 19:36:53 48087
原创 Apache Kafka 入门 - Kafka命令详细介绍
Apache Kafka 入门Apache Kafka 入门大概分为5篇博客,内容都比较基础,计划包含以下内容:Kafka的基本配置和运行Kafka命令行详细介绍Kafka-manager的基本配置和运行Kafka API 简单用法Spring Boot 集成KafkaKafka支持Linux和WIndows环境,本文运行环境使用Linux(CentOS)。本篇为第二篇。Kafka命令行
2017-06-25 18:17:16 41388 1
原创 Apache Kafka 入门 - 基本配置和运行
Apache Kafka 入门Apache Kafka 入门大概分为5篇博客,内容都比较基础,希望各位有经验的朋友可以留言指导。计划包含以下内容:Kafka的基本配置和运行Kafka命令行详细介绍Kafka-manager的基本配置和运行Kafka API 简单用法Spring Boot 集成KafkaKafka支持Linux和WIndows环境,本文运行环境使用Linux(CentOS
2017-06-22 21:16:36 15704 1
原创 MyBatis Map结果的Key转为驼峰式2
在我新书《MyBatis 从入门到精通》(6月底上市)中为了介绍 MyBatis 拦截器,提供了一个下画线键值转小写驼峰形式插件,这篇博客使用另一种思路来解决相同的问题。MyBatis 配置文件中,支持下面这几种配置: properties?, settings?, typeAliases?, typeHandlers?, objectFactory?, objectWrapperFac
2017-06-18 17:47:55 11122 19
原创 [JSON]2017年最新县及县以上行政区划代码
前面有过两篇相关的博客:中国行政区划代码数据库文件 - 最新县及县以上行政区划代码(截止2012年10月31日)[数据][xml格式] 2012年统计用区划代码和城乡划分代码一个是SQL文件,一个是XML文件,并且城乡的涉及抓取数据,相对麻烦一点。2017年这篇,是JSON格式,完全通过JS实现,这个数据可以方便在三级联动中使用。数据来源地址: http://www.stats.gov.c
2017-05-31 22:12:17 25045 1
原创 mouseup 事件丢失的原因和解决办法
说明当实现类似Excel选中区域的功能时,经常出现 mouseup 事件丢失的情况,由于缺少了 mouseup 事件,导致一个完整的操作无法进行。如果你是想进行拖拽移动操作,也可以参考本文。原因目前发现两个原因:触发了浏览器的 drag 操作,导致mouseup丢失。由于鼠标离开了操作的区域,触发了mouseleave导致mouseup丢失。解决办法第一种情况通过执行下面的代码阻止系统默认的操
2017-05-12 09:51:07 13626
原创 Windows MySQL 升级步骤和常见问题
请先备份好数据和 my.ini 配置文件。下载最新版本的 MySQL,本文使用的压缩包。先使用命令卸载服务,在 mysql/bin 目录输入如下命令: mysqld -remove [服务名] 默认情况下服务名为 MySQL,可以省略。卸载时,如果你开着Windows的【服务】,就先关闭服务窗口。如果后面操作时提示没有卸载干净,可以使用下面的命令删除服务。使用 sc query my
2017-04-28 22:39:19 15317
原创 Spring DevTools 介绍
Spring DevTools 介绍Spring Boot包括一组额外的工具,可以使应用程序开发体验更加愉快。 spring-boot-devtools模块可以包含在任何项目中,它可以节省大量的时间。 想要使用devtools支持,只需将模块依赖关系添加到你的构建中:Maven.<dependencies> <dependency> <groupId>org.springfr
2017-04-23 13:17:14 75282 8
翻译 Java String 格式化示例
Java String Format 示例 原文:https://dzone.com/articles/java-string-format-examples 本文内容来源于上面的地址,不完全按照原文进行翻译。你是否经常忘记 Java String 格式说明符?或者你从来都没有时间学习过。以下是您可以使用的各种标识符参考。你是否尝试阅读并理解 java 的 String 格式化文档?
2017-04-16 08:57:03 20905
原创 重新认识 Java 的 System.in
重新认识 Java 的 System.in以前也写过不少命令行的程序,处理文件时总需要通过参数指定路径,直到今天看资料时发现了一种我自己从来没用过的方式。这种方式让我重新认识了 System.in。下面是一个简单的 Cat 命令的例子,这里提供了 -n 参数用于配置是否显示行号。import java.io.BufferedReader;import java.io.IOException;im
2017-04-15 21:14:47 6511
原创 Mybatis工具类:JdbcTypeInterceptor - 运行时自动添加 jdbcType 属性
JdbcTypeInterceptor运行时自动添加 jdbcType 属性拦截器签名@Intercepts({ @Signature( type = ParameterHandler.class, method = "setParameters", args = {PreparedStatement.cla
2017-02-27 22:36:13 3722
原创 MyBatis 使用 MyCat 实现多租户的一种简单思路
本文的多租户是基于多数据库进行实现的,数据是通过不同数据库进行隔离。MyCat 基本配置首先针对多租户配置了多个数据库,在 MyCat 的 schema.xml 中配置了多个 schema。 在 server.xml 中配置了一个用户: 后面会使用 MyCat 注解(就是注释)方式根据不同的标识,将操作指向不同的数据库。过滤器识别请求匹配对应的数据库标识有很多种方式可以加以区分,下面使用最简单的
2017-02-21 15:20:10 18693 11
原创 ECharts-Java 开源项目寻求合作维护
ECharts-Java 寻求合作…由于我自己没时间维护这个项目,经常使用的朋友,如果想要参与,可以和我联系。邮箱:abel533@gmail.com项目地址:https://github.com/abel533/Echartshttp://git.oschina.net/free/ECharts
2017-02-16 21:19:10 2678
原创 Spring Boot - 配置排序依赖技巧
Spring Boot - 配置排序依赖技巧Spring Boot - 被错误使用的注解autoconfigure 类项目通过 springfactories 巧妙使用排序
2017-01-02 10:46:38 33300 13
原创 Executor 拦截器高级教程 - QueryInterceptor 规范
Executor 拦截器高级教程 - QueryInterceptor 规范这篇文档涉及下面几个方面 1. Executor query 方法介绍 2. 拦截器配置和调用顺序 3. 拦截 query 方法的技巧 4. 拦截 query 方法的规范 5. 如何配置不同的 Executor 插件1. Executor query 方法介绍在 MyBatis 的拦截器的文档部分,我们知道 Exe
2016-12-31 17:45:33 6913 7
原创 从命令行运行 MyBatis Generator
最近发现好多人在使用 MyBatis Generator (简称 MBG)时遇到各种各样的问题,常见的如编码问题,还有如何引入其他 jar 包等问题。MBG 的基本用法可以看我博客的《Mybatis Geneator详解》。为了方便大家可以直接运行 MBG,并且解决编码的问题,给大家提供了一个配置好的 MBG 插件,还包含了使用其他插件时如何在命令行中设置的用法。下载地址: 链接:http://p
2016-12-26 20:16:22 5539 2
原创 IDEA 初始配置教程
IDEA 初始配置教程如果你是第一次使用 IDEA,或者对 IDEA 常用配置仍然不熟悉,那么本文就特别适合你。本文只是根据我自己的使用经验来进行配置,不一定适合所有的情况,但是对你肯定会有帮助。IDEA 官方地址https://www.jetbrains.com/idea/官方提供免费的【社区版】,还有收费的【高级版】(可以免费试用 1 个月)。下面的设置针对【高级版】进行设置,【社区版】由于功能
2016-12-17 15:39:11 64715 10
原创 通用 Mapper UUID 简单示例
通用 Mapper UUID 简单示例不可回写的 UUID通用 Mapper 中对 UUID 的用法主要提到了一种专有的写法,如下写法:@GeneratedValue(generator = "UUID")这种方式实现很容易理解,就是在你 insert 之前,调用 UUID 的公共方法在 <bind> 标签中生成了一个值,插入到了数据库,由于这个值是临时的,并没有 set 到对象,因此这种方式是不支
2016-11-02 20:28:59 23083 13
原创 Java 执行 JS 脚本工具
Java 执行 JS 脚本工具用途:为了便于系统扩展,提供了 JS 脚本的功能,可以通过在系统中执行脚本来获得更复杂的功能。例如:系统提供了一个接口,这个接口不必非的有实现类,而是可以通过JS来实现这个接口的方法,在运行时载入JS脚本去实现。只要能融会贯通,可用的地方还是很多的。关于JAVA 执行 JS 的基本功能参考这里: http://www.2cto.com/kf/201505/40206
2016-10-24 16:04:00 5205 1
原创 MyBatis 返回动态结果类型插件
MyBatis 返回动态结果类型插件说明虽然写了这么一个插件,但是个人建议尽可能不去这么用,如果这个插件真正能方便你,使用起来也没任何问题。关于插件的一些个人修改建议,在插件的注释中有说明。插件用途:可以在 MyBatis 参数中带上要返回的类型Class,插件就会改变返回值类型为你指定的类型。用法说的可能不清楚,看个简单的用法。MyBatis 中定义如下方法:Object selectById(@
2016-10-16 18:41:29 13468 2
原创 EasyUI - tree 使用拖拽时可能会遇到的一个错误
在我使用tree拖拽时总是失败,控制台输出了很多错误。经过跟踪分析发现这是一个由于特殊配置导致的错误。原先错误的代码如下:$('#tree').tree({ //省略其他 loadFilter: function(data, parent){ return data.rows; }});由于我后台返回值并不是一个直接适合tree使用的数据,需要从中取出row
2016-10-10 10:36:47 2072
原创 MyBatis Excutor 拦截器的巧妙用法
这里要讲的巧妙用法是用来实现在拦截器中执行额外 MyBatis 现有方法的用法。并且会提供一个解决拦截Excutor时想要修改MappedStatement时解决并发的问题。这里假设一个场景: 实现一个拦截器,记录 MyBatis 所有的 insert,update,delete 操作,将记录的信息存入数据库。这个用法在这里就是将记录的信息存入数据库。实现过程的关键步骤和代码:1.首先在某个
2016-10-05 16:04:27 12265 6
原创 IntelliJ IDEA 编译程序出现 非法字符 的 解决方法
IntelliJ IDEA 编译程序出现 非法字符 的 解决方法网上有很多答案,没有特别好使的解决方法,这个问题很常见,就跟在 CMD 执行 javac 命令遇到中文时一样,只需要增加-encoding UTF8 参数。具体在 IDEA 中配置如下图:在 Settings 中的 Build 下面的 Compiler 下。修改 Java Compiler在 Additional comman line
2016-09-29 18:15:41 31050 15
原创 CMD 命令行中的 tree 样式输出
从很早就对各种命令行中输出的特殊样式感兴趣,最常见的就是 tree.例如在某个目录执行 tree 命令,显示如下树图:F:.└─tk └─mybatis ├─mapper │ ├─annotation │ ├─code │ ├─common │ │ ├─base │ │ │ ├─
2016-09-22 23:21:34 7366
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人