自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

永远热血的少年

记录学习,记录生活

  • 博客(45)
  • 资源 (1)
  • 收藏
  • 关注

原创 java实现下载文件压缩包

在开发过程中,我们会遇到需要对文件(单个或多个)进行压缩并下载的功能需求,这里记录一下压缩多个文件的实现过程,或许有更好的方式请大家补充。这样就实现了一个将多个文件进行压缩并下载的功能啦。controller控制层定义下载压缩包接口。前端实现一个按钮调下载压缩包的接口。定义service服务层接口。定义服务层接口实现类。

2023-10-30 10:07:42 803

转载 POI Excel 学习

工作簿(Workbook)表示使用HSSF Workbook类创建的Excel文件。3、创建单元格(实际上是定位到单元格)11、单元格换行(写入多行数据)10、单元格类型(数据类型)5、单元格对齐、高度和宽度。

2023-05-08 15:20:58 201 1

转载 Java 使用PDFBox对pdf文件进行相关操作

设置PDF文档属性(包括作者、创建时间、修改时间等)往PDF文档里添加javaScript脚本。加密PDF文档,即打开时需要输入密码。创建空的PDF文件并报错到本地。往PDF页面中添加单行文字。往PDF页面中添加多行文字。将多个PDF文档合并成一个。将一个PDF文档拆成多个。加载已有的PDF文档。读取PDF文档里的文字。往PDF文档里插入图片。

2023-05-06 15:49:34 3255 1

原创 Java开发中的一些规范和技巧

3.遇到常量和某个值做比较时(尤其是equal判断是否相当),建议将常量写在前面,这样可以避免空指针异常。记录一下自己容易犯的一些错误和一些开发技巧,大家有好建议可以分享一下。2.经常用到的常量可以写成一个常量类,而不要直接在代码里写成字符串。1.包名尽量小写,复杂的名称建议拆成几个包。4.List集合常用方法。

2023-04-26 15:35:33 175 1

原创 Java实现文件回显

在项目中对已经保存的文件进行回显是经常需要做的,常用的是在后端将文件转为base64编码再传给前端,前端在展示文件的容器(比如最简单的img标签)的url里赋值传过来的base64码就可以回显文件。

2023-04-26 14:37:06 836 1

原创 Java下载Excel模板文件的实现

在项目中经常会用到文件下载的功能,比如下载excel模板,这里简单记录一下实现过程。2、controller层写下载的接口。3、前端直接调用这个接口就可以实现下载啦。

2023-04-26 14:16:24 4110 1

原创 Mapper.xml中sql常用技巧

mybatis写sql语句的一些常用技巧

2023-03-18 12:24:23 646

原创 JavaScript数组常用的一些方法

5.map()映射数组,修改数组元素,返回新数组。4.includes()判断是否存在某对象。1.forEach()遍历。2.filter()过滤。3.push()添加对象。

2022-12-20 14:28:01 50

原创 MySQL的order by

order by语句相比与其它语句执行时间比较靠后,所以一般写在sql语句的最后;1)按某字段升序: order by 字段名 esc;当我们需要对从数据库里查询出来的数据进行排序时,就得用到order by语句;2)按某字段降序: order by 字段名 desc;order by 字段1 ,字段2 desc;

2022-11-15 14:50:39 2927

原创 MySQL根据两个日期类型字段计算出相差天数

MySQL根据两个日期类型字段计算出相差天数

2022-11-15 14:21:57 633

原创 Spring MVC学习—请求消息中不同类型参数的传递

我们在Controller中定义了各种各样的API接口,可以向它们发送GET/POST等请求消息,当发送的请求消息需要传递参数时,该如何处理呢?1-普通参数直接在restful请求路径后面加上需要传递的参数,注意参数名需要和API里定义的形参名一致,否则会匹配不上如果参数名不一致,而又想要匹配上,可以在定义的API方法的参数前加上@RequestParam2-POJO类型参数如果需要传递对象类型参数,可直接传递对象的各个属性的值如果对象属性里包含对象引用,可用“引用对象.属性=

2022-08-21 17:58:48 292

原创 JavaScript学习

JavaScript是脚本语言JavaScript是一种轻量级的编程语言。JavaScript是可插入HTML页面的编程代码。JavaScript插入HTML页面后,可由所有的现代浏览器执行。JavaScript很容易学习。

2022-07-28 15:20:45 214

原创 VUE学习

这是vue的学习笔记,适合简单复习一、什么是VUE前端三大框架之一(另外两个分别是Angeler和React),它结合了Angel的模块化和React的虚拟Dom的特点,优化前端开发。二、第一个Vue程序三、Vue基本语法v-bind类似于thymeleaf里的th:v-if v-else-if v-else判断v-for 循环四、Vue绑定事件在视图里用v-on:命令添加事件,在js中写对应的方法方法必须定义在Vue的method对象里,............

2022-07-27 17:58:59 208

原创 华为算法刷体积累(入门)

1-取近似值写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于 0.5 ,向上取整;小于 0.5 ,则向下取整。2-提取不重复的整数输入一个 int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。保证输入的整数最后一位不是 0 3-截取字符串输入一个字符串和一个整数 k ,截取字符串的前k个字符并输出4-输入n个整数,输出其中最小的k个输入n个整数,找出其中最小的k个整数并按升序输出5-输入整型数组和排序标识,对其元素按照升序或

2022-06-22 19:33:27 108

原创 笔试题积累

1、(判断题)小型机通常采用RISC和unix操作系统 对小型机,一般认为,传统小型机是指采用RISC、MIPS等专用处理器,主要支持UNIX操作系统的封闭、专用的计算机系统,所以又称RISC服务器或Unix服务器。性能比大型机要差,比PC机要好。2、(单选题)磁盘接口的类型包括:1、SAS;2、SATA;3、NL-SAS;4、SCSI;5、IDE。请对上述五种类型的接口速率由快到慢进行排序,正确的一项是?132453、单选题)以下哪项用来确定路由优先级?路由协议算法的优劣4、(判断题)在s

2022-06-22 17:37:18 357

原创 【毕业季】我们的时光,是最好的时光

我们的时光,是最好的时光

2022-06-22 16:28:07 126 2

原创 剑指offer刷题积累(Java)

入门简单1-替换字符串里的空格依次遍历String中的每一个字符string.charAt(i),用StringBuilder来存储最终结果,判断是否为空格,是则往stringbuilder添加要替换成的字符,否则直接添加。2-返回数组中重复的数字用HashSet来存储数据,遍历数组将数字添加到set里,用set.contains(i)方法判断是否有重复,有则直接返回。3-从头到尾打印链表........................

2022-06-17 18:42:50 91

原创 Swagger使用学习

最流行的API框架,是一款RestFul风格 API文档的在线自动生成工具,能使得API文档和API定义同步更新。讲得简单些,现在是前后端分离时代,前端可以不再依赖后端就能直接运行,而实现前后端交互的过程就是后端在控制层提供一个个API接口,前端通过这些API接口来获取对应的Json数据。现在面临一个问题,如果前端需求发生变化,比如数据表要添加一个字段,前端是很容易做到的,可后端修改起来却很麻烦,尤其是当需求不断变化,而前后端又不能及时沟通,就会使得项目开发延期。而Swagger就是用来解决这个问题的,它能

2022-06-02 12:52:55 343

原创 JSR-303学习

JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator简单的说,JSR-303就是用来做表单验证的。比如你想检查前端表单输入不为空,就可以在实体类对应的属性上使用JSR-303的@NotNull注解来实现。JSR 303 用于对 Java Bean 中的字段的值进行验证。 Spring MVC之中也大力支持 JSR-303,可以在控制器中对表单提交的数据方便地验证。 注:可以使用注解的方式进行验证规则的添加。@Nul

2022-06-01 20:38:39 716

原创 Spring Data JPA学习

Spring Data JPA是数据持久层里的一款全自动的ORM框架。简单来说,Spring Data JPA就是以面向对象的思想来对数据库进行访问和控制的一款框架,全自动的意思就是你甚至可以不用去数据库里创建表,全由它来做。1)什么是JPA?JPA(Java Persistence API)是Sun官方提出的Java持久化规范。它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据。 JPA的出现主要是为了简化并标准化现有的持久化开发工作、整合ORM技术,结束现在Hibernate

2022-06-01 20:26:46 130

原创 Nginx学习笔记

一、什么是Nginx?Nginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。二、为什么要用Nginx?刚开始开发一个项目后,你可能只有一台服务器就能满足访问需求,可随着访问量越来越大,一台服务器开始吃不消,于是你决定使用多台服务器,开启多个服务来为用户提供访问,可这时你不得不面临一个问题:用户不可能同时去访问多台服务器,该如何让用户只管访问一个端口,就能去访问到不同的服务器呢?这时Ngnix就可以来帮你实现了。举个简单的.

2022-05-25 17:32:12 64

原创 Spring学习笔记

一、初识Spring什么是Spring?一款轻量级的控制反转和面向切面编程的开源框架。创始人是音乐博士Rod Johnoson,其理念是使现有技术更易使用。优点:1.开源的免费的框架2.轻量级的,非侵入式的框架3.IOC和AOP4.支持事务处理,支持框架整合二、IOC设计思想:之前由程序员通过new来控制对象的创建,可面对不同的需求时,需要程序员创建很多对象,修改很多代码,IOC的设计思想就是把对象的控制权交给第三方(比如容器),我们想使用哪个对象就直接通过第三方调用,.

2022-05-07 20:25:25 176

原创 Linux命令积累

clear 清空屏幕目录相关命令cd 目录名 切换目录cd .. 返回上一级目录(./ 是当前目录)cd~回到当前的用户目录pwd 显示当前所在的目录ls 列出目录ls -a 列出所有文件ls -mkdir 创建目录(文件夹)mkdir -p 递归创建目录rmdir 删除目录(不能删除不为空的目录)rmdir -p 递归删除目录cp 当前目录/文件 要复制到的目录 复制文件或者目录重复拷贝会提示是否覆盖原文件:y或者nrm 移除文件或者目录...

2022-04-26 17:46:02 605

原创 Java基础学习13--注解和反射

一、注解Annotation1、注解概述注释+解释:不是程序本身,而是对其做出解释,并能被其它程序读取。格式:@注释名(参数)定义注解的关键字:@interface2、常见的内置注解:@Override重写覆盖方法@Desperated已过时的,不推荐程序员使用的(但是使用也不会错)@SuppressWarnings()镇压警告,用来抑制编译时的警告信息(不建议使用)3、元注解用来解释注解的注解,Java定义了四个标准的元注解:@Target 描述注解的使

2022-04-17 11:55:18 352

原创 算法积累-02

今天介绍用双指针来实现归并排序,先看题目:给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。例如:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]我们要知道,原数组里有正负数和0,这导致了它们平方后原来的数组就不再有序。如果没接触过双指针,我们的第一想法就是先把数组里的数经过平方之后,再对数组进行排序,这也是一种方法,至少解决了问题。但当解决问题的方法不止一种的时候,我们就要考虑哪一种最合适

2022-04-02 12:33:44 72 2

转载 设计模式学习--工厂模式

先举个例子:您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。这种设计思想就是工厂模式,我们使用对象时就直接通过工厂来获取对象,工厂提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。主要解决:主要解决接口选择的问题。何时使用:我们明确地计划不同条件下创建不同

2022-04-01 18:59:13 65

原创 算法积累-01

一、二分查找说个段子:有一天小明到图书馆借了 N 本书,出图书馆的时候,警报响了,于是保安把小明拦下,要检查一下哪本书没有登记出借。小明正准备把每一本书在报警器下过一下,以找出引发警报的书,但是保安露出不屑的眼神:你连二分查找都不会吗?于是保安把书分成两堆,让第一堆过一下报警器,报警器响;于是再把这堆书分成两堆…… 最终,检测了 logN 次之后,保安成功的找到了那本引起警报的书,露出了得意和嘲讽的笑容。于是小明背着剩下的书走了。 从此,图书馆丢了 N - 1 本书。题目:给定一个 n 个元素有序的

2022-03-25 17:20:27 375

原创 Java注解的积累

一点点把接触到的注解积累起来,以后想不起来的时候好查

2022-03-23 17:44:29 110

原创 Java基础学习12--Java 网络编程 API

目录一、Java 网络工具类1、InetAddress 类2、URL 类二、Socket 编程一、Java 网络工具类1、InetAddress 类在 TCP/IP 协议族中,是通过 IP 地址来标识网络上的一台主机的。假设需要在程序中获取本机的 IP 地址,该如何编写代码呢?通过查阅 JDK API 文档获悉,在 Java 中,使用 java.net 包下的 InetAddress 类表示互联网协议的 IP 地址。下面的案例演示了如何获得本地主机的 IP 地址i.

2022-03-21 18:10:22 439

原创 Java基础学习11--反射机制

一、什么是反射Java 反射(Reflection)是指 Java 程序在运行时,可以动态的加载、探知、使用编译期间完全未知的类。也就是说,Java 程序可以加载一个运行时才得知类名的类,获得类的完整构造方法,并实例化出对象,给对象属性设定值或者调用对象的方法等。这种在运行时动态获取类的信息以及动态调用对象方法的功能称为 Java 反射机制例如在使用 Eclipse 时,当开发者定义了一个类Car,里面写了一些方法,再创建Car类对象car并输入car.时,Eclipse 会弹出car对象可用的方法

2022-03-21 12:21:24 395

原创 Java基础学习10--XML

XML 是可扩展标记语言(Extensible Markup Language)的简称。XML 一经推出,就得到了 IT 行业巨头们的响应,如今已被广泛使用。XML 独立于计算机平台、操作系统和编程语言,用来表示数据,简单、灵活、交互性好和可扩展这几个特点是其能被广泛使用的主要原因。XML 的应用范围主要体现在以下几个方面:存储数据:内存中的数据需要存储到文件中,才能在关闭系统或系统掉电之后,通过文件进行恢复。现如今,用数据库存储数据这种方式使用得最为广泛。因为数据库管理系统不仅能存储数据,而且提供

2022-03-20 20:25:09 98

原创 Java基础学习09--IO--其他流(缓存流、转换流、数据流)

目录1.装饰器模式简介2.缓冲流3.转换流4.数据流到目前为止,使用的字节流、字符流都是无缓冲的输入、输出流,这就意味着,每次的读、写操作都会交给操作系统来处理。这样的做法可能会对系统的性能造成很大的影响,因为每次操作都可能引发磁盘硬件的读、写或网络的访问,这些磁盘硬件读、写和网络访问会占用大量系统资源,影响效率。而接下来要介绍的一些流就可以很好的解决这一问题。1.装饰器模式简介缓冲流、转换流和数据流等,其底层都遵循着一个相同的设计模式——装饰器模式简单的讲,装饰器模式就

2022-03-20 19:47:19 207

原创 Java基础学习08--IO--字符流

读取字符流类继承自抽象类 Reader,写入字符流继承自抽象类 Write。并且 Reader 的子类必须实现的方法只有 read(char[], int, int) 和 close()。但是,多数子类还重写了 Writer 或 Reader 类定义的一些其他方法,以提供更高的效率或完成其他功能。Reader 和 Writer 要解决的一个主要问题是国际化。原先的 I/O 类库只支持 8 位的字节流,因此不能很好地处理 16 位的 Unicode 字符。Unicode 是国际化的字符集,这样在增加了 R

2022-03-20 19:17:11 259

原创 Java基础学习07--IO--字节流

目录一、流的概念二、字节流一、流的概念流是对 I/O 操作的形象描述,水从一个地方转移到另一个地方就形成了水流,而信息从一处转移到另一处就叫做 I/O 流。一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是 Internet 上的某个 URL。对于流而言,不用关心数据是如何传输的,只需要从源端输入数据(读),向目的端输出数据(写)。如何理解输入和输出呢?简单地说,你听别人唠叨就是输入,你向别人发牢骚就是输出。在计算机的世界中,输入 Inpu

2022-03-20 18:56:52 71

原创 Java基础学习06--File类

通常在软件开发项目中,长期保存数据的办法主要有两类:一类是使用数据库保存,;另外一类就是把数据保存在文件中——使用 IO 和 XML 存取数据,学习它们之前我们要先了解File类一、File 类File 类生成的对象就代表一个特定的文件或目录,并且 File 类提供了若干方法对这个文件或目录进行读写等各种操作。 File 类在 java.io 包下,与系统输入/输出相关的类通常都在此包下1.File 类的构造方法File(String pathname):创建一个新的 File 实例,该实例

2022-03-20 18:29:23 999

原创 Java基础学习05--集合Map

目录Map 接口定义了存取“键值对”的方法,常用方法:Map 的遍历Map 接口定义了存取“键值对”的方法,常用方法: Object put(Object key,Object value) 将指定键值对(key 和 value)添加到 Map 集合中,如果此 Map 集合以前包含一个该键 key 的键值对,则用参数 key 和 value 替换旧值。 Object get(Object key) 返回指定键 key 所对应的值,如果此 Map 集合中不包含该键

2022-03-19 20:31:59 59

原创 Java基础学习04--集合List

一、List接口List 是 Collection 接口的子接口,List 中的元素是有序的,而且可以重复。List 集合中的数据元素都对应一个整数形式的序号索引,记录其在集合中的位置,可以根据此序号存取元素。JDK 中常用的 List 实现类是 ArrayList 和 LinkedList。除了拥有 Collection 接口所拥有的方法外,还拥有下列方法 void add(int index,Object o) 在集合的指定 index 位置处,插入指定的 o 元素。 Obj

2022-03-19 20:23:12 560

原创 Java基础学习03--迭代器iterator

记录一下自己在蓝桥云课里的学习过程,每天进步一点点一、什么是迭代器Iterator 为遍历集合而生,是 Java 语言解决集合遍历的一个工具。iterator()方法定义在 Collection 接口中,因此所有单值集合的实现类,都可以通过 iterator()实现遍历。iterator()的返回值是 Iterator 对象,通过 Iterator 接口的 hasNext()和 next()方法即可实现对集合元素的遍历。二、Iterator 接口的三个方法 boolean hasNext(

2022-03-19 19:32:02 743

原创 Java基础学习02--集合Set

记录一下自己在蓝桥云课里的学习过程,每天进步一点点目录一、Set集合二、Set主要方法:三、HashSet1.HashSet 是如何判断元素重复的?2.为什么要重写equals()和hashCode()四、TreeSet五、比较器1.内部比较器Comparable 接口2.外部比较器Comparator 接口一、Set集合Set 是 Collection 的子接口。Set 中的元素是不能重复的、无序的,这里的“无序”是指向 Set 中输入的元素,与从 Se

2022-03-19 19:25:36 139

原创 Java基础学习01--初识集合

为什么要用集合?之前用数组可以存储多个数据类型相同的元素,但面对频繁增加、删除、修改元素的要求以及动态扩容要求时显得捉襟见肘。1.Java 语言中的数组长度是固定的,如果数组长度设置小了,不能满足程序需求,并且容易造成数组越界等异常的发生;如果数组长度设置大了,又会造成空间浪费。2.无法通过数组对象直接的获取真实对象的数量。因为数组提供的 length 属性是获取数组的长度,而不是数组中实际存放有用信息的个数。3.数组元素在内存空间中是连续存放的,这样如果在数组中删除一个元素,为了保持数组内

2022-03-19 18:46:46 502

ZZQNode.rar

基于Android开发的记事本APP,可以添加文字、图片、视频日记,能获取GPS定位信息

2022-04-02

空空如也

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

TA关注的人

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