自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据库扫描全表的坑

1.现象容器云服务器一直重启,影响线上交易很长时间。系统占用cpu很高,数据库负载很高2.原因上游系统是通过定时来调用查询接口,查询接口参数没有防空校验,导致在查询的时候进行了全表查询,数据量太大,数据库链接超时,使服务器监控探活影响,3.解决方案参数一定、一定要检验,尤其是查询的接口...

2018-12-18 16:20:02 438

原创 账户余额更新问题总结

一.账户余额在高并发更新的时候,扣减会出现负数问题?思路,在sql语句的条件中,设置更新金额减去账户余额一定大于0,对于余额的更新,不使用乐观锁,也没有用查询到的余额作为可以更新的条件,而是设置更新金额减去账户余额一定大于0 ,这是能够高并发更新的关键,因为只有账户的余额不被扣成负数即可。另外,防止高并发余额账户查询的余额已经被其他线程更新,使用行级锁,所以对于查询语句添加for upda...

2018-09-11 13:32:24 5691

原创 Spring配置双数据源的坑

一.双数据源:顾名思义,一个项目中使用两套数据源,例如一个是mysql数据库,一个是oracle数据库,又或者同样都是mysql,但是要使用两个库中的数据。二.最简单的方式是,从service,dao层到spring文件配置完全使用两套,放到不同的包路径下。最后在spring加载的时候,将另一套的配置导入到一套就行,以一个主文件加载就行。三.遇到的坑1.对于配置文件中sqlSessio...

2018-09-07 18:25:55 762

原创 系统错误码定义规则

一、定义错误异常类/** * @author yunpeng.zhao * @version $Id TestException.java, v 0.1 2018-08-01 下午1:51 yunpeng.zhao Exp $$ */public class TestException extends RuntimeException{ private static fina...

2018-08-01 14:11:39 6996

原创 spring@Async结合线程池实现异步回调

一、定义自己的线程池,如果直接使用spring的异步标签@Async也可以,不过是使用的spring自己默认的线程池,没执行一次都会新建一个线程,消耗性能。<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns...

2018-07-31 17:23:11 2073

原创 工厂模式+模板方法模式,实现步骤相同地订单逻辑

一、定义工厂管理类/** * 订单业务管理类 * @author yunpeng.zhao * @version $Id PayMethodManager.java, v 0.1 2018-02-04 上午11:03 yp-tc-m-2651 Exp $$ */public class OrderBizFactory { private static final Logg...

2018-07-31 16:50:36 2077 1

原创 使用注解对手机号及卡号加验工具类

一、定义加验地注解类/** * @Description:加掩码注解 * @Author: yunpeng.zhao * @date 2017-08-19 18:51 */@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })@Retention(RUNTIME)@Documentedpublic...

2018-07-31 16:33:48 584

转载 java 性能优化

不论做什么时候,都要先制定目标,这和要想进行优化先要制定系统的性能指标一样,性能优化的一般步骤 对系统软件进行优化,首先需要有明确的性能目标,清楚地指出优化的对象和最终目的.其次,需要在目标平台上对软件进行测试,通过各种性能 监控和统计工具,观测和确认当前的系统是否已经达到相关目标,若已经达到,则没有必要再进行优化;若当前系统性能尚未达到优化目标.则需要查找当前的性能瓶颈. 可能成为性

2017-10-22 22:29:40 457

原创 java常用设计模式总结

设计原则:(重要)1.逻辑代码独立到单独的方法中,注重封装性--易读,易复用。不要在一个方法中,写下上百行的逻辑代码。把各小逻辑代码独立出来,写于其它方法中,易读其可重复调用。2.写类,写方法,写功能时,应考虑其移植性,复用性:防止一次性代码!是否可以拿到其它同类事物中应该?是否可以拿到其它系统中应该?3.熟练运用继承的思想:找出应用中相同之处,且不容易发生变化的东西,把它们抽...

2017-10-22 20:57:07 219

原创 注解结合AOP在方法前后打印日志

亮点:直接在方法上添加一行注解,就可以实现统计方法的执行时间,另外根据注解参数中属性来控制是否进行方法入参的校验知识点:java注解+AOP+java 反射机制特别注意点:如果要进行方法入参的校验,返回参数类定义中必须要有  A(Stirng a,String b)的构造方法,否则会报错,如果方法没有返回参数 请修改红色部分,为防止隐私我已经将所有类中包路径去除,使用时请自行修改。步骤

2017-08-16 10:09:26 1521

原创 BigDecimal的使用

1.两个数字比较大小 double类型和BigDecimal类型例如:这里一定要重新new 一个新的BigDecimal 否则比较不正确//校验金额是否正确BigDecimal amount1 = new BigDecimal(paymentEntity.getPayAmount());if (amount1.compareTo(new BigDecimal(payCallBack

2017-06-28 15:25:58 289

原创 eclipse中中文注释乱码解决方法

1、在项目上右键找属性--》Resource 中设置encoding为gbk,如果不行再执行第二步2、Windows-----general------Content Types 中 选择 Text-----javaSourceFile 把下面的default encoding 设置为GBK  并 update 就行了 另外如果CVS或者SVN资源文件中有中

2017-02-22 09:27:18 1183

原创 数据结构与算法学习

数据结构分为物理结构和逻辑结构,其中逻辑结构包括 集合结构、线性结构、树形结构、图形结构。物理结构是指数据元素在计算机存储器中的存储顺序,包括顺序存储和链式存储两种。算法与数据结构相辅相成,算法的5个特性有:输入、输出、有穷性、确定性、可行性。算法的根本目的是提高时间效率和减少存储值。

2017-02-09 22:01:50 199

原创 xml与javaBean的互相转化

1.学会使用xml的各个注解与含义,参考网址如下 http://blog.csdn.net/lhzjj/article/details/11796713举例:@XmlRootElement(name="RequestOrder")@XmlType(propOrder={"clientFlag","orderNo","subOrderNo","tradeNo","mailNo","type

2016-04-21 16:32:40 361

原创 浅谈spring框架中集成国际化+velocity

1.在spring配置文件中增加如下配置 <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> classpath:/i18n/messages //资源文件的位置

2016-03-09 15:34:37 4103

原创 MyBatis 中 批量操作如查询

实例:根据订单号进行多了查询定义domain public class orders{ public String orderId; //订单号 **** ** public String[] orderIds; //用来存储多个订单号,批量操作时使用 public void setOrderId(String orderId) { //每次前台页面填写完毕自动添加到数组中

2016-03-07 16:42:18 994

原创 微信与支付宝两个平台对接文档

1.与支付宝平台的对接:https://doc.open.alipay.com/doc2/detail?treeId=60&articleId=103564&docType=12.与微信平台的对接:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=1_1

2016-03-03 14:55:23 1027

原创 增加eclipse的内存

解决GC overhead limit exceeded 的问题  产生问题的过程是:eclipse中新建maven项目经常遇到 骨架类型导不出 原因是:eclipse初始化内存不够的原因 具体的解决办法是 配置eclipse.ini 文件 中的属性 ,文件位置在eclipse的安装目录下面配置参数如下:-Xms512m-Xmx1024m-XX:MaxPermSize=

2015-08-05 22:32:46 423

原创 有用的网址

http://blog.csdn.net/p793049488/article/details/37818989  解决乱码问题http://www.baidu.com/link?url=mUgoBllCPQMNQHxP0HNYHYraki5H6kJQTjNowwDiK22c-XL9e_PN71UV9YfYzHLMmX8JXaPgHyyBNI21p3K_4H8mbuJyl-lGdaBm

2015-04-15 13:34:45 402

原创 svn项目管理工具的简单用法

初次使用CSDN编写项目,1.下载svn,网址是http://subversion.apache.org/根据不同的操作系统来选择安装包。2.下载并安装好后,将bin文件夹的目录添加到系统属性Path中。一般svn是安装在Linux中的,它要不在Windows下快很多。3.在命令行中运行svnserver -help 查看操作命令帮助4.项目管理人员创建root文件夹,

2015-01-14 18:04:51 1293

空空如也

空空如也

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

TA关注的人

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