自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 kafka单条消息太大引起的线上故障

问题现象1.收到日志异常报警,一个Flink任务写入kafka消息出现了异常,异常消息如下org.apache.flink.streaming.connectors.kafka.FlinkKafkaException: Failed to send data to Kafka: The message is 1602187 bytes when serialized which is larger than the maximum request size you have configured wit

2022-03-23 14:11:47 3969

原创 Spring cloud Ribbon Feign 超时,重试配置

在使用Spring Cloud 的时候,都会用到Ribbon做负载均衡,使用Feign 简化web 服务调用,在使用的过程中,网络服务是不稳定,所有要设置超时时间,避免服务端响应慢影响调用的服务,网络可能偶尔不稳定,重试机制能增加成功的几率。Ribbon 超时设置1.全局设置,所有的ribbon客户端都会生效ribbon.ReadTimeout=2000 # 设置读取时间为2s ribbon.ConnnectTimeout=1000 #tcp建立连接的时间,内网一般设置1s以内2.独立设..

2022-03-12 21:06:35 1129

原创 多线程环境下 SimpleDateFormat 引起的OOM线上问题

问题现象突然有业务反馈,某个服务接口响应很忙,赶紧放下手写的代码,看服务所在服务器的系统指标,发现cpu 内存 磁盘IO 都正常,赶紧排查服务, 发现日志中有 java.lang.OutOfMemoryError 的异常,OOM了,内存不够用了,为了不影响线上服务使用,dump堆栈内存,重启服务,线下分析堆栈内容。问题定位是不是调用量增加了,jvm堆内存设置的不合理,通过监控发现,调用量并没有增加,排除jvm堆内存设置不合理的因素。线上jvm堆内存配置2g,堆栈内存文件大概7g,压缩下30

2022-02-17 17:36:34 538

原创 spring bean中注入enum类型

在spring的bean中注入enum类型1 定义枚举类型[code="java"] public enum EnumType { TRANSACTION, EXTENDED}[/code]2 定义要注入枚举类型的bean [code="java"] package example;public class Clien...

2015-09-18 14:32:13 2442

原创 maven 在eclipse 中配置下载源代码

在java编程中,现在好多开源的第三方软件都使用maven管理了,比如经常使用的spring,在官网都找不到下载地址了,提供了maven的下载地址,有的时候想看看某些软件的源代码,maven也提供了下载源代码的功能,只要配置下就可以了,下面是详细步骤。[size=large][color=red][b]step 1[/b][/color][/size]在装好了的maven的根目录,比如...

2015-06-07 10:12:28 363

原创 spring的FactoryBean

一直对spring配置的LocalSessionFactoryBean这个bean感到疑惑,下面是spring的bean配置。 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"

2013-05-26 18:42:20 93

原创 js中字符串转换为日期和比较大小

在做前端校验的时候,要做日期比较的校验,在js中把字符串转化为日期,一时之间还真不知道在js中怎么把一个字符串格式的日期转化为Date,查看了一些资料,在此分享下。下面以调用js中Date(year,month,day)来生成一个日期对象。1.把字符串格式转换为日期的函数,函数接受两个参数,dateStr字符串日期格式, separator日期格式分隔符,默认是-。,这里没有对字符串的日期格式做校验,因为大部分的日期都是通过日期控件选择的,在此没做校验。 var stringToDate = f.

2013-05-23 13:50:05 1966

原创 hibernate和jpa注解关联总结

[size=x-large]用hibernate和jpa annotation 大概一年多了,今天闲来无事,对他们关联关系元数据写法做一个总结。[/size][size=x-large]1.一对一主键关联[/size][size=large] 这个在实际项目中用的比较少,大部分是通过用外键做关联的,这里用用户和手机号举个例子,用户和手机号是一对一的关系,代码如下:[/size] Use...

2013-04-28 21:24:39 122

原创 hibernate dynamic-insert 和 dynamic-update使用

默认情况下,在hibernate启动的时候,会为每个实体类生成简单的读取,删除,更新,创建语句,它是怎么生成更新的呢,它怎么知道更新的列,生成更新所有列的sql语句,如果值没有修改,则被设置为它的旧值,如果表的列比较多,即使只更新了一个列,也会生成很长的sql语句,必须关闭启动时生成sql语句,hibernate提供了dynamic-insert和dynamic-update属性,用来关闭生成sq...

2013-04-20 11:49:48 112

原创 mysql sqlserver oracel分页sql语句

项目一直都用的hibernate,很少对分页查询写sql语句,这次做项目用的mybatis,mybatis的内部分页不是很好,用的是jdbc的游标移动,它是基于内存分页的,所以要自己写sql语句,就总结一下几种主流数据库的分页写法[size=x-large]1. mysql[/size] mysql的分页比较简单,mysql数据库提供了分页处理的关键字 例如表的名称叫 procuct ...

2013-04-07 21:59:21 549

原创 javascript正则表达式

今天学习了正则表达式在javascript中的应用,在这里做个总结。正则表达式的应用场景1.用于某种格式的验证,比如验证邮箱,是否是数字等,在web应用程序中可以做前台表单验证2.替换内容3.查找内容正则表达式语法一 限定符 指定前面的字符或者字符组合连续出现的次数1.{n} 表示前面的字符连续出现n次,举例说明:a{3}可以匹配daaa 但不...

2013-02-03 13:07:40 105

原创 java 删除目录

由于项目需要,要定时的把文件和目录删掉,以前很少做文件删除,都是去创建文件和读取文件,就找到了java的api文档去看有没有删除的方法,找到File类,java的File没有目录与文件的区分,都用File类表示,找到了一个方法。 [code="java"] File.delete(); [/code]可怎么测试就是删除不了,文件加依然存在,郁闷了,没办法就硬着去读file.delete()...

2013-01-29 10:11:11 108

原创 数据库事物乐观锁和悲观锁

数据库事物单个逻辑单元工作执行的一系列操作,就是一些sql语句,也可以是多条,一个update操作就是一个事物。事物具有四种特性1.原子性 事物必须是原子工作单元,要么都执行成功(也就是说所有的sql语句都执行成功),要么都不执行(所有的sql语句都不执行)。2. 一致性 事务在完成时,必须使所有的数据都保持一致状态。3.隔离性 允许多个用户对数据进行并发访问,...

2012-10-16 00:09:38 98

原创 java的动态代理

代理模式是一种很常用的设计模式,spring的aop实现就使用了代理模式,它的特点是代理类与目标类实现相同的接口,代理类并不真正实现服务,而是通过调用目标对象的方法来实现服务的。代理又分为两种。1 静态代理:由我们手工编写并编译成字节码文件。在程序运行前,字节码文件已存在。2 动态代理:在程序运行时,同过反射机制生成。静态代理比较简单,这里就不说了,主要说一下动态代理下面用jd...

2012-10-15 13:50:15 65

原创 struts2 Action 测试

以前从来没有测试过Action,今天在struts的doc看到struts提供了一个junit插件,可以对action进行单元测试,这个插件是从struts 2.1.1开始有的,下面是一个小例子。 首先要搭建环境,struts2的jar包就说了,还要引入测试的jar包如下图[img]http://dl.iteye.com/upload/attachment/0074/7326/55de...

2012-10-09 11:11:32 174

原创 jpa persist,meger,remove,find方法介绍

jpa规范提供了EntityManager接口来操作数据库,它定义了一些操作数据库的方法,在这里介绍几个重要的方法,就是crud方法。1.persist(Object entity)方法 这个方法把一个实体加入持久化上下文中,也就是缓存中,在事务提交或者调用flush()方法的时候,把这个实体保存到数据库中(执行insert语句),如果实体已存在,则抛出EntityExistsExcep...

2012-09-17 11:18:42 163

原创 spring事务管理

spring 提供了声明事务管理机制,在应用程序中可以让spring来统一管理事务,简化编程提高开发效率。在这里以spring管理jpa事务为例使用@PerstenceContext注解为应用注入实体管理器也就是EntityManager对象,简化的写一下代码,这样EntityManager对象就由容器来管理,在spring的配置文件中加入事务的配置,spring就可以管理应用的事务[...

2012-09-13 17:41:05 127

原创 spring+jpa+简单泛型dao

spring+jpa的整合数据库文件[code="sql"] /*Navicat MySQL Data TransferSource Server : mysqlSource Server Version : 50165Source Host : localhost:3306Source Database ...

2012-09-12 15:55:37 681

原创 java泛型深度讲解

[size=x-large]Java泛型(generics)是JDK 5中引入的一个新特性,允许在定义类和接口的时候使用类型参数(type parameter)。声明的类型参数在使用时用具体的类型来替换。泛型最主要的应用是在JDK 5中的新集合类框架中。对于泛型概念的引入,开发社区的观点是褒贬不一。从好的方面来说,泛型的引入可以解决之前的集合类框架在使用过程中通常会出现的运行时刻类型错误,因为编译...

2012-09-11 18:01:56 115

原创 mybatis入门例子

mybatis是由ibatis发展而来的,是一个很好用的javaee持久化框架,很容易学,下面是一个增删改查的小例子简单的pojo类[code="java"] package com.own.entity;public class Goods { public int getGoodsId() { return goodsId; } publi...

2012-09-11 12:55:46 111

原创 简单模拟列表存储

今天看了数据结构的链式存储,写了一个简单的例子:[code="java"] package com.test;public class ImitateLinkedList { private Node head ; private Node last; //定义一个内部的节点类 private class Node{ ...

2012-09-07 14:16:52 96

原创 jdbc封装

以前项目写的jdbc代码很烂,今天重新封装一下代码如下:这个是主要用的类[code="java"] package com.own.db;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLExc...

2012-09-06 16:29:06 59

原创 模拟ArrayList

最近公司没什么项目,闲来无事,写了段代码,模拟下ArrayList,代码如下:[code="java"] package com.test;public class ImitateArrayList { //定义一个默认的容器大小 private static final int DEFAULT_CAPACITY = 16; //存放数据的数组 pri...

2012-08-28 14:03:54 87

原创 测试访问时间的Filter

今天写了一个测试访问某个资源花费多少时间的过滤器,给大家分享一下[code="java"] package com.own.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.Fil...

2012-08-24 13:54:04 102

原创 程序员有影响的书

哪本书是对程序员最有影响、每个程序员都该阅读的书国外知名网站stackoverflow上有一个问题调查: 哪本书是对程序员最有影响、每个程序员都该阅读的书?,这个调查已历时两年,目前为止吸引了153,432人访问,读者共推荐出了478本书(还在增加),其中最火的一本书《Code Complete》被顶了1306次。如果你是个程序员,你一定有兴趣看看这些书里你都看过几本,如果你一本没看过的话,我...

2012-08-24 13:03:59 87

原创 java 泛型

[size=large]java在jdk1.5引入了泛型,我们在定义类的时候可以给给它传递一个参数代码如下:[/size][code="java"] package test;public class GenericClass { private Object[] elements; private static final int DEFAULT_CA...

2012-08-23 13:51:53 58

原创 java成员变量初始化顺序

闲来无事,写了一个java成员变量初始化的顺序的小例子[size=large]代码如下[/size][size=large]父类[/size][code="java"] package com.own.test;public class Bird { private String birdColor; private static Enemy en...

2012-08-20 15:28:06 88

原创 junit测试

今天学习了junit测试(基于注解)[code="java"]package com.own.cal;public interface Calculator { double calculatorSalary(Position position); }[/code][code="java"]package com.own.cal;public class...

2012-08-20 11:29:50 74

原创 servelt filter listener 的生命周期

1. servlet 当第一次请求一个servlet资源时,servlet容器创建这个servlet实例,并调用他的init(ServletConfig config)做一些初始化的工作,然后调用它的service方法处理请求。当第二次请求这个servlet资源时,servlet容器就不在创建实例,而是直接调用它的service方法处理请求,也就是说servlet对象是常驻内存的,是...

2012-08-17 15:24:56 174

原创 spring 测试框架

以前单纯用junit做spring的测试程序,在测dao的时候总是得手动的添加或删除记录,破坏了数据库现场,用spring的测试框架可以在测试用例执行完后回滚。使用spring框架测试 引入spring测试的jar包(这里我用的是spring 3.0.3) org.springframework.test-3.0.3.RELEASE.jar cglib-2.2...

2012-07-18 14:07:50 129

原创 随便写写

今天公司有个项目,要用到ArcGis Server,我就网上download了一个文档,按着步骤去装,我的系统是xp service pack 3,提示也安装成功了,可兴奋了,这么简单就装成功了,我就用arcGis Server Manager去登陆,可就是死活登陆不上去,郁闷死了,就上网搜了一下,原来是防火墙的问题,我就把防火墙给关掉了,可还是登陆不上去,还是提示: ...

2012-06-01 14:16:45 53

空空如也

空空如也

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

TA关注的人

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