自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

原创 mysql 每日自动备份数据库

在这种情况下,你需要将 your_username 和 your_password 替换为实际的 MySQL 用户名和密码,并确保脚本文件中的用户名和密码是安全的(不要将它们硬编码在脚本中,或者确保脚本文件有适当的权限来保护这些敏感信息)。现在,你已经设置了一个每日定时任务,它会在指定时间自动运行备份脚本,将MySQL数据库备份到指定目录。如果你的 MySQL 数据库位于不同的主机上,或者你希望备份不同主机上的数据库,那么你需要通过 --host 参数来指定数据库的地址。

2023-09-18 17:33:44 1456 1

原创 使用openssl命令方式生成公钥、私钥、证书

Common Name (e.g. server FQDN or YOUR name) 这个选项填写服务的域名或者IP,其他的内容填写随意。打开命令提示符,并导航到您希望保存私钥文件的目录。完成后会得到cert.crt、private.key、public.key、cert.csr文件。复制cert.crt文件,修改后缀为.pem格式,即可去配置nginx。此命令将使用 RSA 算法生成私钥文件。

2023-08-09 17:04:27 2362

原创 在sql语句中,where 1=1会影响效率吗?

因此,在实际查询中使用WHERE 1=1不会对查询效率产生任何影响,也不会导致全表扫描。在SQL语句中,WHERE 1=1是一种常见的写法,它的目的是为了方便拼接SQL语句,特别是在动态构建SQL语句时,可以使用WHERE 1=1作为一个占位符,在后续代码中通过添加AND语句来动态拼接查询条件。安全性风险:使用WHERE 1=1时,如果后续代码中拼接的查询条件存在安全隐患,例如SQL注入等攻击,可能会导致安全风险,因为攻击者可以利用构造的恶意查询条件绕过应用程序的安全检查,访问和修改敏感数据。

2023-03-22 11:21:17 2537 1

原创 为什么hashMap频繁扩容可以减少hash碰撞?

比如一个键在hash表的某一个桶中,就算hash表扩容了,桶变多了。但是其他的键如果根据hash函数算出来的键和原先键一样,不还是会找到这个桶吗?首先我们要知道,hash碰撞是怎么产生的。我这里给大家列举一下。这个问题我也帮大家找到了答案。

2023-03-21 16:26:07 456

原创 rabbitTemplate 让setConfirmCallback执行完成后再去发送消息给消费者

在 setConfirmCallback 回调函数中,如果消息得到了确认,我们调用 CountDownLatch 对象的 countDown 方法来将计数器减一,标记确认回调执行完成。如果消息发送失败,我们抛出 MyException 异常,并在异常消息中包含消息的 CorrelationData ID,以便后续的错误处理能够定位到具体的消息。在 send 方法中,我们先调用 convertAndSend 方法来发送消息,并使用 latch.await() 方法来等待确认回调函数执行完成。

2023-03-16 17:45:22 635

原创 记一次 RabbitMq setConfirmCallback 没起作用的情况

所以在配置中加上了publisher-confirm-type: correlated,再次运行代码,发现可以正常进入到ConfirmCallback 中。消费者都已经成功消费了,但是没有打印进入setConfirmCallback。实现生产者投递消息到交换机的确认机制,以及消息由交换机投递到队列的错误返回机制。大家都知道是如下配置。自信满满的设置完成后想着运行下试试。至此问题结束,希望可以帮助到你。

2023-03-16 13:38:06 983

原创 判断字符串是JSON数组和还是JSON对象

开发中,不免遇到这种接口,多个接口功能请求一个接口地址,根据command不同去区分。然后拿到接口返回值转成JSON对象。但是呢,接口返回不一定是JSON对象,还有可能是JSON数组。这个时候就需要用到JSONTokener来判断,字符串是JSON对象还是JSON数组了。注意JSONTokener和判断条件里的JSONObject、JSONArray都是org.json包下面的,不要引错了。...

2022-07-15 09:52:48 6260

原创 策略+工厂模式,初始化项目时读取配置文件中的内容

项目中有个需求,根据传进来的参数判断,去调用哪个地址。首先配置文件xiahui: oms: interfaceAddress: cw: 1 ck: 2 dc: 3最初的想法是在静态代码块中,去读取配置文件,比如这样@Configurationpublic class InterfaceSendConfig { public static volatile InterfaceSendConfig interfaceSendConfig;

2022-04-02 13:41:05 733

原创 Mysql 数据内容添加换行和去除换行

–添加换行UPDATE 表名 SET 列名= (CONCAT_WS(CHAR(10 USING utf8), '内容1', '内容2')) WHERE UUID = #{uuid}–去除换行UPDATE 表名 SET 列名= REPLACE(REPLACE(列名, CHAR(10), ''), CHAR(13), '');

2022-02-28 14:25:03 2427

原创 Linux 查找JDK的安装路径

Linux 安装JDK后,往往不知道安装路径到底在哪,只知道执行了一条安装命令,比如:yum install -y java-1.8.0-openjdk-devel.x86_64执行完成后输入javac或者java -version出现这种就是安装完成了。但是接下来,比如要配置Jenkins或者nacos,到哪里去找我的安装路径呢??网上给出的答案无非就两种,一种是which java 或者whereis java。这些是没办法获取到JDK的安装路径的,获取的是java执行路径。实际应该执

2022-02-17 15:17:38 1708

原创 linux more 结合 grep查询日志信息

线上问题排查,日志无法下载时,可以先用grep 定位到关键字的位置。打印出行号信息。再根据more继续打印出此行号后N行的日志信息。cat:查看文件内容、创建文件、文件合并、追加文件内容等,会一次显示所有的文件内容,适合查看内容较少的文本文件-b:对非空输出行编-n:对输出的所有行号编号more:可以用于分屏显示文件内容,每次只显示一页内容,适用于查看文件内容较多的文本文件空格键:显示手册页的下一屏enter:一次滚动手册页的一行-b:回滚一屏-r:前滚一屏-q:退出/word:搜索

2022-02-16 19:01:05 2337

原创 linux 安装nginx

Nginx是高度自由化的Web服务器,它的功能是由许多模块来支持。如果使用了某个模块,这个模块使用了一些类似zlib或OpenSSL等的第三方库,那么就必须先安装这些软件。Ubuntu下不像在centOS中使用yum直接在线安装,可以使用以下方法。(1)PCRE库PCRE库支持正则表达式。如果我们在配置文件nginx.conf中使用了正则表达式,那么在编译Nginx时就必须把PCRE库编译进Nginx,因为Nginx的HTTP模块需要靠它来解析正则表达式。另外,pcre-devel是使用PCRE做二次开

2022-02-14 13:49:35 74

原创 Linux mysql 创建用户和赋操作权限

1 .使用具有数据库管理权限的用户登陆MySQL,如root@localehost用户mysql -u root -p 'root_password' 2 .在mysql中创建用户名和密码create user 'new_username'@'%' IDENTIFIED BY 'new_password';3 .配置权限grant all privileges on *.* TO 'new_username'@'%' with grant option;ALL: 所有可用的权限CREAT

2022-02-11 17:41:20 1506

原创 Linux 安装mysql

首先去下载符合服务器操作系统的mysql我这里安装5.7.26版本,服务器操作系统是64位的。以用uname -m来查看。下载完成后,可以用rz命令,把压缩文件上传到服务器上。(如果rz命令没安装,可以用 yum -y install lrzsz 命令安装)创建文件夹,mkdir -p usr/local/mysql 直接上传文件到这个目录并且解压tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz解压完成后,更改下文件名称mv mysql

2022-01-19 16:58:13 985

原创 elementUI clearSelection属性报错 Cannot read property ‘clearSelection‘ of undefined“

接到客户一个需求,点击操作按钮时,table的选择框不要去掉,只有查询的时候才给去掉。当时想到可以用elementUI的:reserve-selection=“true” 属性,配置row-key="id"来设置不去除复选框。但这样就定死了 查询也不会刷新复选框。想着把属性:reserve-selection定成可变参数值设置为可变的,只有查询的时候把值改成false。实际效果显示,这种方式不可行。那就再换一种方式clearSelection。文档中是这么说的这样设置的话,看看效果用这

2021-08-10 12:03:31 7297 2

原创 java List集合转数组

List集合转数组List<Long> oneOrderIds = new ArrayList<>();oneOrderIds.toArray(new Long[oneOrderIds.size()])

2021-05-24 14:00:02 257

原创 通过反射,对对象中的字段做非空验证

实际接口开发中,发送方传输数据时,可能没有照着定义规范来,必填字段存在空值的情况,这样接收方就需要严格遵循要求,要验证字段是否必填。常规方式,依次获取对象中的字段来做判断,工作量巨大,并且还容易出错。所以想了一个公共方法来验证字段是否必填废话不多说,直接上代码:ResponseMessageBean responseMessageBean = ValidationNotEmptyUtil.returnMessage(Object)public static ResponseMessage

2021-04-16 16:14:22 591

原创 java 把JSON字符串转成List集合

List<String> thermocline = new ArrayList<>();thermocline = JSONArray.parseArray(jSONObject.get("allTemperature").toString()).toJavaList(String.class)集合转数组List<Long> oneOrderIds = new ArrayList<Long>()Long[] long = oneOrderIds.

2021-03-04 19:17:36 874 1

原创 java 指定一个目录,删除下面所有的子目录和文件

闲着无聊 想写个这样的例子 方便自己记忆吧static void delete(File file) { if(!file.exists()) { System.out.println(file.getName()+"无可删除的文件"); return; } if(file.isDirectory()) { deleteByDir(file); }else if(file.isFile()) { deleteByFile(file); } } stat

2020-12-17 15:29:10 277

原创 Jquery 实现页面倒计时的功能

最近碰到个页面要显示倒计时的功能。因为不可能去一直ajax请求数据库获取最新的时间,只有在页面也去实时的变更倒计时。var timer = setInterval(function () { /*获取datagrid的时间列的信息 */ var tdList = $('#report1 .datagrid-body [field=TIME_COUNTDOWN] div'); for (var i = 0; i < tdList

2020-11-18 10:32:13 921

原创 查询用户对应时间段的数据,并且可以对选中的内容做更改。(bootstrapTable、layer)

近段时间做项目, 有个需求。查询用户对应时间段的数据,并且可以对选中的内容做更改。看到这个需求,一下就想到了bootstrapTable。这是成品样式。<div id = "updateDiv" style="display: none;"> <div id = "ch1"> <input type="checkbox" id ="typeInfo" name = "typeInfo" value ="常温">常温 <input type=

2020-10-29 14:49:58 313

原创 java web端把收到的集合转换成对象集合

<reqData>{ "code" : "ASZBX20200909000010", "proofs" : [ { "isText" : "N", "proofTitle" : "油费", "id" : 150, "relateType" : 0, "uploadText" : "", "proofDetails" : [ { "proofAmount" : 1, .

2020-09-11 14:30:27 388

原创 Jenkins 自动打包发版Tomcat windows linux环境小结

这两天研究Jenkins 自动打包发版,碰到很多问题 现做一次小结对两种类型服务器打包发版都是用指令去对服务器maven下的程序打war包,然后把包复制到 Tomcat下,重启启动Tomcat的方式Jenkins 在对Linux 服务器环境打包发版时,在Jenkins 项目配置里->选择构建->execute shellBUILD_ID=DONTKILLMEsh /mnt/ems-tomcat/bin/emsTomcat.sh一定要设置BUILD_ID 要不然Jenkins 执行完

2020-07-17 09:38:00 221

原创 DecimalFormat四舍五入踩过的坑

在代码里对小数数据四舍五入,我们很快能想到DecimalFormat 类。比如对数据进行四舍五入保留两位小数。DecimalFormat decimalFormat = new DecimalFormat("#.##");decimalFormat.format(“3.145”);输出出来也是正确的 3.15但是只要把要四舍五入前面的一个数字改成奇数,就挂了 比如改成3.155运行出来的结果还是3.15现分享一个四舍五入方法public static String round5(String

2020-05-21 16:00:10 950

原创 输出数组中的字符串

之前输出数组中的字符串,要不直接System.out.println(list.toString());要不就是for循环数组,先后截取掉中括号和尾部的逗号。既繁琐代码也不美观。现推荐几种输出方式。System.out.println(Joiner.on(",").join(list));可以直直接输出字符串。但是有个问题。如果数组中有Null ,那么会报空指针。针对这种情况, ...

2020-04-13 14:38:30 1488

原创 PageHelper.startPage 分页的坑

之前一直没用过PageHelper.startPage分页,都是自己在项目配置的自定义分页,这次开发的项目里,大家用的是这个,用的时候碰到一个问题,现记录下。项目要求做一块实时仓库信息大屏来动态显示数据。因为有些地方需要滚动显示,故而用到了分页。我是在HTML页面上有五个function ,里面各自用ajax来同步刷新数据。功能完成后刷新页面测试的时候发现,数据显示不全。右下角的库位图只显...

2020-02-27 15:32:40 6290

原创 从一个集合对象中循环拿出数据拼成一个JSON,要求够五条数据生成一条JSON,最后剩余不满足五条就直接存成一条数据

废话不说 直接上代码在CarStorageMoveBean carStorageMoveBean = new CarStorageMoveBean(); List<RowsBean> beans = new ArrayList<>(); for (int i = 0; i < customerList.size(); i++) { SendToC...

2019-07-22 15:10:56 382

原创 fastJson去转时间格式的JSON字段时,怎么才能自定义时间格式

做项目时,有个需求是把业务处理产生的数据 通过对象传到另一个接口中去,从那个接口存到表里。(为什么这么做呢。因为用到的不是一个库。) 但是我用fastJson转数据时,发现时间格式无法转成我想要的样子。因此找到一个的fastJson的方法JSON.toJSONStringWithDateFormat(object,"yyyy-MM-dd HH:mm:ss",SerializerFeature...

2019-07-22 14:57:06 1283

原创 Webservice wsdl 里显示的数据不全。

用cxf 开发一个webservice接口,去访问WSDL的时候会发现总感觉里面的信息不全。试了各种方案,最后才发现 ,webservice接口和实现类要放在同一层级的包下,才能显示全的信息。但是呢 我这边的包结构,又不允许我这么放,那就在@WebService注解里加上一个targetNamespace。(注意,接口和实现类都需要加,而且需要加一样的)加完后再去执行。OK 没问题...

2019-07-12 14:51:09 987 1

原创 java 读取FTP文件夹里的所有文件,读取成功后删除并备份到其他文件夹

现需求,读取FTP上的JSON文件,操作完成后把源文件删除并且创建备份文件夹被封。在网上找了好多例子都用不了。自己尝试着取写了一个。经测试可用。public static FTPClient getFTPClient(String ftpHost, String ftpUserName,String ftpPassword, int ftpPort) {FTPClient ftpClie...

2019-07-04 21:58:53 2631 2

原创 FTP 读取文件后,所在文件夹为空的问题

现业务流程是,读取FTP某目录下面的文件,读取完毕后把文件移到另外一个目录下。//列出目录下所有的文件FTPFile[] fs = ftpClient.listFiles();for (FTPFile ftpFile : fs) {//遍历循环该文件夹下的文件remoteAbsoluteFile = ftpFile.getName();//获取远程文件的输入流ins = ftpCli...

2019-07-02 18:00:35 5147

原创 tomcat下 删除webapps和work下面的项目后,tomcat启动报错

常常在开发时,多个项目挂在一个Tomcat下,但是后续想把个别项目从Tomcat移除的时候发现,Tomcat执行报错.我咱们只需要找到打开此文件后,找到找到这些你已经删除的项目,有多少删多少,再重新启动Tomcat就不会报错了...

2019-04-26 14:05:12 1241

原创 如何在Postman里调用未信任的HTTPS接口

同样的请求方式 在浏览器可以访问未信任的HTTPS地址,在postman里却无法访问如图:我们得到这一串提示.根据提示 去设置postman如图:关闭此选项即可访问...

2019-04-26 13:52:57 1226 1

FsonFormat.rar

FsonFormat是一款Eclipse 插件,实现了一键解决复杂JSON ,快速实现JavaBean功能,提供开发人员和测试人员使用 FsonFormat是一款专为Eclipse打造的快速解析json的插件 1、根据Gson库使用的要求,将JSON结构格式解析成实体类 2、一键解决复杂JSON ,快速实现JavaBean。 一句话就可以将复杂的JSON数据解析成相应的Bean对象。 JavaBean javaBean=gson.fromJson(jo.toString(),JsonBean.class);

2020-09-11

空空如也

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

TA关注的人

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