• 等级
  • 746818 访问
  • 168 原创
  • 59 转发
  • 4202 排名
  • 127 评论
  • 183 获赞

【工具推荐篇】在线诊断工具Arthas应用

一、背景应用Arthas始于一次运行环境问题诊断,由于本地无法复现问题,因此需要在线上调试,通常的方法是加log,重新打包部署,复现问题,但是过程太过复杂,因此接触到了Arthas,也要感谢团队成员的贡献。二、Arthas是什么这个官网都有很详细的介绍https://alibaba.github.io/arthas/,https://github.com/alibaba/arthas...

2019-02-28 08:56:50

【Spring Boot实战】源码解析Spring Boot自动配置原理

一、简介Spring致力于让Java开发更简单,SpringBoot致力于让使用Spring进行Java开发更简单,SpringCloud致力于基于SpringBoot构建微服务生态圈,让微服务开发更简单。随着这几年spring官网的更新可有看出spring发展的roadmap网上有一个spring发展的时间线,也可以看下随着近几年微服务的火爆,SpringBoot及Sprin...

2019-01-16 07:45:22

基于Java Swing编写的简易运费计算工具

两年前给媳妇儿做的一个基于JavaSwing编写的简易运费计算工具,现开源,关键是思路(https://github.com/honghailiang/FreightSystem)。主要有两个部分实现:1)初始化数据 2)用swing绘制系统并执行业务逻辑一、初始化数据从excel中读取数据,转化为对象(只保存基础数据:序列号、始发站、目的站、省份、100kg以下(元/kg)、100k...

2018-12-18 11:26:17

2018——幸福都是奋斗出来的

半年多没写博客了,今天上班第一天mark下,希望2018年继续奋斗,继续保持写博客的习惯。幸福都是奋斗出来的,响应号召!

2018-02-22 15:03:19

Oracle中varchar2类型字段长度限制使用问题

为纪念中华人民共和国建军90周年,特此一篇,以此纪念,我军威武!!!一、问题背景项目中商品发布,却没有保存成功。二、问题定位初步判断向数据库中保存时出现了错误,查看日志文件,由于日志文件过大就采用grep进行搜索(再一次说明grep的强大)其中“ReserveProductService.update”是要搜索的关键字,catalina.out是日志文件,-n显示搜索内容所在行数,-B

2017-08-01 11:45:03

【Spring实战】Spring注解配置工作原理源码解析

一、背景知识在【Spring实战】Spring容器初始化完成后执行初始化数据方法一文中说要分析其实现原理,于是就从源码中寻找答案,看源码容易跑偏,因此应当有个主线,或者带着问题、目标去看,这样才能最大限度的提升自身代码水平。由于上文中大部分都基于注解进行设置的(Spring实战系列篇demo大部分也都是基于注解实现的),因此就想弄明白Spring中注解是怎么工作的,这个也是分析上文中实现原理的一个

2017-07-12 15:55:31

Hibernate中用left join(左外连接)查询映射中没有关联关系的两个表记录问题

一、问题背景分账表split_summary结构如下:createtableSPLIT_SUMMARY(uuidVARCHAR2(32)notnull,star_tdateVARCHAR2(26)default'',end_dateVARCHAR2(26)default'',sto

2017-07-10 17:01:32

Oracle数据库中字段定义为Char类型,Hibernate用该字段进行动态绑定参数查询,获取不到结果的问题

一、问题背景产生环境:oracle数据库,hibernate操作定义了一个表createtableSTORE_INFORMATION(idCHAR(32)notnull,nameVARCHAR2(254)default'',contentCLOBdefault'',create_time

2017-06-27 10:02:35

【Spring实战】Spring容器初始化完成后执行初始化数据方法

一、背景知识在做WEB项目时,经常在项目第一次启动时利用WEB容器的监听、Servlet加载初始化等切入点为数据库准备数据,这些初始化数据是系统开始运行前必须的数据,例如权限组、系统选项、默认管理员等等。而项目采用了Spring依赖注入来管理对象,而servlet并不受Spring的管理。若此时在servlet中注入Spring管理的对象,则无法使用,如下:

2017-06-16 16:43:17

【Java实战】源码解析Java SPI(Service Provider Interface )机制原理

一、背景知识在阅读开源框架源码时,发现许多框架都支持SPI(ServiceProviderInterface),前面有篇文章JDBC对Driver的加载时应用了SPI,参考【Hibernate实战】源码解析Hibernate参数绑定及PreparedStatement防SQL注入原理,于是借着JDBC对Driver的加载实现,分析下SPI机制。二、什么是SPI看下Wikipe...

2017-05-24 14:44:44

【Java实战】源码解析为什么覆盖equals方法时总要覆盖hashCode方法

1、背景知识本文代码基于jdk1.8分析,《Java编程思想》中有如下描述:另外再看下Object.java对hashCode()方法的说明:/***Returnsahashcodevaluefortheobject.Thismethodis*supportedforthebenefitofhashtablessuchasthose

2017-05-15 11:05:27

【Hibernate实战】源码解析Hibernate参数绑定及PreparedStatement防SQL注入原理

本篇文章涉及内容比较多,单就Hibernate来讲就很大,再加上数据库驱动和数据库相关,非一篇文章或一篇专题就能说得完。本文从使用入手在【Spring实战】----Spring4.3.2集成Hibernate5.2.5基础上继续深入研究。本文包含以下内容:SQL语句在数据库中的执行过程、JDBC、PreparedStatement、Hibernate参数绑定代码托管地址:https:

2017-05-11 09:43:02

再读《Java编程思想 》

前段时间在豆瓣上无意间看到一个帖子“我为什么把thinkinginjava读了10遍”,是11年的帖子,下面评论至今,各种声音都有,不过大多数还是佩服和支持的。我个人来讲也是非常支持的,而且也打算再读《ThinkinginJava》,上学那会老师再三强调:“读书百遍,其义自见!”,但是对于程序猿,不光要读,而且要实践。一、为什么要再读   上一篇,我曾经说过,如何在Java界立足,凭借

2017-04-21 11:27:49

【Android实战】----从Retrofit源码分析到Java网络编程以及HTTP权威指南想到的

一、简介接上一篇【Android实战】----基于Retrofit实现多图片/文件、图文上传中曾说非常想搞明白为什么Retrofit那么屌。最近也看了一些其源码分析的文章以及亲自查看了源码,发现其对Java网络编程及HTTP权威指南有了一个很好的诠释。一直以来,都信奉一个原则,在这个新技术日新月异的时代,如何在Java界立足,凭借的还是基本功,包括:Java基本知识,(Java编程思想、Effe

2017-03-23 09:27:13

【Android实战】----基于Retrofit实现多图片/文件、图文上传

一、再次膜拜下RetrofitRetrofit无论从性能还是使用方便性上都很屌!!!,本文不去介绍其运作原理(虽然很想搞明白),后面会出专题文章解析Retrofit的内部原理;本文只是从使用上解析Retrofit实现多图片/文件、图文上传的功能。二、概念介绍1)注解@Multipart从字面上理解就是与多媒体文件相关的,没错,图片、文件等的上传都要用到该注解,其中每个部分需要使用@Part来注解。

2017-03-17 12:58:49

【Android实战】----RecyclerView下拉刷新和上拉加载的简单实现

一、简介关于RecyclerView的介绍网上有很多文章,这里不做过多说明,也不与ListView相比较。本文旨在基于RecyclerView实现下拉刷新和上拉加载,简单的不能再简单了。

2017-03-14 10:56:13

Java程序员应该了解的10个面向对象设计原则

一、题前话本人一直崇尚一个原则,“我思,故我在!”。一直以来忙于编码,但是不甚如人意(写了较多重复性、耦合性太强的代码)。行有行规,面向对象编程的Java语言也不例外,遵循其相关原则,才能高效快速的编写高性能的代码。那么期间过程学习很重要,从一开始的基础知识学习,到大量的编写代码,回过头来再将学习的理论和实践相结合,每一个环节都很重要,这样才能成为高手,特别是最后一环(将理论与实践相结合——重

2017-03-06 16:03:18

【Android实战】----调用startActivityForResult()后,onActivityResult()立即执行的问题

一、问题描述遇到该问题两次了,决定在此记录,以观后效。问题现象就是题目中所说:调用startActivityForResult()后,onActivityResult()立即执行的问题二、代码配置Activity调用Intentintent=newIntent(activity,InvoiceActivity.class);int

2017-02-21 08:55:19

程序猿214情人节专题----基于GitHub打造个人网站及Android的录制功能使用

一、先上幅效果图二、基于GitHub个人网站的打造1)先说下我个人的https://honghailiang.github.io/2)可参考http://blog.csdn.net/lmj623565791/article/details/51319147  如何利用github打造博客专属域名三、Android录制功能从android4.4之后开始有了

2017-02-15 10:26:24

【Android实战】----Android Retrofit2.1.0直接发送Json字符串到服务器

可以用@body注解(将数据添加到requestbody中)、设置retrofitheader为json一、接口类publicinterfaceIHttpService{/****@paramparams*@return*/@POST("ad/getAds.do")CallgetAds(@Bo

2017-02-10 15:55:37

博客专家

洪海亮

I think, So I am! 我思,故我在 ...展开 收起
关注
  • 互联网·电子商务/程序猿
  • 中国 天津 河东区
奖章
  • 专栏达人
  • 持之以恒