自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Run the ant

我曾写过的每一行代码,都是对现实世界的序列化,所以我要尽自己最大的努力,让序列化后的世界更美一点!

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

原创 Spring实现如果注册了子类则父类不再注册

这样写完,所有引用UserService的地方不需要修改,实现就会自动改为子类。1、在父类的代码上加上注解@ConditionalOnMissingBean。该方法可以用在某些扩展场景中,便于业务扩展。2、如果要进行扩展的时候,就集成这个类。

2023-08-09 10:41:37 136

原创 JPA连接达梦数据库导致auto-ddl失效问题解决

这个映射部分源码要跟的很深,总的来说就是从数据库拿到的表名都是小写的,但是匹配的时候是将实体类上@Table的name值转为大写后再进行映射,而且这个是在达梦数据库的驱动里面设置的,重写方言的buildIdentifierHelper方法也没用。项目使用了JPA,并且auto-ddl设置的为update,在连接达梦数据库的时候,第一次启动没有问题,但是后面重启就会报错,发现错误为重复建表,也就是说已经建好的表没有检测到,又重新走的建表流程。1、达梦数据库创建数据库实例的时候使用默认的规则,区分大小写。

2023-07-26 16:56:03 1142

原创 JpaRepository.save()居然调用了2次insert?

先描述一下场景:我需要对用户实体进行数据鉴权,所以期望的是监听用户的save()方法执行后,同步执行新增数据权限,并且给对应的用户分配该数据权限。问题来了,在没有做数据权限前,save方法执行正常,加入了监听器之后,save方法就insert了2次,然后就是报主键冲突(因为是同一个对象)。看一下实现:第一步,创建用户实例第二步,创建监听器第三步,User对象注册监听器第四步,开始测试可以看到,一模一样的数据被insert了2次。然后跟到源码查了一下原因,...

2022-05-09 19:00:37 1422 2

原创 你的applicationContext.getResources(source)为什么只拿到了一个配置文件?

解决applicationContext.getResources(source)只拿到了一个配置文件

2022-04-15 11:20:40 613

原创 Parent ‘Unknown:Unknown:Unknown‘ has problems 异常的处理

maven无法引入依赖,导致的项目编译报错

2022-03-07 15:02:32 11163 4

原创 JSON数据生成扁平化字段名

用标准规则生成扁平化数据是无法直接作为数据库的列名定义的,如果想直接用于列名定义请查看,如果想用标准化的扁平化方案,请搜索JsonFlattener的使用 /** * JSON扁平化总入口 * * 会将所有的_去除 * 会将_后的第一个字母大写 * @param json * @return */ public static JSONArray unfold(String json) { if (jso

2021-01-19 16:21:58 722 2

原创 根据JSON数据自动生成ClickHouse的Insert语句

如果你还不知道怎么建表请移步根据JsonSchema生成阿里云ClickHouse建表语句这里就直接贴代码了,建表的规则,字段规则都在上方链接 private static final String SCHEMA_TYPE = "type"; private static final String SCHEMA_TYPE_OBJECT = "object"; private static final String SCHEMA_TYPE_ARRAY = "array"; .

2021-01-19 16:15:32 3510

原创 根据JsonSchema生成阿里云ClickHouse建表语句

mybatis对ClickHouse的支持不是很好,JPA又没有对应的方言,做数仓需要大批量解析JSON数据,希望能自动根据JSONSchema定义来自动建表,节省工作量,并且不用为了复杂JSON建对象,还要服务发版。这个工具应用场景可能不是那个多,希望能帮到你,自己写也挺麻烦的。如果想要获取根据JSON数据生成Insert语句的同学请查看下一篇文章生成规则1、表数量与JsonSchema的properties节点数保持一致2、数据类型转换: schemaType ...

2021-01-19 16:11:04 933 1

原创 根据JsonSchema生成数据库表名

生成方式根据JsonSchema的各层级的key,用下划线拼接 private static final String SCHEMA_TYPE = "type"; private static final String SCHEMA_TYPE_OBJECT = "object"; private static final String SCHEMA_TYPE_ARRAY = "array"; private static final String SCHEMA_TYP

2021-01-19 16:01:24 554

原创 如何自己写一个lambda方法来完成多线程批量处理数据

最近要做一个初始版的数据仓库项目,有一大批的MYSQL基础数据要通过整合后写入到ES,有部分数据量非常庞大,单线程批量写入会耗时很久,就想到了使用线程池来多线程做写入操作。这个写法不要局限于我这个应用场景,别的应用场景也可以修改一下里面的逻辑。java版本要求在 1.8以上附代码:import org.apache.commons.collections.CollectionUtils;import java.util.List;import java.util.concurrent

2020-10-23 23:04:44 655 4

原创 Spring的容器创建过程,refresh()方法的执行

public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // Prepare this context for refreshing. prepareRefresh(); // Tell the sub...

2018-12-11 14:53:09 2486

原创 SpringBoot应用AOP及各注解的执行顺序

首先第一步,POM引入jar <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency...

2018-12-11 11:17:57 12186

原创 org.apache.commons.httpclient.ConnectTimeoutException异常

org.apache.commons.httpclient.ConnectTimeoutException: The host did not accept the connection within timeout of 3000 ms    at org.apache.commons.httpclient.protocol.ReflectionSocketFactory.createSock...

2018-10-26 09:56:33 11406 1

原创 必须要会的SQL优化方法

1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库.备注、描述、评论之类的...

2018-10-23 17:07:13 2336 2

原创 线程轮询的有数据启动,无数据停止,节省服务器资源,线程的启动和暂停

现实场景有这样一个需求:某工作大厅,有几百个工作人员,当有某个工作人员向离岗出去,要点击自己工位上的暂离按钮,回岗的时候点击工位上的回岗按钮,如果离岗超过20分钟还没有回岗则短信提醒该工作人员离岗超时,该回岗了!我们需要怎么处理这个业务呢?首先要有一个缓存Map,存放工作人员的userid和超时时间。然后针对该Map提供数据删除和添加的方法,回岗就删除,离岗就添加。最后再起一个...

2018-09-14 11:24:40 490

原创 数据库和数据库实例的概念

很多人都把这两个概念弄混淆,认为MySQL是数据库,也是数据库实例。这样的理解在应用到Oracle和SQL Server的时候可能是正确的,但是再MySQL的体系结构中确是不适用的。那么从概念上理解,该如何区分数据库和数据库实例呢?数据库:数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器中的数据集合;数据库实例:数据库实例是程序,是位于用户和操作系统之间的一层数...

2018-08-28 14:24:54 54288 5

原创 系统初始化功能扩展,一个具有良好扩展性的初始化工厂!代码其实可以写的更美~

上篇文章是关于Spring容器初始化以及根据容器获取bean的方法扩展等,然后涉及到系统初始化工厂,说在下一篇文章说一下这个问题。有兴趣可以了解一下上篇文章:Spring容器初始化,根据容器获取Bean,初始化工厂应该在什么时候运行一个好的顶层设计,一个好的设计模式,一个合适的设计模式,会让这块的业务更加明确,功能更加完善,代码更好梳理,让开发更加简单,让代码更加优美~那么,怎么写好一...

2018-08-20 14:47:21 777

原创 关于初始化Spinrg容器、获取Spring容器实例及根据Spring容器获取Bean

上篇文章说到了在tomcat启动后如何进行系统的初始化工作:想看的可点击—— tomcat启动后进行系统初始化及系统销毁执行业务关于Spring容器初始化及获取实例,就要用到2个容器了:一个是ServletContext,一个是WebApplicationContext。ServletContext是servlet容器。用于获取web.xml中配置的参数,或者其他用户。WebA...

2018-08-17 11:36:04 690

原创 tomcat启动后进行系统初始化及系统销毁执行业务

有些时候,我们有某些业务,或者某些设置是需要在项目启动的时候要进行初始化,比如,自动SQL执行、初始化fastJSON序列化过滤器,初始化系统权限等等,还有在系统销毁的时候执行某些业务,这个时候就需要了解一下GenericServlet这个类的init方法和destory方法;了解一下这个类,这个类是一个抽象类,要想对这个类进行扩展就需要实现这个类的所有抽象方法,看看这个类的方法:dest...

2018-08-17 10:48:00 829 1

原创 Nginx快速应用及数据库、Websocket长连接反向代理

1、下载安装包下载nginx:   http://nginx.org/download/nginx-1.10.3.tar.gz下载openssl : http://www.openssl.org/source/openssl-fips-2.0.9.tar.gz下载zlib    : http://zlib.net/zlib-1.2.11.tar.gz下载pcre    : ftp:...

2018-08-15 15:00:06 3438

原创 Spring快速应用WebSocket

最近做一个新项目,由于作为项目负责人比较忙,比较久没更了,今天抽个时间写一点,也是给自己做个日记。 实现WebSocket我只写了三个类,直接上代码:import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation....

2018-08-15 11:02:08 719

原创 linux打开文件数问题

常见问题-linux打开文件数    linux默认的打开文件数限制是1024, 会造成服务器用户连接数量很低       安装部署服务器时需要设置该值     运行命令 ulimit -n 65535 即可立即生效    在/etc/profile文件中加入这一条命令,使启动后能自动生效...

2018-04-25 17:21:43 376 1

原创 tomcat配置https的方法

tomcat配置https方法如下:打开Tomcat根目录下的/conf/server.xml,修改为如下:<Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" />修改参数=><Connecto

2018-04-25 17:17:26 300

原创 MySQL对字符串类型的排序号进行排序

ORDER BY CAST(字段名 AS DECIMAL) 

2018-02-27 09:32:46 1672

原创 记一下,图片实现动态效果transform

记一下,图片实现动态效果transformW3Cschool地址http://www.w3school.com.cn/cssref/pr_transform.asp

2018-01-12 14:21:48 801

原创 阿里云短信发送接口直接HTTP请求调用

最新一个个性化项目,客户要求使用阿里云短信发送接口。但是实在不想引入阿里云的SDK,就自己生成签名,拼接URL实现,  其实用他们的SDK最终也是一哥GET请求进行调用,归根接底还是HTTP请求。import java.io.IOException;import java.net.MalformedURLException;import java.net.URLEncoder;imp

2018-01-11 10:04:32 9089 3

原创 input 禁止粘贴 禁止拖拽

禁止粘贴: 禁止拖拽:

2018-01-05 10:09:14 3488 3

转载 Freemarker学习

转自: http://blog.csdn.net/chenghui0317/article/details/7832474一、Freemarker的介绍    Freemarker 是一款模板引擎,是一种基于模版生成静态文件的通用 工具,它是为java程序员提供的一个开发包,或者说是一个类库,它不是面向最终用户的,而是为程序员提供了一款可以嵌入他们开发产品的应用程序

2018-01-03 10:28:43 231

原创 关于RSA加解密问题

今天遇到加密字符串过长,导致前端加密后传到后台的密文被解密失败,然后就去研究了一下RSA加密,记录一下。一、秘钥生成的过程: 1、随机选择两个不相等的质数p和q2、计算p和q的乘积n,n即密钥长度3、计算n的欧拉函数φ(n)4、随机选择一个整数e,条件是1φ(n),且e与φ(n) 互质5、计算e对于φ(n)的模反元素d6、将n和e封装成公钥,n和d封装成私钥 加密(c为密文,m为明文):  me 

2017-12-29 17:16:04 2171

原创 多线程

/** * ldap数据同步类 * @author wangyijie * @date 2017年5月25日 * @version 1.0 */@Servicepublic class LdapSynchronizeTask implements Runnable{ private ReentrantLock lock = new ReentrantLock();

2017-12-29 14:23:24 260

原创 JAVA拷贝Map中的值到对象

在java中写接口,很多都是以JSON方式传参,  然后再序列化成各种对象~~~Map也是其中一种,  但是呢,Map中的参数有可能是很多个对象属性都在里面,   难道我要一个个的去get(“aa”),get(“bb”),get(“cc”).......这样我觉得太low了。。。然后我就写了一个拷贝的东西,   你只要给我一个Map,   一个对象,  我就把这个Map中的key=对象字段名的值,

2017-12-29 10:11:15 4725 4

原创 解决IE很多版本不支持placeholder的问题

今天被测试提了个BUG,  说在IE8上输入框默认提示语不显示;  然后我就写了个JS来解决这个问题//IE不支持placeholder的问题 ————————start————Mr.Wang var logintype = '请输入您的账号'; $(document).ready(function() { if (isIE()) { $("#loginna

2017-12-29 09:57:19 1174

原创 关于js防止XSS攻击

记一下,转义!!!!!!!!!!!!!!!!!!!!将内容转义成普通字符串function htmlEncodeJQ ( str ) {    return $('').text( str ).html();}将内容重新赋予dom特性function htmlDecodeJQ ( str ) {return $('').html( str ).t

2017-12-29 09:47:36 2854

原创 关于JSch的使用,执行ssh命令,文件上传和下载以及连接方式

对JSch操作的心得,实现方法详解,如有考虑不周,希望能共同探讨,望谅解~

2017-12-12 23:22:59 2295 2

原创 JAVA中的DFA算法构建敏感词树,从0开始!

关于DFA算法构建敏感词树;应用于JAVA中,敏感词匹配查找,敏感词替换等等

2017-12-05 15:00:01 837

空空如也

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

TA关注的人

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