自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 HBase+MapReduce案例

目前停车场现金统计报表使用日表,数据采用累加方式,存在冗余数据,保存数据时需先查询出对应条目加上这次数据累计再进行更新,高并发下存在问题,且无法按具体时间查询,代码逻辑也存在大量重复性代码,代码结构较差;统计类型数据不存在关联查询,适合使用非关系型数据库,可提高查询性能,这里选择HBASE。 1.阅读目前代码,梳理业务逻辑,重新设计实体类 统计数据包括包期充值、包期续费、包期退款、账户充值、账户退款、临时车缴费(称作收支类型)操作产生的交易行为,收支方式...

2020-08-19 00:51:40 736

原创 防止IP攻击

1.一段时间内ip连接数大于一定值则断开该ip所有连接且拒绝ip一定时间内连接2.一段时间内ip连接所发送的数据大于一定值则断开该ip所有连接且拒绝ip一定时间内连接其实是实现判断频率的一种算法,有一个陷阱是如何判断连续时间内的频率,因为把时间分成一段段的话,按不同起始时间来分话频率会不一样。所以这个判断算法是有一定精度的,就是多久判断一次。相当于这个时间窗口移动的精度。...

2020-02-25 21:52:52 2444

原创 Java内存模型

大半年前做的PPT分享一下。参考《深入理解JVM虚拟机》每个线程有各自的虚拟机栈,一次方法调用创建一个栈帧,栈帧的大小在编译期就确定上面的问题是个陷阱,实际上两者是一样的。Java虚拟机规范规定栈帧的本地变量表在编译期确定...

2020-01-20 21:31:45 234

原创 Spring源码-Spring消息

2020-01-20 14:39:21 112

原创 Spring源码-SpringMVC

2020-01-10 16:24:42 95

原创 Spring源码-Bean加载过程

小半年前画的图,分享下

2020-01-09 19:48:33 131

原创 Spring源码-BeanDefinition加载过程

小半年前画的图,分享下。

2020-01-09 19:45:41 205

原创 Cassandra的使用

隐去业务相关内容,使用过程如下:1.分析需求,设计实体类;重构则阅读目前代码,梳理业务逻辑,重新设计实体类2.根据Cassandra特性和业务需要设计数据库表 Cassandra的Primary key也要保证数据的唯一性标识,但是其更大的作用是服务于查询,也就是说Cassandra的主键更多是面向于业务来设计的,且Cassandra的表的primary ...

2020-01-08 20:25:30 1078

原创 spring源码深度解析-Spring源码阅读-Spring事务

简要说一下流程,有的细节略过或者简化了。 Spring事务其实是使用了Spring自定义标签的解析功能和SpringAOP功能。 Spring定义了一个自定义标签,然后定义了这个标签对应的Parser。这个parser里面注册了一个AutoProxyCreator,也注册了一个Advisor(里面包含一个Interceptor)。 ...

2020-01-08 20:10:31 269

原创 《Effective Java》总结

半年前读完了《Effective Java》,在这里贴一下读书总结。示例设计的代码省略。

2019-12-23 15:06:53 127

原创 《重构-改善既有代码的设计》总结

将近一年前看了这本书,将主要的内容提炼总结如下:

2019-12-23 13:53:42 110

原创 修改查询结果导致脏读问题的保护性拷贝方案 和关闭Mybatis缓存方案对比

由于业务需求,需开发一个复杂查询页面。最外层是车主数据,每个车主可展开列表查看车主名下的车辆信息,点击更多可查看车辆的多段包期。实现过程为,先通过筛选项停车库、车主姓名、车牌号码、所属组织、在场状态、占位状态关联表查询出车主数据Result1,所用sql为SQL1;再通过停车库、SQL1查出的车主、车牌号码、在场状态、占位状态关联表查询出所有车辆信息,所用sql为SQL2,填充到Re...

2019-08-25 21:25:51 204

原创 spring配置错误重复扫描导致事务失效的问题解决

事情的起因是,调试过程中,发现有一处事务不起效。后来发现是spring配置文件被改动。于是对各个spring配置文件进行了分析。涉及到四个文件。分别为application-context-common.xml、application-context-datasource.xml、spring-servlet.xml、web.xml。在这里先给出四个配置文件的部分内容,着重...

2019-08-25 21:16:43 618

原创 在Java中使用Jython调用Python脚本遇到的各种问题

使用Jython调用Python程序时,由于Python程序使用了numpy库等,而使用java时不会自动导入库,需要手动设置路径。参考:https://blog.csdn.net/xfei365/article/details/50996727https://bbs.csdn.net/topics/392314370?page=1https://blog.csdn.net/u01...

2018-08-09 11:43:15 8110 3

转载 线程池基础知识及配置使用

线程池的理解http://www.importnew.com/17633.html线程池Executors类、ThreadPoolExecutor构造、BlockingQueue种类ThreadPoolExecutor使用和思考(上)-线程池大小设置与BlockingQueue的三种实现区别 http://dongxuan.iteye.com/blog/901689#comments先...

2018-07-25 17:42:50 432

原创 Map的浅拷贝与深拷贝

Java中参数传递一般是值传递,不会改变原来的参数值,但是发现map中不是这样。map中的数据产生了不想要的改变,原因是map作为参数传递时,传递了引用。https://www.dutycode.com/map_kaobei_shenkaobei_qiankaobei.html

2018-05-08 16:13:19 1491

原创 groovy编码问题

问题:在eclipse工程中程序能正常显示中文,打成jar包部署到服务器上之后中文显示乱码解决:

2018-04-17 17:55:19 3641

原创 C/S和B/S区别

http://www.blogjava.net/junglesong/archive/2008/04/29/197270.html

2018-04-13 16:38:46 139

原创 No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

https://blog.csdn.net/lslk9898/article/details/73836745

2018-04-10 14:10:28 123

原创 No buffer space available

服务器遇到问题:No buffer space available重启好了原因:https://blog.csdn.net/qq_28165595/article/details/78358239

2018-04-08 11:00:41 986

原创 git的时候出现问题SSL Error: unable to get local issuer certificate

SSL Error: unable to get local issuer certificategit config --global http.sslVerify falsehttps://stackoverflow.com/questions/23885449/unable-to-resolve-unable-to-get-local-issuer-certifica

2018-04-08 10:52:56 6616 2

原创 Java虚拟机关闭钩子ShutdownHook

java程序部署在服务器上时,Ctrl+C关闭,或者service Servicename stop关闭时(不包括 kill -9 操作),会有一些关闭资源等操作来不及执行。这时为了程序安全退出,我们可以使用Shutdown Hook来实现。使用方法:比如,添加一个方法public void start() {     Runtime.getRuntime().addS

2018-03-28 09:50:36 257

原创 NIO网络编程

一、NIO概述NIO(Non-blocking I/O,在Java领域,也称为New I/O),这个库是在JDK1.4中才引入的,是一种同步非阻塞的I/O模型,也是I/O多路复用的基础,已经被越来越多地应用到大型应用服务器,成为解决高并发与大量连接、I/O处理问题的有效方式。那么NIO的本质是什么样的呢?它是怎样与事件模型结合来解放线程、提高系统吞吐的呢?本文会从传统的阻塞I/O和线程...

2018-03-09 18:37:10 2458

原创 Java-原子操作之CAS

很多情况下我们只是需要一个简单的、高效的、线程安全的递增递减方案。注意,这里有三个条件:简单,意味着程序员尽可能少的操作底层或者实现起来要比较容易;高效意味着耗用资源要少,程序处理速度要快;线程安全也非常重要,这个在多线程下能保证数据的正确性。这三个条件看起来比较简单,但是实现起来却难以令人满意。通常情况下,在Java里面,++i或者--i不是线程安全的,这里面有三个独立的操作:获得变量当前值

2018-03-09 16:04:40 306

原创 Java-原子操作和原子变量

API链接:https://docs.oracle.com/javase/8/docs/api/所在包:java.util.concurrent.atomic Java有8种数据类型,并且每个数据类型都有一个包装类,如int和Integer,它们之间的转化也就是我们常称作的自动拆箱和装箱的过程。但是呢,它们只是一个简单的数据,当在并发编程下,没有任何特殊的语义。volatile能保证可见性,以及阻...

2018-03-06 16:35:58 1090

原创 ByteBuf相关方法

将ByteBuf转为十六进制ByteBuf buf;System.out.println(ByteBufUtil.hexDump(buf));

2018-03-05 16:54:25 2069

原创 byte[]转String出现乱码(EFBFBD或3F)

问题:byte[]转String(以方便用split()对byte[]进行分割或其他操作)时,选择编码方式不同会导致产生一些字符乱码UTF-8时产生EFBFBDGBK时产生3F等等原因:这些字符集与byte值不是完全对应,有的byte值没有对应的字符,于是出现乱码解决:使用iso-8859-1字符集,其编码范围是0x00-0xFF

2018-03-05 16:07:15 7179 4

原创 Java8 Stream

Java 8 API添加了一个新的抽象称为流StreamStream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。元素流在管道中经过中间操作(intermediate operation)的处理,最后由最终

2017-12-26 10:21:50 386

原创 Duplicate entry '...' for key 'PRIMARY';Unable to locate persister:...

数据库数据导出导入过程中,导入时,删除数据库中某些元素,再重新导入回来的时候,出现此错误:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '7033a0bd-c2cf-4120-bb8c-edd1c3015130' for key 'PRIMARY'直接原因:当数据库中存在与此元素主键相同的元素时,重复加会导致此错误。org.hibernate.UnknownEnti

2017-12-06 09:53:41 544

原创 maven项目pom文件中有红叉:Missing artifact jar

maven项目pom文件中有红叉:Missing artifact jar原因:找不到依赖的jar包解决:查看本地库中相应文件夹下的jar包,若为.lastUpdated后缀,删掉文件,Maven Update仍未解决,直接查看url地址下的库中对应jar包版本是否不匹配,若不匹配则修改pom文件

2017-12-05 19:01:58 1323

原创 Groovy脚本-正则表达式

Groovy脚本的字符串处理和正则表达式

2017-11-23 16:01:02 915

原创 win/linux下程序的TCP/UDP/COM测试

1.TCP测试时,若连接不上Linux服务器(centos6.5),关闭防火墙 1) 永久性生效,重启后不会复原 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后复原 开启: service iptables start 关闭: service iptables stop 查询TCP连接情况: nets

2017-11-10 09:36:33 541

原创 将java程序部署到Linux服务器上

1.将maven文件打包成jar文件项目右键-run-maven install,相应路径下生成jar包2.远程连接linux服务器取得Linux服务器地址,使用SecureCRT软件连接至Linux服务器3.将windows上的jar文件传到linux服务器上1)在linux服务器上安装lrzsz,需要以root身份执行输入命令:su -输入密码输入命令:yum install lrzsz等待安...

2017-11-06 15:14:36 5158

原创 双月报8.24-10.23

工作总结:1.      设备权限authox-starter是应用于Spring Boot的Authox权限框架快速集成开发包。使用它进行权限管理。2.      设备指令的合成与分解3.      带有权限的簇的读写的类4.     交通协议Server端开发将总线发送的配置更新保存到本地,根据配置建立多个Socket及Server,每个下面都会有n个下级平台的

2017-10-23 14:30:31 661

原创 月报7.25-8.24

将asn文件解析成java文件;加ChannelHandler对接收到的数据进行处理;H2数据库的使用和查看;提供REST接口,使用curl访问REST接口;SecureCRT远程工具,SocketTool工具;增强for循环中不能对集合进行删除元素等操作,hibernate PersistentSet无法转HashSet,CGLIB代理类无法转json的问题。

2017-08-24 17:26:35 220

原创 周报2017.7.3-2017.7.7

一些数据库相关Exception的解决方法:Could not locate getter method for property、QuerySyntaxException: ...is not mapped、IlleglArgumentException:id to load is required for loading、could not resolve property、LazyInitializationException: failed to lazily initialize a coll

2017-06-28 10:45:22 278

空空如也

空空如也

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

TA关注的人

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