自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhangfx5的博客

后端开发

  • 博客(32)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

转载 2021-05-08

快速定位比较吃cpu的sql语句,见文章https://blog.csdn.net/qq_28721869/article/details/115820752

2021-05-08 11:20:02 175

原创 用信号量semaphore来控制web系统的excel下载

背景描述: 系统中有excel下载,由于下载的数据量很大,特别消耗内存,如果涉及计算的话还特别吃cpu,所以对单台容器上一定时间内能接受的下载的请求必须加控制,否则会由于容器故障问题导致系统访问不了解决方法: 采用jdk并发包中semaphore来控制一定时间内的下载请求的数量public class TestDownload { /** * 同一时间接受请求的数量 */ private static Semaphore ...

2021-01-24 19:18:48 193

原创 log4j里面的info,debug,error级别有什么区别

一共分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,明白这一点很重要,这里Log4j有一个规则:假设设置了级别为P,如果发生了一个级别Q比P高,则可以启动,否则屏蔽掉。DEBUG: 这个级别最低的东东,一般的来说,在系统实际运行过程中,一般都是不输出的。因此这个级别的信息,可以随意的使用,任何觉得有利于在调试时更详细的了解系统运行状态的东东,比如变量的值等等,都输出.

2020-10-28 10:11:46 8891

原创 Http请求header中自定义属性支持跨域的设置

在http请求Header中会有自带的一些属性,如Accept,Accept-Encoding,Cookie,Origin,Referer,Host等属性外,还可以根据自己的需求额外的增加自定义的属性,也是key-value 这种格式,这个没有什么好说的了,只不过在跨域的时候,需要特殊处理下,否则会一直提示自定义属性跨域;在Access-Control-Allow-Headers 属性中加上自定义的属性,用逗号分隔...

2020-09-24 20:24:06 3495

原创 Linux 中文件权限

在日常的Linux中,我们常常会执行 ll命令,这个是查看当前目录下的所有文件的信息;大致如下其中的drwxr-xr-x ,总共10位,每一位表示什么意义呢???第一位d:表示的是文件类型,d表示文件夹,l表示连接文件,-表示普通文件后面的9个字符表示的是权限权限分为4中:r表示读取权限 w表示写入权限 x表示执行权限 -表示没有此权限9个字符共分为3组,每组3个字符第一组3位表示:创建这个文件的用户对这个文件的权限; 第二组3位表示:创建这个文件的用户所在组对...

2020-08-15 14:47:51 1050

转载 Spring中的@Resource注解执行过程

https://blog.csdn.net/xzp_12345/article/details/77943023

2020-08-12 17:24:20 484

转载 JSON数组形式字符串转换为List<Map<String,String>>的8种方法

package com.zkn.newlearn.json; import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject; import java.util.List;import java.util.Map; /** * Created by zkn on 2016/8/22. */public class JsonToM.

2020-07-20 16:07:49 13746 2

原创 Spring的配置项aspectj-autoproxy

<aop:aspectj-autoproxy/>的proxy-target-class属性值和是否有申明接口决定了代理的方式:1.如果不写,默认为false,表示使用jdk动态代理织入增强;2.显示的配置成true,<aop:aspectj-autoproxypoxy-target-class="true"/>时,表示使用CGLib动态代理技术织入增强。不过即使proxy-target-class设置为false,如果目标类没有声明接口,则spring将自动使用CGLi...

2020-06-18 11:38:08 640 1

原创 spring静态注入

spring普通的注入方式是基于类的对象的,static修饰的是基于类本身的,所以用普通的注解去注入静态对象的时候,会报java.lang.NullPointerException空指针运行时异常,这里提供两种比较常用的spring静态注入的方式,一版在java代码的工具类中使用;首先在spring容器中配置要注入的bean<!--spring容器中配置要注入的bean --><bean id="switchConfig" class="com.ambitious.Switch

2020-06-17 15:30:46 3580

原创 spring Aop通知的方法参数

@Before 和 @After 对应的方法的参数是JoinPoint,@Around对应的方法参数是ProceedingJoinPoint环绕通知ProceedingJoinPoint执行proceed方法的作用是让目标方法执行,这也是环绕通知和前置、后置通知方法的一个最大区别。Proceedingjoinpoint 继承了 JoinPoint 。是在JoinPoint的基础上暴露出 ...

2020-01-11 22:10:59 887 1

原创 spring AoP中通知的执行顺序

1.首先说下各个通知的所拦截的内容和基类吧2.下面是一个简单的切面的代码3.执行结果4.执行顺序的梳理

2020-01-11 21:47:58 605

原创 Spring ApplicationContext 和WebApplicationContext 区别

WebApplicationContext 继承了ApplicationContext接口,是ApplicationContext的扩展,它增加了WEB应用特性,还可以视图解析、主题解析、映射,通过ServletContext与servlet关联 ,WebApplicationContext被绑定在ServletContext上(通过ContextLoaderListener绑定),可以通过Re...

2020-01-10 23:28:15 1211

原创 spring容器和springmvc容器

1.在web.xml中配置两个容器spring容器(ContextLoaderListener)和springmvc容器(DispatcherServlet);spring容器<context-param> <param-name>contextConfigLocation</param-name> <param-value>...

2020-01-10 21:51:17 161

原创 删除git代码库上的.idea文件夹

1.在本地的代码库根目录下增加.gitignore文件,内容:*.idea,如果有.gitignore,则是在后面追加;2.执行脚本: git rm --cached -r .idea3.提交操作:git commit -m "删除.idea"4.提交到远程代码库:git push origin xxxx(开发分支)...

2019-12-09 20:33:27 598

原创 Maven 项目中继承jetty插件和tomcat插件

在java web开发中有时间需要简单验证下某些功能,需要发布在web容器中,jetty和tomcat就是必不可少了,但是单独下载该容器,再和开发工具关联很费劲;在有了maven之后,代码的结构都有了一定的规范性,如src/main/java,src/main/resources 等等,最主要的是pom.xm对依赖包的管理,很是方便,当然jetty和tomacat这些web容器也可以通过pom文件...

2019-05-19 14:09:17 355

原创 RestTemplate的简单实用

RestTemplate是spring内部封装的http的请求,在项目中实用spring的情况下,http客户端请求的时候RestTemplate是非常好用的。服务端:                   服务端没什么特殊要求,普通的springMVC就可以了,也是当前项目中实用最多的。/****zhangfx5@163.com***/@RestController@Re

2017-07-20 10:36:26 872

原创 js函数内部调用的含有回掉的函数,其中回掉函数可以拿到外部函数传递的实参

js函数内部调用有回掉的函数,回掉函数可以拿到外部函数传递的实参,代码如下: //被调函数 function sendMessage(content){ //内部调用有回掉的函数 getsig(function(){ console.log("函数回调拿到了参数"+content); }) } fu

2017-07-12 23:44:36 784

原创 块级元素内容过长点点显示(XXXX....)

在前端开发过程中,有时候由于页面布局问题,内容过长,不能全部显示,需要点点显示,如:XXXX....需要在文本所在的元素上加四个相应的属性,text-overflow:ellipsiswidth:80pxoverflow:hiddenwhite-space:noerap自己实际操作的结果展示:css设置:页面展示:

2017-07-12 16:06:13 1526

原创 span中内容为数字不折行

前端调页面的时候发现了一个问题,span设定了宽度,并且display:block转为了块级元素,但是如果内容全部为数字的时候,不折行,显示到同意行中,奇丑无比,如下图:解决办法:给span添加属性-->word-wrap:break-world

2017-07-10 19:09:21 2303

原创 JDK中对称加密DES

数据加密算法(Data Encryption Algorithm,DEA)是一种对称加密算法,很可能是使用最广泛的密钥系统,特别是在保护金融数据的安全中,最初开发的DEA是嵌入硬件中的。通常,自动取款机(Automated Teller Machine,ATM)都使用DEA。它出自IBM的研究工作,IBM也曾对它拥有几年的专利权,但是在1983年已到期后,处于公有范围中,允许在特定条件下可以免

2017-07-08 09:27:48 1384

原创 java项目中自定义业务异常

在java  Web开发过程中会遇到各种的业务异常,如扣款余额不足,重复提交,重复秒杀等,我们在后台java代码中最好的方式是将这种通过异常的方式来捕获,然后逐级上抛,最终在页面上给出提示,在网上看到的一些代码贴出来供大家学习1.定义异常类package org.seckill.exception;/** * Created by zhangfx on 2017/7/7.

2017-07-07 23:53:06 4110

原创 Java中枚举类型的使用

java开发中会遇到各种可以穷举的数据,如男和女,以及各种状态,如提交,审批,审批通过,但是不能在代码中不能写死,硬编码,另一方面,也不能存到数据库中去,这样来回取,各种不方便,枚举这种数据结构是不二之选。下面是一个枚举(Enum)类型:package com.zhangfx;/**** * @author ambitious *2017-07-07 23:39 */publi

2017-07-07 23:34:15 287

原创 前端框架DataTables的使用,后台接java

1.引入datatables的css和js文件2.在jsp或者html页面中写一个table3.绑定数据源4.后台java接口

2017-07-04 13:52:11 849

原创 Mybatis框架中jdbcType="DATE" 和 jdbcType="TIMESTAMP" 两种类型的区别

也算不上是Mybatis的bug,只能说是特性,本来就是这么设置的,在连接oracle数据库的时候,当jdbcType="DATE"类型时,返回的时间只有年月日(yyyy-MM-dd)的,当jdbcType=“TIMESTAMP”的时候,返回的时间是年月日和时分秒(yyyy-MM-dd HH:mm:ss),参考下图:以绑定时间和解绑时间为例:1.1当绑定时间的jdbcType=“DATE”

2017-07-04 13:35:14 140169 6

原创 Mybatis中数据库分页

Mybatis的数据库分页是采用Mybatis插件提供的插件接口,实现自定义插件,然后在插件的拦截方法内拦截待执行的sql,然后重写sql,   如:select t.*  from (select * from user) t  limit 0,10;   红色的sql为拦截的语句,其他的都是拦截后加上去的。1.分页插件的配置,首先在mybatis配置文件中配置拦截器,如下图中框

2017-06-29 16:18:35 425

原创 单元测试需要切换数据源和继承AbstractTransactionalJUnit4springContextTests类冲突

前端时间开发过程中遇到了这么个场景,就是单元测试的时候需要切换数据源,报错,最后发现是由于继承了AbstractTransactionalJUnit4springContextTests,这个类的作用是该子类中的方法开启事务,但是在方法执行开始的时候就开启事务,开启事务之后数据源切换不过来,因此单元去掉了这个类的继承,切数据源就没有问题了!!,大家如果遇到过请注意下!!!

2017-06-29 16:13:10 906

原创 maven项目在idea中spring配置文件引入xml文件和properties文件报错解决方案

1.在我使用idea过程中,maven项目中引入myabatis的xml文件和jdbc.properties文件时候报错,看下图:2.问题原因是:这些文件所在路径也就是resources文件夹相对路径设置不正确,找不到编译器找不到这些配置文件,导致报错的3.解决方案:将这些配置文件所在的resources文件在idea中设为Content Root,看下图 sh

2017-06-25 12:55:04 8150

原创 spring配置多数据源,threadLocal切换数据源

1.新建类MultiDataSource,集成AbstractRoutingDataSource,重写determineCurrentLookupKey()方法。2.spring中配置数据源信息,将所有的数据源配置成一个map3.使用ThreadLocal来写一个工具类,ThreadLocal用来存放线程的变量,每个线程都存成一个副本

2017-06-23 17:25:36 4661 2

原创 前端插件datatable中取消默认排序的图标

datatable的表格,默认右边都有显示的双向的小三角,点击可以排序,有时候有些字段是不需要排序的,个性化需要将小三角去掉。需要加框起来的字段:orderable

2017-06-08 15:35:21 10066

原创 ORA-01858 :在要求输入数字处找到非数字字符

java链接oracle数据库的时候遇到了:ORA-01858 :在要求输入数字处找到非数字字符    这个错误,后续自己解决了,把原因和解决办法贴出来,大家看看2017-04-27 08:52:37,284 ERROR [com.iss.amc.bat.fundNav.dao.FundNavDAO] [com.iss.amc.framework.core.dao.BaseDAO$4.

2017-04-27 10:20:21 123134 7

原创 Quartz的两种配置方式之上(内存方式)

定时任务   无论是互联网公司还是传统的软件行业都是必不可少的,今天说说Quartz,他是好多优秀的定时任务开源框架的基础,有必要去学习下。以下是我之前的项目使用的Demo,最简单和最基础的,参数配置也很少,如果用到其中的参数请参考官方API和源码,首先是项目目录结构                                                           1

2017-04-21 12:53:08 4495

原创 Quartz配置上次任务没有执行完,下次任务推迟执行,

今天项目上用到了Quartz轮训任务,需要配置一个参数,这个参数来控制Job任务是否并行,这个参数是concurrent。默认是true,参考spring源码如下:如果concurrent设为true,到了指定的时间就如去执行,不管上一次有没有执行完,如有一个Job每隔2分钟执行一次,但是每次要执行5分钟,这就出现了几次并行的情况,可能之间有些操作有相互影响(看业务场景);如果

2017-04-21 10:31:29 26302

Android开发技术说明书

android开发技术小手册,可以供初学者使用,欢迎大家提意见。

2015-06-09

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

TA关注的人

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