自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 微服务开发框架——DAY1

单体架构:简单方便,高度耦合,扩展性差,适合小型项目。例如:学生管理系统分布式架构:松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝微服务:一种良好的分布式架构方案①优点:拆分粒度更小、服务更独立、耦合度更低②缺点:架构非常复杂,运维、监控、部署难度提高SpringCloud是微服务架构的一站式解决方案,集成了各种优秀微服务功能组件SpringCloudRibbon的底层采用了一个拦截器,拦截了RestTemplate发出的请求,对地址做了修改。

2024-01-26 00:07:59 766

原创 4小时精通MyBatisPlus框架

在日常开发中单表的CRUD功能代码重复度很高,也没有什么难度。而这部分代码量往往比较大,开发起来比较费时。目前企业中都会使用一些组件来简化或省略单表的CRUD开发工作。目前在国内使用较多的一个组件就是MybatisPlus.MyBatisPlus是针对于Mybatis框架的增强,即合作伙伴。当然,MybatisPlus不仅仅可以简化单表操作,而且还对Mybatis的功能有很多的增强。可以让我们的开发更加的简单,高效。通过学习,主要达成如下目标:能利用MybatisPlus实现基本的CRUD。

2024-01-23 04:55:53 1162

原创 项目实战———苍穹外卖(DAY12)

Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。一般情况下,POI 都是用于操作 Excel 文件。银行网银系统导出交易明细各种业务系统导出Excel报表批量导入业务数据。

2024-01-20 01:03:20 1100

原创 项目实战————苍穹外卖(DAY11)

Apache ECharts 是一款基于 Javascript 的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。1). 柱形图2). 饼形图3). 折线图不管是哪种形式的图形,最本质的东西实际上是数据,它其实是对数据的一种可视化展示。

2024-01-19 23:18:13 3730

原创 项目实战——苍穹外卖(DAY10)

是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑。定时任务框架定时自动执行某段Java代码为什么要在Java程序中使用Spring Task?1). 信用卡每月还款提醒2). 银行贷款每月还款提醒3). 火车票售票系统处理未支付订单4). 入职纪念日为用户发送通知只要是需要定时处理的场景都可以使用Spring TaskWebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性。

2023-11-26 19:41:01 1459

原创 项目实战——苍穹外卖(Day9)

产品原型:业务规则分页查询历史订单可以根据订单状态查询展示订单数据时,需要展示的数据包括:下单时间、订单状态、订单金额、订单明细(商品名称、图片)接口设计:参见接口文档。

2023-11-25 03:26:15 1663 9

原创 项目实战——苍穹外卖(Day8)

前面的课程已经实现了用户下单,那接下来就是订单支付,就是完成付款功能。支付大家应该都不陌生了,在现实生活中经常购买商品并且使用支付功能来付款,在付款的时候可能使用比较多的就是微信支付和支付宝支付了。在苍穹外卖项目中,选择的就是微信支付这种支付方式。要实现微信支付就需要注册微信支付的一个商户号,这个商户号是必须要有一家企业并且有正规的营业执照。只有具备了这些资质之后,才可以去注册商户号,才能开通支付权限。

2023-10-09 22:36:08 1369 1

原创 项目实战——苍穹外卖(Day7)

Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。Spring Cache 提供了一层抽象,底层可以切换不同的缓存实现,例如:EHCacheCaffeineRedis(常用)

2023-10-03 11:42:02 940

原创 项目实战——苍穹外卖(Day6)

HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。发送HTTP请求接收响应数据为什么要在Java程序中发送Http请求?有哪些应用场景呢?当我们在使用扫描支付、查看地图、获取验证码、查看天气等功能时。

2023-09-26 22:58:19 1051 1

原创 项目实战——苍穹外卖(Day5)

Redis是一个基于内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件。RedisRedis中文网key-value结构存储:基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻)企业应用广泛Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。它存储的value类型比较丰富,也被称为结构化的NoSql数据库。

2023-09-19 12:58:34 883

原创 项目实战——苍穹外卖(Day4)

完成套餐管理模块所有业务功能,包括:新增套餐套餐分页查询删除套餐修改套餐起售停售套餐要求:根据产品原型进行需求分析,分析出业务规则设计接口梳理表之间的关系(分类表、菜品表、套餐表、口味表、套餐菜品关系表)根据接口设计进行代码实现分别通过swagger接口文档和前后端联调进行功能测试。

2023-09-17 13:42:14 1640

原创 项目实战——苍穹外卖(Day3)

进入到sky-server模块,创建com.sky.annotation包。

2023-09-14 13:32:56 1265

原创 项目实战——苍穹外卖(Day2)

ThreadLocal 并不是一个Thread,而是Thread的局部变量。ThreadLocal为每个线程提供单独一份存储空间,具有线程隔离的效果,只有在线程内才能获取到对应的值,线程外则不能访问。

2023-09-10 13:48:38 2113 1

原创 Git学习

Git介绍 分布式版本控制工具 VS 集中式版本控制工具Git安装 基于官网发布的最新版本2.31.1安装讲解Git命令基于开发案例详细讲解了git的常用命令Git分支 分支特性分支创建分支转换分支合并代码合并冲突解决Idea集成Git创建远程库代码推送Push代码拉取Pull代码克隆cloneSSH免密登录Idea集成GitHub==============Gitee码云=======================码云创建远程库。

2023-09-08 22:45:39 85

原创 项目实战——苍穹外卖(Day1)

分三个模块进行开发:基础数据模块项目概述环境搭建员工管理分类管理菜品管理套餐管理实战点餐业务模块店铺营业状态设置微信登录缓存商品购物车用户下单订单支付和管理历史订单订单状态定时处理来单提醒和客户催单统计报表模块图形报表统计Excel报表统计软件开发流程:项目经理:对整个项目负责,任务分配、把控进度产品经理:进行需求调研,输出需求调研文档、产品原型等UI设计师:根据产品原型输出界面效果图架构师:项目整体架构设计、技术选型等。

2023-09-03 23:26:12 3652

原创 JavaWeb学习——事务管理&AOP&原理篇

直接将itheima-utils引入到依赖当中,无法获取到bean对象,因为springboot只能扫描当前包及其子包,所以要使用@ComponentScan指定扫描包的范围。但是当要扫描的包较多时就比较繁琐,此时可以使用@Import注解。在实际的开发当中需要引入很多第三方技术,官方没有对应的起步依赖,在多个项目当中都需要很多步骤,使用起来就比较繁琐,就可以自定义起步依赖。

2023-09-01 01:20:09 573

原创 JavaWeb学习——登陆功能

JWT令牌个人理解也就是将JSON的数据格式通过编码加密为字符串。Header部分以及PayLoad部分都是将JSON数据通过BASE64编码转化得来的,Signature部分是通过签名算法得来的。浏览器发起请求执行登录操作访问登陆的接口,登录成功生成一个JWT令牌。之后将生成的JWT令牌返回给前端,前端拿到JWT令牌之后就会自动存储起来,在后续的每一次请求当中都会将JWT令牌携带到服务器端,服务端就要进行统一拦截,先判断有没有将该令牌带过来,再判断令牌是否有效。

2023-08-28 18:56:45 1143

原创 JavaWeb——学习辅助系统项目案例

文件上传,是指将本地图片、视频、音频等文件上传到服务器,供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。必须要定义一个表单,并且在表单里面要要定义一个类型为file的表单项,体现为一个上传文件的按钮表单的提交方式必须是post,因为进行文件上传,文件一般比较大。form表单当中,通过enctype属性指定表单的编码格式为multipart/form-data。因为普通默认的编码格式不适合传输大型的二进制文件。

2023-08-23 17:45:07 237

原创 JavaWeb学习——Mybatis

MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。MyBatis本是 Apache的一个开源项目iBatis, 2010年这个项目由apache迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。官网: https://mybatis.org/mybatis-3/zh/index.html实体类的代码冗余,可以使用lombok简化开发。

2023-07-28 19:31:20 135

原创 JavaWeb学习——MySQL数据库

数据库:DataBase (DB),是存储和管理数据的仓库。数据库管理系统:DataBase Management System (DBMS),操纵和管理数据库的大型软件。SQL: Structured Query Language,操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准。数据库产品:学习路线:官网下载地址: https://dev.mysql.com/downloads/mysql/安装步骤,参考资料中提供的《MySQL安装文档》

2023-07-25 02:55:38 177

原创 JavaWeb学习——请求响应与分层解耦

DispatcherServlet是能够被Tomcat识别的Servlet程序,前端浏览器发起的请求会先经过DispatcherServlet,由DispatcherServlet再将这些请求转给后面的Controller程序,对请求进行处理并返回给DispatcherServlet,最后再给浏览器响应数据,所以被称为。数据的请求是从Controller层->Service层->Dao层,数据的响应是从Dao层->Service层->Controller层,java程序编写的是响应的方面的。

2023-07-22 22:06:01 151 1

原创 JavaWeb学习———Maven与Web入门

Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM project object model)的概念,通过一小段描述信息来管理项目官网: http:// maven.apache.org/构建阶段:通过各种插件完成对应的功能。不同的阶段有不同的文件产生,比如编译阶段产生编译后的字节码产生,打包之后有对应的字节码文件...都放在target目录下。项目生命周期:通过配置信息描述该maven功能。依赖管理模型:导入对应的jar包。

2023-07-20 02:32:24 169

原创 JavaWeb学习——前端工程化与Element

图形化创建vue项目注意:包管理器选择npm,选择预设的模板为手动,选择额外的功能加上Router,vue版本2.0,检查语法规范为ESLint with error prevention only.个人理解:.Vue文件是一个一个的组件,用来导出到js文件里面;前端工程化:指在企业的前端项目开发中,把前端所需要的开发工具、技术、流程、经验等进行规范化、标准化。可以通过两种方式创建Vue项目:① 命令行 vue create vue-project01;组件:组成网页的部件,例如超链接、按钮。

2023-07-17 02:05:39 46 1

原创 JavaWeb学习——JS与VUE

常用指令。

2023-07-15 17:11:40 123 1

原创 JavaWeb学习———HTML

web: 全球广域网,也称为万维网,能够通过浏览器访问的网站。

2023-07-05 02:01:50 39 1

原创 JAVA反射机制

7.类的字节码二进制数据放在方法区,有的地方称为类的元数据(包括类的方法代码,变量,方法名,访问权限等等)3.java.lang.reflect.Field:代表类的成员变量,Field对象表示某个类的成员变量。2.java.lang.reflect.Method:代表类的方法,Method对象表示某个类的方法。1.java.lang.Class:代表一个类,Class对象表示某个类加载后在堆中的对象。3.对于某个类的Class类对象,在内存中只有一份,因为类只加载一次。

2023-07-04 02:40:30 41

原创 JAVA即时通讯系统(无界面)————私聊+群发+发文件+服务推送新闻+离线留言发文件

在服务器端的线程中的run()方法里面,加一个对消息的判断,如果是普通消息类,做相应的处理。客户端的ClientConnectServerThread类中run()方法加上对从服务器收到的普通消息进行判断,如果是普通消息做相应的处理。在ServerConnectClientThread类中的run()方法里面,对于客户端发送的消息,多加一个判断条件,若是文件消息,则进行转发。对于ClientConnectServerThread的run在接收服务器转发过来的文件时,对消息进行判断,若是则对文件进行保存。

2023-07-02 03:47:49 373 1

原创 JAVA即时通讯系统(无界面)————拉取在线用户+无异常退出

在客户端线程(即ClientConnectServerThread)中做相应的处理:判断获取到的Message对象的类型,然后再做相应的处理 如果读取到的是服务器端返回的在线用户列表。在ServerConnectClientThread里面加一个判断的条件,当收到的是客户端请求退出的消息时,做出相应的判断。在UserClientService里面写一个方法,退出客户端,并给服务端发送一个退出系统的message对象。首先判断获得的消息的类型,对于是客户端发来的获取消息列表做相应的处理。

2023-06-30 20:58:54 72 1

原创 JAVA即时通讯系统(无界面)————登陆页面模块

需求分析(需求分析报告) -> 设计阶段(设计工作,原型开发,组建团队) -> 实现阶段(完成架构的模块功能) -> 测试阶段(单元测试,测试用例,白/黑盒测试) -> 实施阶段(环境配置部署) -> 维护阶段。客户端和服务器端都要创建两个一样的package(需要同名),用来存放用户信息类(User),消息类(Message),以及消息类型接口(MeesageType)。2.2登陆用户的验证,客户端发送一个User对象给服务器,服务器端给该线程返回一个Message对象。

2023-06-29 18:21:06 141 1

原创 UML建模语言--活动图与包图

<use>>关系:默认依赖关系,客户包中的某种元素使用提供者包的公共元素,客户包依赖于提供者包<<import>>关系:提供者包的命名空间将被添加到客户包的命名空间,客户包中的元素也能够访问提供者包的所有公共元素。绘制的“最小化系统间的耦合关系”:最大限度减少包之间的依赖关系,包封装时,避免包之间的循环依赖,最小化每个包的public、protected元素个数,最大化包中的private元素个数包内高聚合,包间低耦合。(3)标出包内元素的可见性。组成,初始结点表示活动的起点,终点表示活动的终结点。

2023-05-23 20:34:01 83

原创 中级软件设计师--数据库部分

1.数据库的体系结构分为3层,分别为内模式、模式、外模式。比如视图、存储文件、基本表分别对应:视图﹣外模式,存储文件﹣内模式,基本表﹣模式。

2023-04-17 23:07:05 36

原创 中级软件设计师--杂乱真题

1.采用UML进行软件设计时,可以用泛化关系表示两类事物之间存在特殊/一般关系,用聚集关系表示事物之间存在的整体/部分关系。

2023-04-17 17:42:08 44

原创 计算机组成原理 第3章系统总线

3.1总线的基本概念计算机的五大部件的连接方式有两种,一种是分散连接,一种是总线连接。总线是连接多个部件的信息传输线,各部件共享的传输介质。实际上是由通路与传输线组成,一位一位的传输二进制代码。在某一时刻只能有一个部件向总线发送信号,但是可以有多个部件同时从总线上接收信息。①采用总线连接的计算机结构,一种是以CPU为中心的双总线结构一组总线连接CPU和主存叫做存储总线(M总线),一组总线连接CPU和I/O设备叫做I/O总线。由于I/O设备与主存交换数据要经过CPU所以会降低CPU的工作效率

2022-12-04 01:17:41 1039

原创 计算机组成原理 第1章计算机系统概论

计算机组成原理复习

2022-12-02 18:52:39 359

原创 数据结构--排序算法1(C++版)

数据结构--排序算法1

2022-12-01 13:31:28 87

原创 数据结构--二叉树的实现(C++)

二叉树的实现(C++)

2022-11-16 22:39:59 1516

原创 java学习4---枚举类型与泛型

枚举类型是将常量封装在类或接口中,本质上还是以类的形式存在。泛型可以减少代码量,还不会因为对象置于某个容器中而失去其类型。1.枚举类型①使用枚举类型设置常量常量一般放在接口,便于使用,且在接口中使用final或static关键字修饰。而泛型的出现逐渐取代了该方式,泛型定义常量语法:接口定义与泛型定义区别:...

2022-05-21 16:35:16 1204

原创 java学习3---集合类

集合类可以看作容器,用来存储对象的引用,其长度是可以改变的,不同的集合类有不同的存储对象。常用的集合类有Map类,List类和Set类。其中List类和Set类继承了Collection接口,各接口还有不同的实现类。关系图如下:①Collection接口该接口为根接口,构成该接口的单位称为元素该接口提供了一些添加元素,删除元素,管理数据的方法。如下:遍历集合由迭代器(Iterator)实现,iterator(方法)可以返回此Collection进行迭代的迭代器。遍历...

2022-05-19 20:14:59 55

原创 java学习2--时间日期类与Runtime类

一、时间与日期类用于处理时间①Date类表示时间日期,可以用构造函数创建对象Date类常用的方法对象date即为当前现在的日期,可以直接输出。②日期时间格式化

2022-05-18 11:12:29 140

原创 第一次记录java学习5.17

今天主要学习了java中常用类库中的Math类,Random类,BigInteger类,BidDemical类以及System类1.Math类方法使用:Math.方法名Math中的常量:Math.PI,Math.E运算方法比较多,可以分为四大类:三角函数方法,指数函数方法,取整函数方法以及最大值最小值绝对值方法。①三角函数方法如public static double sin(double a) public static double asin(double a)..

2022-05-17 01:41:23 83

javaSocket即时通讯系统服务器端代码分享

javaSocket即时通讯系统服务器端代码分享

2023-07-07

javaSocket的即时通信系统客户端代码分享

javaSocket的即时通信系统客户端代码分享

2023-07-07

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

TA关注的人

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