自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 完整代码实现springboot项目内嵌ftp服务器

springboot中实现内嵌ftp服务器,

2024-03-07 20:51:43 618

原创 全局异常处理器统一异常处理(附带完整代码)

比如定义一个操作异常,继承运行时异常/*** 错误码*//*** 错误提示*//*** 错误明细,内部调试错误*//*** 空构造方法,避免反序列化问题*/@Override。

2024-03-07 15:53:40 503

原创 Mybatis批量插入或修改数据到Mysql

但Mybatis映射文件中的sql语句默认是不支持以";" 结尾的,也就是不支持多条sql语句的执行。所以需要在连接mysql的url上加 &allowMultiQueries=true 这个才可以执行。传入一个List,List中是要修改的实体类,用foreach组装多条update,这样只用建立一个链接,速度快不少。

2024-03-06 22:16:42 357

原创 CompletableFuture的详细使用(附带案例)

java多线程常用的CompletableFuture,对其做个简单总结

2024-02-27 21:01:09 343

原创 手动安装jar包到本地maven仓库

Dmaven.repo.local是指定的maven仓库的地址,如图我指定的是c盘下的.m2仓库;DgroupId是指maven创库存放jar包的路径, 也是pom文件中groupId标签中的值;DartifactId是指是pom文件中artifactId标签中的值。Dfile是指当前jar所存放的位置;Dversion是指版本号;

2023-12-26 18:30:53 236 1

原创 如何解决秒杀下单的超卖问题

来自黑马点评秒杀下单的分析

2023-11-06 11:48:43 213 1

原创 springboot内嵌ftp服务器(搭建ftp服务,可用ftp客户端连接)

监听器无法通过autowirte注入bean,写一个bean工厂,从spring的上下文WebApplicationContext 中获取。如果有一个文件记录表,要记录ftp推送上来的文件,可在监听器里做配置。最近项目需要在项目里内嵌一个ftp服务器。ftp文件上传的监听器。

2023-10-25 15:13:50 2417 1

原创 在校验时对List里的每一个对象进行校验

定义一个泛型类ValidList 实现List接口,在list上应用@Valid,这样就可以对每个BaseCourse对象校验。如果要对list里的每个对象进行校验 写一个Valist继承list接口。直接用List不会对其中的元素进行校验。

2023-10-21 14:48:11 662 1

原创 Object对象转字符串爆内存

当尝试使用 JSON.toJSONString() 方法将一个较大的对象转换为 JSON 字符串时,可能会导致内存溢出的问题。通过使用 JsonGenerator 的 writeRaw() 方法,我们将 JSON 字符串逐步写入输出流,并通过设置长度限制,只写入前 2000 个字符。最后,我们将输出流转换为字符串。解决方法:使用流式处理,以及逐步地将 JSON 字符串写入输出流,而不是将整个字符串存储在内存中。

2023-05-23 16:06:30 3283 3

原创 CompletableFuture并发处理示例

我们调用了futures.toArray方法,并传入了一个新的、空的CompletableFuture数组作为参数:new CompletableFuture[0]。这个数组的长度为0,但它的类型是CompletableFuture[]。toArray方法会使用这个空数组作为模板,创建一个新的数组,其类型与模板数组相同,长度与futures列表中的元素数量相同。当输入数组中的所有CompletableFuture对象都完成时,这个新的CompletableFuture对象也会标记为完成。

2023-05-23 15:21:39 370

原创 对复杂对象的校验

在program中需要校验的成员上加上@NotBlank(message = “一级指标点id不能为空”,groups = {ValidationGroup.class}),在上一级的类上加上@Valid。定义了一个名为 ValidationGroup 的接口。该接口没有任何方法或属性,它仅用于作为一个标记接口(marker interface)来分组校验规则。例如,对于program对象中的成员需要进行验证,但如果是空值,不进行验证。可以用标记接口来分组校验。

2023-05-23 15:19:08 293

原创 springboot在mysql中存储json数据

需要在mysql中存储json数据时

2023-03-04 17:14:10 1177 1

原创 开启tomcat后静态路径无法访问

开启tomcat后静态路径无法访问 File -> Project Structrue -> Modules -> 项目展开后的Web中修改Path Relative to Deployment Root路径,设置为空。

2020-10-25 14:22:35 2049

原创 JDBC连接mysql8.0出现java.sql.SQLException: The server time zone value ‘�й���׼ʱ��‘ is unrecognized or rep

JDBC连接mysql8.0出现java.sql.SQLException: The server time zone value ‘�й���׼ʱ��’ is unrecognized or represents more than one time zone. 需要设置时区和允许公钥 static final String DB_URL = "jdbc:mysql://localhost:3306/runoob?serverTimezone=UTC&allowPublicKeyRetrieva

2020-10-16 16:36:08 170

原创 java注解和反射

内置注解 @Override:定义在java.lang.Override中, 此注解只适用于修辞方法,表示一个方法打算重写超类中的另一个方法声明 @Deprecated:定义在java.lang.Deprecated中,此注解可以用于修辞方法、属性、类,表示不鼓励程序员使用这样的元素,通常是因为他很危险或者存在更好的选择。 @SuppressWarnings:定义在java.lang.SuppressWarnings中,用来抑制编译时的警告信息, 与前两个不同,需要添加一个参数才能够正确使用,

2020-10-12 00:19:10 185

原创 谷歌云wordpress搭建博客网站

利用谷歌云搭建博客 1.创建服务器 点击launch 设置好配置点击deploy部署,bitnami会自动配置mysql,php,nginx等环境。 2.设置静态ip 在vpc网络中将临时改为静态 3.域名DNS解析 创建的服务器会有一个ip,在域名管理界面解析新的ip 解析会花费10分钟至半个小时,如果这时访问域名出现500,请耐心等待。 4.颁发ssl自签证书 这时候的url是不安全的,为了让链接变为安全的链接,我们需要颁发ssl自签证书 进入bitnami文档 由于我们使用的nginx服务,所

2020-10-11 17:09:49 896 1

原创 推荐系统

得到的皮尔逊相关系数在[-1.1],越靠近1越正相关 基于用户的协同过滤 通过用户对物品的打分计算用户间的相似度再进行物品推荐 数据稀疏,用的少 基于物品的协同过滤 计算物品和物品的相似度 计算量少 两者的比较 隐语义模型 将物品和用户通过一些隐含因子联系在一起 参数沿着梯度下降的方向进行更新 隐语义模型建模得到参数,可以还原回去 准确率 预测值和真实值的平方误差 召回率 推荐实际有效的有多少个 ...

2020-10-08 14:29:24 122

原创 rnn回归预测算法

rnn进行回归预测函数走向 用蓝色的虚线学习红色实线的走向 数据由自己定义,一层输入隐层,一层lstm,一层输出全连接,完成模型的训练和结果预测 代码注释较为详细 import tensorflow as tf import numpy as np import matplotlib.pyplot as plt BATCH_START = 0 TIME_STEPS = 20 BATCH_SIZE = 50 INPUT_SIZE = 1 OUTPUT_SIZE = 1 CELL_SIZE = 10 LR

2020-09-08 00:05:06 1531

原创 python静态函数

最近在学python中发现,在类中声明为静态函数的函数在类内调用时可以不用跟上参数 例如这一段的self.msr_error函数声明为静态,compute_cost中调用此函数时不必声明参数,直接用self.msr_error就能调用 def compute_cost(self): #losses = tf.losses.mean_squared_error(labels=self.ys, predictions=self.pred) #求出的是每一步的loss

2020-09-07 23:55:42 2312

原创 conda及pip的一些源配置

python官方的镜像源:https://pypi.org/simple conda切换为原来的镜像源:conda config --remove-key channels conda添加单个源:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ 删除conda单个源:conda config --remove channels https://mirrors.tuna.tsinghua.e

2020-09-04 16:50:07 378

原创 scrapy爬取赶集网租房信息

scrapy爬赶集网租房信息 创建爬虫项目 scrapy startproject ganjizufang 创建好后的目录 创建爬虫 scrapy genspider ganji ganji.com 会在spiders目录下创建ganji.py文件, settings.py文件中更改请求头,并且将ROBOTSTXT_OBEY = False,爬虫就不会访问robots.txt 用xpath找出每一条信息所在的div,前两条是广告,所以从第三条开始 .//div[@class=“f-main-lis

2020-08-17 18:18:26 354

原创 xpath解析多线程爬取表情包

请求头要有referer和user-agent 防跨域请求需要refer值,是图片所在网站的域名 xpath解析响应的html字符串,.//img表示得到当前目录下所有的img标签,@data-backup表示得到某个属性值 srcs=html.xpath(’.//img/@data-backup’) 总体代码 import requests from lxml import etree from bs4 import BeautifulSoup url="https://www.doutula.com/"

2020-08-15 21:19:43 206

原创 无框架的爬虫基础

爬虫过程 向目标网站url , 发起请求httprequest,服务器提供响应封装在httpresponse (requests,urllib) 响应有二进制,html,json 目标提取 html(css,标签,数据,js),二进制(保存 jpg,MP4),json(字符串和python数据类型转换) (beautifulsoup、lxml、pyquery) 保存(文件、数据库) ```python url='https://movie.douban.com/top250'#起始url i

2020-07-29 17:16:20 228

空空如也

空空如也

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

TA关注的人

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