- 博客(301)
- 资源 (15)
- 收藏
- 关注
原创 基于微信小程序图书馆座位预约系统设计与实现
基于微信的餐厅点餐系统是利用微信中的小程序功能来实现,自2011年微信诞生以来,微信的使用越来越普遍,尤其最近几年微信旗下的微信小程序因其不占内存,用完即走的特点吸引越来越多用户,使用微信小程序设计的系统也越来越多。本课题利用了发展至今逐渐趋于成熟的小程序来满足餐厅顾客的需求,优化了传统人工点餐的流程,使得用户可以通过微信小程序进行下单,商家接收到订单信息后,可以对用户提供相关服务。本系统主要使用了微信小程序制作前端,后台利用MySQL数据库来保存点餐所需的相关数据,实现了餐厅内点餐的基本功能。本系统主要
2024-07-20 12:10:46
232
原创 3、java虚拟机-类的生命周期-初始化阶段(与程序员有关)
一个类被初始化和加载,其中的静态代码块只会执行一次,而对象可以创建多次所以构造方法也可以执行多次,而代码块,通过字节码文件完们可以看到,是放到构造方法的字节码指令中执行的,且先执行,所以有了上述的输出结果。2、ClassforName所调用的类会被初始化,不过ClassforName方法的重载方法中可以设置是否可以进行初始化。如果当前的类,中的静态变量被final所修饰,那么这个类是不会被初始化的。3、通过new创建一个该对象时候,会被初始化。4、执行Main方法的当前类会被初始化。
2024-03-19 23:45:39
422
1
原创 2、Java虚拟机之类的生命周期-连接(验证、准备、解析)
连接阶段的第一个环节是验证,验证的主要目的是检测Java字节码文件是否遵守了中的约束。这个阶段一般是不需要程序员进行处理。赋值为1的时候,会发生在初始化阶段,在准备阶段会赋值0;三、解析-把符号引用替换为直接引用。其中这些开头通常又称之为魔术值。直接引用相比符号引用效率要高。如果魔术值被篡改会校验失败。
2024-03-19 22:49:44
292
原创 1、Java虚拟机学习-类的生命周期-加载阶段-以及怎样查看方法区中的对象和堆中对象的关联以及静态变量存在什么地方
类的生命周期可以分为五个阶段-其中连接又可以分为3个小阶段。因为连接阶段比较复杂也可以分为7个阶段
2024-03-19 21:33:36
484
原创 IDEA 2023快捷键
16、java maven 项目 默认不会对src\main\java 下面的非java文件进行编译,当然非java可以放到resource中。14、代码块整体移动 Tab 左移 shift+tab、3、ALT +SHIFT +↕ 可以把当前行代码进行移动。13、列编辑 ALT+鼠标选选左右上下移动 选择代码。9、ALT+insert 生成一些代码。7、CTRL+ATL+H 方法调用层级。12、代码重构 CTRL+ALT+M。4、CTRL+H 类的继承继承结构。
2024-01-05 16:42:27
1363
原创 Linux系统中部署minio服务、开启反向代理、二级域名SSL加固
35555 端口 访问minio可视化面板 与navicat(mysql可视化面板是一样的) ,web面板。对二级域名SSL 进行加固(https访问)/etc/profile文件中进行追加。9000端口代理,客户端上传资源端口。用一个二级域进行代理,对外提供服务。
2023-12-10 15:08:37
794
原创 毕业设计集锦-包括SSM项目和SpringBoot项目
UI界面交互为:JSP+jQuery+BootStrap。基于SSM框架进行开发-包括主流技术。
2023-11-13 09:43:35
233
原创 基于Jsp+Servlet+MySql的汉服网站的设计与实现-源码+毕业论文
基于Servlet+Jsp实现的汉服网站设计-源码+毕业参考毕业论文
2023-10-26 23:36:19
382
原创 判断字符串是否为空白字符串,““,“ “,NULL,的方法
import org.apache.commons.lang3.StringUtils;
2023-09-08 17:59:29
403
原创 线上通过Nginx部署前端工程,并且配置SSL
介绍、为了更好的帮助大家学习,减少歧义,IP地址我就不隐藏了,公司也是我自己的公司。你们就别来攻击了。下面给出步骤:一、前期准备工作通过在目标服务器上安装宝塔面板、安装redis、mysql、nginx、jdk环境等1、2、前端工程通过npm run build 打包成 dist文件3、在线下打包后要执行的java项目可执行Jar包,写一个shell执行脚本4、去阿里云申请免费的SSL证书,下载后,上传到目录中二、配置Nginx的配置文件添加配置文件。
2023-08-02 15:45:22
1551
原创 关于云服务器CentOS7.6版本安装宝塔面板后,点击终端无响应解决方案
我在百般无奈的情况下、卸载了宝塔后,最终躺平,选择了问宝塔官方客服。点击安全->点击SSH管理->开启SSH密钥登录。二、输入服务器密码通过ssh远程登录 服务器。下面是我沟通宝塔客服后,给的解决方案。1、从华为提供的远程登录方式选一种。二、执行宝塔官方提供的 命令执行。三、开启ssh密钥登录。
2023-06-21 17:07:01
880
原创 代码托管中心(远程仓库/gitee/github/gitlab)
3、令狐冲拉取完代码后,对代码进行修改,修改完毕后进行push,这个时候远程仓库会检查令狐冲有没有推送代码的权限,如果有,即可把代码推送到远程仓库。1、代码的管理人员(岳不群)把自己的本地库项目推送到远程仓库(gitee/github/gitlab)4、其他人拉去代码,与自己的本地代码进行合并。2、岳不群给令狐冲拉取代码的权限。
2023-05-30 14:12:49
140
原创 Git的使用
如果要把hit-fix分支合并到master 分支上,当前环境必须是master分支,再执行相应的命令,把hit-fix分支合并到当前master下。初始化完成后,会生产.git目录,默认是为隐藏的,需要把隐藏打开。也就是说,让git来管理我们的项目或者目录。如何查看已经设置好的了呢?
2023-05-29 18:22:00
937
转载 当用户再地址栏输入url后会发生什么
这个DNS通常都提供给你本地互联网接入的一个DNS解析服务,例如你是在学校接入互联网,那么你的DNS服务器肯定在你的学校,如果你是在一个小区接入互联网的,那这个DNS就是提供给你接入互联网的应用提供商,即电信或者联通,也就是通常所说的SPA,那么这个DNS通常也会在你所在城市的某个角落,通常不会很远。这个缓存时间太长和太短都不好,如果缓存时间太长,一旦域名被解析到的IP有变化,会导致被客户端缓存的域名无法解析到变化后的IP地址,以致该域名不能正常解析,这段时间内有可能会有一部分用户无法访问网站。
2023-05-12 11:39:30
169
原创 Java中List集合通过Stream转Map集合的实战应用-List按uid分组,分组后为Map<uid,List<对象>>;按uid分组,分组后为Map<uid,List.size()>>
1、例如 List 转 Map二、对盲盒订单,通过用户Id进行分组。
2023-04-23 10:27:43
325
原创 高德根据经纬度,查询所在位置信息
Tag(name=“AddressComponent”, description=“根据经纬度获取信息”)@Schema(title = “国籍”)@Schema(title = “省份”)@Schema(title = “街道”)@Schema(title = “市”)@Schema(title = “区”)
2023-04-03 18:36:38
6569
1
原创 通过递归查询省-市-区信息给前端-接口返回速度从1.5秒,优化到0.01s;从LambdaQueryWrapper查询--->sql编写查询->redis缓存
1、本项目是一个商城项目-在进行计算运费价格的时候,需要知道用户所填地址信息,是否在包邮地区,并且根据距离、地区、包裹件数、重量等计算邮费,所以需要通过一个city_id来唯一区分城市id;2、在全国范围内,存在同名的区名情况下,我不能根据简单的名称查询区查询城市的id,那么只能通过省份名称、市级名称、县级名称来唯一确定城市的id。3、因为地方名称的更改-数据库中的信息-可能和前端静态信息不匹配等,所以需要从数据中查询省市-区信息。第一版本 响应时间-平均1.5秒左右。第三版本响应时间-0.01秒左右。
2023-03-25 15:03:02
879
原创 JDK17-SpringBoot3.0 easyExcel导出封装公共导出方法
当前系统环境JDK17 SpringBoot3.0。-导出excel表格信息,超详细,封装公共导出方法
2023-03-21 13:31:19
1772
原创 Java中的序列化
如果实现接口的时候,没有给定UID,就会使用默认的UID,当使用默认的UID的时候,jvm每次编译的时候会生成一个UID,当后面程序改了一些代码,再次编译的时候会生成不同的UID,会导致反序列化失败!最常见的例子之一就是JWT:JWT由3部分组成:Header,Payload,Verify Signature,最后的签名部分其实就是对数据进行完整性校验的关键部分,用secret对数据部分进行哈希计算,随后检查计算出来的哈希值是否和请求中的JWT签名部分的哈希值相同。只有本地计算机上的代码才被授予该权限。
2022-12-22 11:30:20
777
原创 关于<type>pom</type><scope>import</scope>理解
其实很简单、 因为Maven里面与java一样,也是单继承那么如果1个工程已经有了一个父工程,那么还想再继承一些依赖,那么可以使用pomimport进行组合,一般不需要改的,至于类型为什么是pom,因为父类工程打包形式就是pom类型。
2022-12-21 18:15:23
2076
原创 关于Maven中pom文件标签的详解,分别对比父工程pom文件与子工程pom文件。
这里我们以若依开源框架为例,我们先讲解,父工程pom文件,之后再讲解子工程pom文件。首先,我们先介绍若依前后端分离项目的目录结构;
2022-12-14 15:11:40
4311
原创 Maven核心概念:约定的目录结构
因为maven想对我们项目或者工程进行自动化操作,那么约定的意义就在于,maven会对相应位置进行编译、打包、那么肯定要事先约定好目录位置。例如:maven执行编译操作,就必须去java源程序目录读取java源代码,然后执行编译,最后把编译结果存放在target目录。会让我们在开发过程中非常方便,例如如果每次创建maven工程后,还要针对各个目录的位置进行详细的配置,那肯定非常麻烦。Maven对于目录结构这个问题,没有采用配置的方式,而是基于约定。目前开发领域的技术趋势就是:约定大于配置,配置大于编码。
2022-12-13 15:30:36
218
原创 并发执行的效率一定比串行执行快?
在不同的操作系统、内存、CPU下,串行,并行,效率对比这里我们先给出结论不同的主机配置,执行结果是不一样的,而且处理不同的任务,结果也是不一样的。所以并发执行效率不一定比串行快。在Linux 2核2G操作系统下:在Linux 8核16G操作系统下:
2022-12-05 19:06:26
611
原创 2.2 Redis中SDS(简单动态字符串) 与C字符串的区别
与C字符串不同的是,SDS 的空间分配策略完全杜绝了发生缓冲区溢出的可能性:当SDS的API需要对SDS进行修改时,API 会先检查SDS 的空间是否满足修改所需的要求,如果不满足的话,API 会自动将SDS 的空间扩展至执行修改所需的大小,然后才执行实际的修改操作问题,所以使用SDS既然不需要手动修改SDS的空间大小,也不会出现前面所说的缓冲区溢出问题。和C字符串不同的是,Redis 中 SDS 在len 属性中记录了SDS本身的长度,所以获取一个SDS长度的复杂度仅为O(1)。
2022-11-30 17:52:25
800
原创 2.1 Redis中SDS的定义
SDS遵循C字符串以空字符结尾的惯例,保存在空字符的1字节空间不计算在SDS的len属性里面,并且为空字符分配额外的1字节空间,以及添加空字符到字符串末尾的操作都是由SDS函数自动完成的,所以这个空字符对于SDS的使用者来说是完全透明的。这个SDS和之前的区别在于,这个SDS为buf数组分配了5个未使用的字节空间,所以他的free 属性的值为5(图中,使用5个空格来表示5个未使用的字节空间)。2、len属性的值为5,表示这个SDS已经保存了一个5字节的字符串。//等于SDS所保存字符串的长度。
2022-11-29 10:16:08
526
原创 2、Redis中简单动态字符串的简介,也就是Redis中的键和值的字符串底层表达
首先在Redis中,没有直接使用C语言传统字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型(可以简单的理解为Java中的String 类),并且将SDS用作Redis的默认字符串表示。C语言字符串://普通字符数组 printf("c0 = %s\n" , c0);//没有乱码,因为编译的时候,以字符串格式输出的时候,默认在数组尾部追加了'\0' char c1 [ ] = {
2022-11-28 17:20:06
622
原创 云服务器最佳实践-Linux云服务器SSH登录的安全加固
5、选择“云服务器列表”页签,在“ecs-f5a2”所在行,单击操作列的“绑定”。按照图5进行配置,单击“确定”。在步骤5中为云服务器绑定密钥对时,已勾选了“关闭密码登录方式”,此处的“PasswordAuthentication”必为“no”,只需验证即可。我们可以通过一些方法识别云服务器的安全风险,比如检查SSH状态,查看疑似恶意登录的IP,然后在“/etc/hosts.deny”中将这些地址禁止。按“i”进入编辑模式,在第17行,将注释符“#”删掉,修改为“Port 5000”。
2022-11-26 11:37:35
1303
原创 1、是什么限制了MySql的性能?
## 一、最常见的MySql的性能瓶颈就是Cpu的耗尽。1、当执行大量并发查询请求的时候2、或者当执行少量的查询,但是在Cpu上长时间的运行,也就是说,一条Sql一句的查询时间太长以上2种情况会导致Cpu饱和。## 二、I/O饱和I/O饱和,也就是说,当用户通过浏览器或者客户端发起请求时候,会去访问存在与磁盘中的数据,请求一次,并且响应一条数据,中间经过磁盘,这就是I/O访问。在过去,因为我们的内存资源不足,数据库必须到机械硬盘中获取数据,性能开销非常的大。SSD(固态硬盘)通常比HD
2022-11-22 14:48:56
505
原创 宝塔通过phpmyadmin管理mysql时候存在的bug:HTTPConnectionPool(host=‘127.0.0.1‘, port=888): Max retries exceeded w
因为phpmyadmin 依赖于nginx ,所以必须启动nginx。如果nginx没有启动成功,那么必然会造成连击失败现象。nginx 有看能看起来是启动成功的,但是实际没有启动成功。
2022-11-22 11:41:44
5167
通过app控制硬件对接协议范围真实企业开发协议对接
2022-10-18
基于SpringBoot+MyBatis的外卖平台系统
2022-05-30
数据库编程-存储过程-触发器-级联更新-SQL-server-游标、全网最全最详细编程实战
2022-05-30
SqlServer通过命令创建数据库
2022-05-30
基于SSM框架的音乐网站
2022-05-10
基于ssm框架疫情物资管理系统.zip
2021-12-21
传智书城项目源代码完整版绝对无错调试完毕.zip
2021-06-12
实验五数据库编程:包括触发器、级联更新删除和系统函数等
2021-05-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人