- 博客(19)
- 收藏
- 关注
原创 Spring Cloud概述
如下为官网介绍:简单来说,Spring Cloud 并不是Spring 团队研发的框架,它只是把⼀些⽐较优秀的解决微服务架构中常⻅问题的开源框架基于SpringCloud规范进⾏了整合,并基于SpringBoot的⻛格,对这些组件进⾏封装,屏蔽掉了复杂的配置和实现原理.为开发者提供了开箱即⽤的微服务开发验.
2024-08-26 09:32:35
665
原创 Spring框架介绍及简单使用
该框架是一个轻量级的开源框架,具有很高的凝聚力和吸引力。在使用Spring框架后,对象的实例不再由调用者来创建,而是由Spring容器来创建,Spring容器会负责控制程序之间的关系,而不是由调用者的程序代码直接控制,这样,控制权由应用代码转移到了Spring容器,控制权发生了反转,这就是Spring的控制反转。简单说就是,在调用者的实例中声明一下被调用者,并生成一个被调用者的setter方法即可,然后在配置文件中依赖注入被调用者的Bean,实质就是调用了该Bean中的setter方法。
2024-07-30 00:42:17
672
原创 Redis是什么?能干什么?Redis特性以及应用场景
如果将session存储在服务器的内存中,在分布式系统的登陆场景中,第一次用户请求A服务器,A服务器会存储了session,第二次请求负载均衡器可能会转发给B服务器,此时B服务器并没有存储session就会导致用户重新登陆。redis作为分布式系统的中间件,需要具有支持集群的功能,一个redis能存储的数据是有限的,引入多个主机,部署多个Redis节点,每个节点存储部分数据。存储大规模数据,因为redis的数据是存储在内存中的,一方面是内存本身就不够大,另外就是容量大了就可变慢。
2024-07-22 23:31:53
730
原创 什么是动态代理?两种常用的动态代理方式
动态代理就是,在程序运行期,创建目标对象的代理对象,并对目标对象中的方法进行功能性增强的一种技术。在生成代理对象的过程中,目标对象不变,代理对象中的方法是目标对象方法的增强方法。可以理解为运行期间,对象中方法的动态拦截,在拦截方法的前后执行功能操作。代理类在程序运行期间,创建的代理对象称之为动态代理对象。这种情况下,创建的代理对象,并不是事先在Java代码中定义好的。而是在运行期间,根据我们在动态代理对象中的“指示”,动态生成的。
2024-07-15 00:47:04
382
原创 SpringMVC框架基本概述
SpringMVC是基于Spring的,是Spring中的一个模块,专门用来做web开发使用的。SpringMVC 也叫 Spring web mvc。是 Spring 框架的一部分,是在Spring3.0 后发布的。基于 MVC 架构,功能分工明确、解耦合。SpringMVC也是一个容器,使用IoC核心技术,管理界面层中的控制器对象。SpringMVC的底层就是servlet,以servlet为核心,接收请求、处理请求,显示处理结果给用户。
2024-06-30 23:51:15
463
原创 spring与mybatis整合
2.jdbcUrl: mysql5: 不用指定时区 mysql8: 指定时区 serverTimezone=Asia/Shanghai>--mapper映射文件 一个一个映射文件加载-->--mybatis的主配置文件-->--支持通配符方式-->--配置类型别名-->配置SqlSessionFactory的Bean对象。--加载Properties文件-->--配置数据源-->
2024-06-24 00:16:01
642
原创 Mybatis的关联查询
java实体类设计: 类之间之间关系靠关联属性,编写sql映射文件 UserMapper.xml。数据库中: 多个表之间关系靠外键, 外键设计。根据用户id查询用户信息以及订单信息。类的设计中, 关联属性两种情况。编写UserMapper接口。1.分多条sql语句查询。
2024-06-18 11:45:45
297
原创 HttpSession
Cookie 创建于服务器, 保存在客户端, 记住我实现, 不能跨浏览器, 浏览器的技术HttpSession: javaWeb特有的, 创建于服务器, 保存与服务器, 作为Session域特征: 同一个用户同一次会话, session域中数据可以共享(多次请求)
2024-06-11 01:48:20
332
原创 css基础
div是html里面的一个标签,没有特定的含义, 作为容器,一般用于配合css完成网页的基本布局。span也是一个标签,没有特定含义,一般作为**文本容器 **。
2024-06-02 23:38:10
726
原创 html基础
dl></dl>自定义列表不仅仅是一列项目,而是项目及其注释的组合。自定义列表以 dl 标签开始。每个自定义列表项以 dt 开始。每个自定义列表项的定义以 dd 开始。
2024-05-27 02:13:37
695
原创 HTML的简单介绍
文档声明:用于声明当前HTML的版本,<!DOCTYPE html>是HTML5的声明。html根标签:除文档声明以外,其它内容全部放在根标签html内部。文档头部配置:head标签,是当前页面的配置信息,外部引入文件。文档显示内容:body标签,里边的内容会显示到浏览器页面上。单元格里可以包含文本、图片、列表、段落、表单、水平线、表格。扩展名是html或者htm。
2024-05-14 02:14:32
230
1
原创 Java如何实现客户端与服务器的多线程通信
此时就需要使用线程池,当需要使用线程时,向线程池获取线程,此线程就被激活,试用结束后归还线程(线程不会死亡),线程进入空闲状态;因此我对代码进行了一些修改,同时开启多路线程,使得每个线程内部的run()方法套上while(true)循环使得线程永不终止,将服务器的侦听器放到线程的内部,测试类只需向线程代码传递服务器的连接(套接字)对象即可;为了满足上述要求,每一条线程都必须传入一个新创建的Runnable接口实现类,实现类中的run()方法运行服务器的主程序。接收到消息后,服务器需要向客户端发送反馈信息。
2024-05-07 17:14:06
391
原创 B树与B+树
B-Tree,B树是一种多叉路衡查找树,相对于二叉树,B树每个节点可以有多个分支,即多叉。B+Tree的查询效率更加稳定 由于非叶子节点不是最终指向文件内容的节点,而是叶子节点中关键字的索引,所以任何关键字的查找都必须走一条从根节点到叶子节点的路。Mysql索引数据结构对经典B+Tree进行了优化,在原B+Tree的基础上,增加一个指向相邻叶子节点的链表指针,就形成了带有顺序指针的B+Tree,提供了区间访问的性能。p1指向小于17的磁盘块,p2指向大于17,小于35的磁盘块,p3指向大于35的磁盘块。
2024-04-22 11:10:19
363
原创 多线程案例(售票)
弊端:当线程很多时,因为每个线程都会去判断同步上的锁,这是很耗费资源的,无形中会降低程序的运行效率。某电影院目前正在上映国产大片,共有100张票,而它有3个窗口卖票,请设计一个程序模拟该电影院卖票。创建三个Thread类的对象,把SellTicket对象作为构造方法的参数,并给出对应的窗口名称。synchronized(任意对象):就相当于给代码加锁了,任意对象就可以看成是一把锁。线程执行的随机性导致的,可能在卖票过程中丢失cpu的执行权,导致出现问题。判断票数大于0,就卖票,并告知是哪个窗口卖的。
2024-04-16 10:42:36
629
原创 Java中如何实现序列化
在对象进行序列化或反序列化操作的时候,如果序列化的 JDK 版本和反序列化的 JDK 版本不统一,则可能造成异常。当两个进程进行网络传输时,需要发送各种类型的数据,如图片,文档等,而这些数据在网络中往往以二进制的形式传输,因此,在发送数据时我们需要对数据序列化将其转化为二进制序列,当接受数据时则需要将二进制序列反序列化恢复成原先的数据对象。序列化保存的是对象的状态,静态变量属于类的状态,因此 序列化并不保存静态变量。被序列化的类的内部的所有属性,必须是可序列化的。把字节序列还原为对象的过程称为反序列化。
2024-04-07 00:23:56
387
1
原创 Java中iterator()迭代器的使用
Java迭代器是一种特殊的接口,用于遍历集合中的元素。它提供了next()、hasNext()等方法,用于程序员访问集合中的元素,而无需关心底层的具体实现细节。Java迭代器是处理集合数据的重要工具,它提供了一种统一的方式来访问和遍历各种集合类型。通过理解迭代器的工作原理、掌握其使用方法,并注意使用时的细节和注意事项,可以更加灵活和高效地处理集合数据。
2024-03-31 23:35:01
482
原创 Map的底层实现(在进行get,put操作时),以及put出现重复元素时怎么去做。
HashMap通过哈希函数将键(Key)转换为一个整数值,即哈希码。这个哈希码决定了该键值对在HashMap内部数组(称为“桶”或Buckets)中的索引位置。
2024-03-24 22:47:09
395
原创 Java中正则表达式的语法及matches方法的使用。
●.表示任何字符\.进行转义●\d数字: [0-9]●:用于定义反向字符类。●\D非数字[^ 0-9]●\w单词字符: [a-zA-Z. _0-9] (. _是下划线)●\W非单词字符: [^ \w]
2024-03-18 00:09:37
1470
原创 关于构造方法的个人理解
在Java编程中,构造方法是一种特殊的方法,它用于创建和初始化对象。每个类都可以拥有至少一个或多个构造方法,它们具有与类名相同的名称,并且在定义时不指定返回类型,即使是void也不需要写,且构造方法可以有不同数量和类型的参数,在调用时系统会对参数的类型和数量进行判断从而选择调用的构造方法。
2024-03-10 21:53:14
457
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人