- 博客(19)
- 问答 (5)
- 收藏
- 关注
原创 由红黑树原理到 java中 tree的原理
来源:www.xiehf.site 在java语言中,TreeMap TreeSet 等都是基于红黑树的原理实现的,主要是用它来存储有序的数据,时间复杂度是O(lgn),效率非常之高。 红黑树是基于二叉排序树的: - 若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值; - 若任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值; -
2017-09-20 12:51:31 449
原创 复杂业务中,统一处理多表操作
业务背景 在一个复杂的后台业务处理中,总是会出现通过各种逻辑处理过程中,产生对很多表的增删改操作、调用其他模块接口、消息队列等,如果直接边处理边对表修改,则@Transactional事务管理的范围就很大,需要对很多方法添加该注释,为了让事务管理的范围尽量减小,就将所有的需要的操作全部缓存起来,再统一处理。处理思路 我使用的map<Emun,Collection<T>> 局部变量的方式缓
2017-08-11 11:53:13 858
原创 Python Django && Mysql Project
Python Django && Mysql Project-开发idea: Pycharm -版本: Python3.6 Mysql 5.7 -环境:win10 -项目地址: [ github ] -参考慕课网: [慕课网] 教程使用的默认的SQlite DB步骤: Django 官方文档 [ Django Docs]1.1 使用Pycharm 新建Djang
2017-07-23 21:37:37 316
原创 获取一个类的所有指定方法
有时候对象字段数量太多,一个个set设值,难免漏掉,导致数据错误,所以就弄了个简单的,把所有的set方法都打印出来,然后复制进去业务代码内,再填值,用不上的就注释掉,这样方便多了。如有需要还可以扩展其他的方法。public static List genSetMethodCode(Class clz) { List setMethods = new ArrayList<>(
2016-11-07 17:13:03 1808
原创 个人碰到的疑难杂症--未完
1.执行mvn命令,单元测试报错导致无法正常打包和发布,使用以下命令mvn package-Dmaven.test.skip=true2.mac配置环境变量,提示错误 not a valid identifier 环境变量配置环境变量的时候,= 两边不要有空格
2016-11-07 10:06:35 334
原创 自定义对象中文排序,可以指定排序的字段名,较为通用
public final class Sorting { public static void main(String[] args) { List persons = new ArrayList<>(); persons.add(new Person(2, "张三","北京")); persons.add(new Person(1,
2016-09-13 17:59:29 913
原创 Springboot+ thymeleaf+ easyui (不含数据库) demo
这段时间的一个工作任务是要实现一个本地的管理工具,之前的版本都是使用的javaGUI的界面;但自己对于GUI的使用非常不熟悉,所以就提出使用也买呢的方式实现。由于之前听过说过springboot的大名,所以就决定使用该框架,边学边用。好在spring官方的文档还是比较多的,稍微看了一下,发现入门比较简单,另外工作任务的也只是需求本地使用,所以需求的功能也不会太苛刻。公司网络限制,只好在家里学好
2016-07-17 15:09:15 10498 2
原创 NodeJS学习历程(4)
Node.js实现http客户端和服务端--入门感觉与java的socket通信的模式很相似,建立服务端,建立客户端,先启动服务端,再通过客户端访问,只是可以支持http的访问,实现从服务端获取数据返回到客户端页面。例子:从服务端获取一个html文件返回到页面。服务端:/** * Created by Administrator on 2016/7/9. */var fs
2016-07-09 11:52:45 354
原创 logback 参考官方文档 实现控制台与文件输出日志的 最基本配置
适用maven构建工程:1、引入依赖:要注意版本的匹配问题,如果不匹配,运行的时候控制台会有错误提示版本号。 ch.qos.logback logback-core 1.1.2 ch.qos.logback logback-classic 1.1.2 org.
2016-07-09 10:49:24 573
原创 NodeJS学习历程(3)
nodeJS使用事件、监听器、定时器和回调 nodeJS通过其强大的事件驱动模型提供了可扩展性和性能,nodeJS应用程序在一个单线程事件驱动模型中运行。 传统的线程网络模型,请求一个进入web服务器,分配一个线程,完成所有工作,直到请求完成并发出响应,在每一个线程上,函数以线性的方式,按顺序调用。 Nodejs将工作添加到一个事件队列中,然后有一个单独的线程运行一个事
2016-07-03 11:24:37 306
原创 NodeJS学习历程(2)
关于NPM封装模块的方法1、创建一个属于自己的Node封装模块 主要学习如果创建一个包、发布它,然后使用它(个人理解为有点类似java的打jar然后其他应用使用) 1.1新建一个目录./censorify 新建如图文件: censortext.js内容: /** * Created by Admi
2016-07-03 02:02:41 269
原创 NodeJS学习历程(1)
几个月前就没事看看,但是过了这么发现还是什么都不懂,仔细想想,发现还是自己没有好好总结,或者说没有留下什么笔记,只是照着资料搭起来几个简单的demo,实际却没什么收货,这个月开始换一种学习的方式,可能话费的时间更长,尝试下用笔记的方式,就算是抄书也比浏览会有效果吧。做做笔记激励自己学下去,一、那就从头开始吧---开始nodeJS NodeJS是一个非常模块化的平台
2016-07-02 21:55:36 466
原创 git fork别人的项目之后 同步远程分支的方法
fork别人的项目clone到本地后,远程分支有修改,需要同步远程分支,使得本地代码与远程分支一致。1、git remote -v:orgin:为本地分支的upstream:为远程分支2、git remote add upstream(上一步操作没有upstream,则需要添加uptream)完成后,执行git remote -v确认与上图一致。
2016-07-02 15:25:31 13053 1
原创 java多任务并发处理--Callable<?>
在我的工作中,使用多线程的目的只要在于:1、效率大大提升,2、内存能够有效控制,3、代码层次感分明 目前来说,我主要熟知的为以下两种:一、实现callable的线程,使用ExecutorService executor = Executors.newFixedThreadPool(5);线程池进行并发执行,具体demo如下:package com.ziglar.c
2016-06-30 22:26:55 3453
原创 div 水平居中的一种方法
水平居中的方法:1、parent float to left;2、parent position 相对页面 右移50%,则父类div的做边界为page的中心轴;3、child relative相对父类标签;4、child margin padding 0 则child的边界与parent重合,即可以理解为一个5、child left -50%右边界向左缩进50%,则child和parent就居
2016-06-04 21:58:08 340
原创 SpringMVC的配置--controller
学习笔记:将springMVC - spring -mybatis 分开配置 更容易理解(1)自动注册DefaultAnnotationHandlerMapping,AnnotationMethodHandlerAdapter(2)提供一系列:数据绑定,数字和日期的format @NumberFormat @DateTimeFormat,xml,json默认读写支持
2016-05-22 00:44:25 289
原创 java写出大数据(千万级别)的excel探索(二)
java写出大数据excel的方法探索(二)上一篇介绍了原理,本偏正式将原理应用于实际。再来理理清楚xml内容中实际写出的哪些数据是变化的:以一个worksheet为例Sheet1"> 5" ss:ExpandedRowCount="2" x:FullColumns="1" x:FullRows="1" ss:DefaultColumnWidth="54
2016-05-07 10:21:09 1972
原创 java写出大数据(千万级别)的excel探索(一)
java写出大数据excel的方法探索(一)需求:每个excel能够有1000W调数据量,这是个上限值。计划方案:1、JXL只能处理2003的而且有65535行数的限制,放弃;2、POI处理写出,带基础样式,只能有15W左右就内存泄漏;不带样式,25W以上就内存泄漏;通过查看资源监视器,确认主要耗费内存为创建cell对象,导致内存泄漏,单纯增加JVM内存大小,并不能根本解决;放
2016-05-07 00:32:30 4601
空空如也
OSGI 启动报错,求助,很紧急,第一次用这个插件
2015-12-19
刚学extJS,怎么按照教程写出的脚本无法运行
2015-12-17
eclipse中怎么自定义文字变色
2015-12-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人