- 博客(28)
- 收藏
- 关注
原创 系统中点赞业务功能的实现
实现点赞业务的时候,我们要保证安全,也就是避免重复点赞,必须保存每一次点赞记录,在这种情况下,用户点赞的时候我们才能查询数据,判断是否重复点赞。同时,业务方面经常需要根据点赞数量排序,因此每一个业务的点赞数量与需要记录下来。点赞的数据结构分两部分,一是点赞记录,二是与业务关联的点赞数。点赞数与具体业务表关联在一起记录,比如互动问答的点赞,就在问答表中记录点赞数。学员笔记点赞,自然是在笔记表中记录点赞数。在 tj-remark(点赞表) 数据库中创建 liked_record 表在评论上面点赞的时候,最基本
2025-01-08 16:00:51
637
原创 Spring学习——SpringMVC
前端控制器:由SpringMVC提供,主要负责接收参数和返回页面和数据处理器:由程序员编写,主要负责参数的处理和业务层调用REST是一种软件架构风格,其强调HTTP应当以资源为中心[在请求地址中尽量的不要出现动词REST规范了HTTP请求动作,使用四个词语分别表示对资源的CRUD操作: GET(获取)、POST(新建)、PUT(更新)、DELETE(删除)原来Restful保存/saveUser修改id=1删除id=1查询所有查询一个id=1。
2024-10-22 20:15:12
882
原创 Spring学习——SpringBoot
(记得看文章最后)application.yaml 或者 application.yml 或者 application.properties注意:目前版本中, SpringBoot启动时会依次加载:yaml、yml、properties文件,优先级依次升高YAML(YAML Ain’t Markup Language),一种数据序列化格式。
2024-10-21 16:05:17
1216
原创 Spring学习——SpringAOP
当核心业务(保存)和增强业务(日志)同时出现时,我们可以在开发时对他们分别开发,运行时再组装在一起(使用动态代理的方式)。逻辑清晰:开发核心业务的时候,不必关注增强业务的代码代码复用性高:增强代码不用重复书写这就是一种 AOP ( 面向切面编程 ) 的思想,它的目的就是在不修改源代码的基础上,对原有功能进行增强。我的总结:开发阶段分别开发,运行阶段组装运行AOP( 面向切面编程 )是一种思想,它的目的就是在不修改源代码的基础上,对原有功能进行增强。
2024-10-13 21:26:18
1408
原创 Spring学习——SpringIOC
Spring 是一款目前主流的 Java EE轻量级、全栈型、开源框架,Rod Johnson 提出并创立,目的是用于简化开发,目前流行版本是5系列IOC-控制反转,轻松实现层间解耦AOP- 面向切面编程,轻松实现公共代码抽取MVC - 开发web应用程序事务 - 无需编写代码,即可实现数据库事务管理测试 - 与测试框架集成、web 单元测试体系架构图注解作用标注在自己开发的类上,用于将当前类对象放入Spring容器@Bean。
2024-10-10 21:32:49
1033
原创 Web+MySql ——Mybatis第二弹
在mapper接口点击红色头绳的小鸟图标会自动跳转到对应的映射配置文件,在映射配置文件中点击蓝色头绳的小鸟图标会自动跳转到对应的mapper接口。可以看出报错了,因为映射配置文件是xml类型的问题,而 > < 等这些字符在xml中有特殊含义,所以此时我们需要将这些符号进行转义,可以使用以下两种方式进行转义。而上面的SQL语句中的字段列表书写麻烦,如果表中还有更多的字段,同时其他的功能也需要查询这些字段时就显得我们的代码不够精炼。以后我们只会写上面的第3步的代码,其他的都不需要我们来完成。
2024-09-22 21:55:00
1169
原创 Web+Mysql——MyBatis
MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github官网:https://mybatis.org/mybatis-3/zh/index.html负责将数据到保存到数据库的那一层代码。以后开发我们会将操作数据库的Java代码作为持久层。
2024-09-20 17:04:09
1641
原创 Web+Mysql学习—— Maven
是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档。官网 :http://maven.apache.org/通过上面的描述大家只需要知道Maven是一个工具即可。Apache 是一个开源组织,将来我们会学习很多Apache提供的项目。
2024-09-20 10:01:09
1427
原创 Web学习——Element(饿了么的)
Element:是饿了么公司前端开发团队提供的一套基于 Vue 的网站组件库,用于快速构建网页。Element 提供了很多组件(组成网页的部件)供我们使用。例如 超链接、按钮、图片、表格等等~如下图左边的是我们编写页面看到的按钮,上图右边的是 Element 提供的页面效果,效果一目了然。我们学习 Element 其实就是学习怎么从官网拷贝组件到我们自己的页面并进行修改,官网网址是进入官网能看到如下页面接下来直接点击 ,页面如下将资源 下的 文件夹直接拷贝到项目的 下。
2024-09-19 21:41:32
3232
原创 web学习——VUE
接下来我们学习一款前端的框架,就是 VUE。Vue 是一套前端框架,免除原生JavaScript中的DOM操作,简化书写。我们之前也学习过后端的框架MybatisMybatis是用来简化jdbc代码编写的;而VUE是前端的框架,是用来简化JavaScript代码编写的。前一天我们做了一个综合性的案例,里面进行了大量的DOM操作,如下学习了VUE后,这部分代码我们就不需要再写了。那么VUE是如何简化 DOM 书写呢?
2024-09-19 16:46:27
1784
2
原创 web学习---VsCode安装文档
是一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成。学习web前准备工作看这个就够了。
2024-09-15 19:01:29
498
原创 数据结构之红黑树
红黑树是一种自平衡的二叉查找树,是一种高效的查找树。它是由 Rudolf Bayer 于1978年发明,在当时被称为平衡二叉 B 树(symmetric binary B-trees)。后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的红黑树。红黑树具有良好的效率,它可在 O(logN) 时间内完成查找、增加、删除等操作。
2024-09-14 14:49:38
1093
原创 数据结构与算法之递归算法和分治算法
三个柱子,第一个柱子上按大小顺序放着64片金片,一次移动一片,全部移动到第三根柱子上,大的不能放在小的上面。,再把子问题分成更小的子问题……分治法是一种很重要的算法。
2024-09-13 15:47:16
629
原创 今日分享——反射&动态代理
切记一点:代理可以增强或者拦截的方法都在接口中,接口需要写在newProxyInstance的第二个参数里。字节码文件:就是通过java文件编译之后的class文件(是在硬盘上真实存在的,用眼睛能看到的)字节码文件对象:当class文件加载到内存之后,虚拟机自动创建出来的对象。需求: 利用反射根据文件中的不同类名和方法名,创建不同的对象并调用方法。字节码文件对象,这个对象在内存中是唯一的。在这个练习中,我需要你掌握的是字符串不能修改的真正原因。参数二:调用方法的传递的参数(如果没有就不写)
2024-09-12 19:43:04
1023
原创 今日分享——网络编程
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统网络编程在网络通信协议下,不同计算机上运行的程序,可以进行数据传输。
2024-09-10 14:17:20
1138
原创 今日分享——多线程第一部分
概述生产者消费者模式是一个十分经典的多线程协作的模式,弄懂生产者消费者问题能够让我们对多线程编程的理解更加深刻。所谓生产者消费者问题,实际上主要是包含了两类线程: 一类是生产者线程用于生产数据 一类是消费者线程用于消费数据为了解耦生产者和消费者的关系,通常会采用共享的数据区域,就像是一个仓库生产者生产数据之后直接放置在共享数据区中,并不需要关心消费者的行为消费者只需要从共享数据区中去获取数据,并不需要关心生产者的行为Object类的等待和唤醒方法方法名说明。
2024-09-08 19:20:30
1378
原创 今日分享——IO(异常&File)
我们说了Java中不同的异常类,分别表示着某一种具体的异常情况,那么在开发中总是有些异常情况是SUN没有定义好的,此时我们根据自己业务的异常情况来定义异常类。
2024-09-06 21:08:28
1375
原创 今日分享——IO流(字节流&字符流)
生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input和输出output,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。也叫做数据,也叫做作数据。
2024-09-05 19:53:09
1323
原创 今日分享——Map集合和Stream流
2.优势: Stream流大量的结合了Lambda的语法风格来编程,提供了一种更加强大,更加简单的方式操作集合或者数组中的数据,代码更简洁,可读性更好。2.Map集合的每个元素分为两部分:key和value,key称为键,value称为值,整体叫键值对,因此Map也叫“键值对集合”3.Map集合的所有键是不允许重复的,但值可以重复,键和值是一一对应的,每一个键只能找到自己对应的值。注意:Map系列集合的特点都是由键决定的,值只是一个附属品,值是不做要求的。1.HashMap: 无序、不重复 (用的最多)
2024-09-03 20:52:29
754
原创 今日分享——集合2.0 Set、HashSet
不可以存储重复元素没有索引,不能使用普通for循环遍历不可以存储重复元素没有索引可以将元素按照规则进行排序TreeSet():根据其元素的自然排序进行排序TreeSet(Comparator comparator) :根据指定的比较器进行排序两种比较方式小结自然排序: 自定义类实现Comparable接口,重写compareTo方法,根据返回值进行排序比较器排序: 创建TreeSet对象的时候传递Comparator的实现类对象,重写compare方法,根据返回值进行排序。
2024-09-03 15:33:48
925
1
原创 今日分享 集合、Collection、List
Collection集合概述是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素JDK 不提供此接口的任何直接实现.它提供更具体的子接口(如Set和List)实现创建Collection集合的对象多态的方式具体的实现类ArrayListCollection集合常用方法| 方法名 | 说明 || — | — || boolean add(E e) | 添加元素 |
2024-09-02 21:28:42
891
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人