自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 SpringMVC(四) -- ViewResolver

主要作用是将逻辑视图名称解析为真正的视图对象View,即将视图解析为可以在客户端呈现的HTML页面。

2023-09-25 15:57:39 110

原创 SpringMVC(三) -- HandlerMapping

每个HTTP请求都会被HandlerMapping映射到一个独立的HandlerExecutionChain实例中,该实例包含了处理器对象和拦截器对象。HandlerMapping接口的作用是将HTTP请求映射到相应的处理器对象上,它提供了灵活的映射机制,支持多种URL映射规则和拦截器功能,使得Spring MVC框架能够更好地处理HTTP请求并返回相应的响应。传入request参数,获取自定义handler处理器。

2023-09-22 17:43:02 134

原创 SpringMVC(二) -- HandlerAdapter

Adapter作为SpringMVC最重要的组件之一,跟Interceptor同等地位,它可以帮助我们在调用接口的前后做一个自定义的拓展。return;通过源码分析我们可以知道,提供了三个方法主要。

2023-09-19 16:27:16 102

原创 SpringMVC(一) -- HandlerInterceptor

Interceptor作为SpringMVC最重要的组件之一,它可以帮助我们在调用接口的前后做一个自定义的拓展。

2023-09-13 17:42:22 198

转载 1.浸泡Redis--构建模型

一.前言要学习Redis,得先了解redis是什么东西?官方的描述:Redis是一个开源(BSD许可)的内存中数据结构存储,用作数据库、缓存、消息代理和流媒体引擎。Redis提供数据结构,如字符串、散列、列表、集合、带范围查询的排序集合、位图、超日志、地理空间索引和流。Redis具有内置复制、Lua脚本、LRU驱逐、事务和不同级别的磁盘持久性,并通过Redis Sentinel和Redis Cluster的自动分区提供高可用性。

2023-08-10 16:10:15 29

转载 网络服务器

网络服务器是计算机局域网的核心部分是互联网的基础,承载着各种应用的处理和响应。网络服务器的效率直接影响整个网络的效率。因此,一般采用高端计算机和专用服务器计算机作为网络服务器。

2023-07-27 15:24:32 49

原创 Maven 打包Java项目(BAT运行)

public static void main(String[] args)的args里面接收到。在系统class加载前加载,注意使用,和系统类冲突就不好了.完全取代系统Java classpath.最好不用。在系统class加载后加载。maven装配项目jar的plugin。第三方依赖包package到根目录的。只是一串字符串作为参数传进来,可以在。maven管理依赖打包plugin。指定Main-class项目的入口。maven管理编译的plugin。第三方依赖包package到。

2023-06-30 10:40:06 577

原创 MySQL第二话--存储引擎和索引

xxxxxxxxxxxx执行这两个指令后,系统出现了以下的文件,说明这两个引擎数据和索引的组织方式是不一样的。

2023-06-09 17:25:58 51

原创 MySQL第一话--层级结构和执行流程

当今数据库的产品数不胜数,主流的数据库也就是MySql,SqlServer,Oracle。我们平时写业务的时候会经常使用它们,但是一旦提到数据库的核心思想和实现思路或者架构的设计,会发现它们又变得如此的陌生,这也就是知之甚少。这篇文章可能就是用来记录所了解的数据库(MySql)知识。第一章我们先整体了解一下MySQL数据库的架构,sql语句的流。

2023-06-05 15:29:24 73

原创 Docker篇-tomcat

Docker 是一个开源的应用容器引擎,用go语言写的,基于Linux内核的一款产品。

2023-05-19 22:15:08 524

原创 JDBC和SpringbootDataSource

在JDBC层面是没问题的,但是一旦通过连接池去访问数据库,那只关闭Connection是不行的。Connection.close只是把这个连接的对象返回给了连接池,ResultSet,PreparedStatement要都关闭了,连接池才会将整个数据库的连接断开。

2023-05-19 14:07:30 269

原创 Spring-ioc源码

);if (!Class

2023-05-10 14:21:29 304

原创 springboot自动装配原理

一.简介二.源码入口。

2023-05-05 11:07:40 140

原创 Spring-aop源码

聊到spring肯定离不开IOC和AOP,AOP也是其中的大头,今天我们来研究一下AOP的底层实现原理。我们通过@Aspect注解的案例来一步一步深入看一下spring是怎么实现功能增强的。带着两个问题去探究:1.@Aspect是怎么通过解析器给方法进行增强的?

2023-05-02 16:44:23 319

原创 Java集合源码分析

Java集合其实可以分为Collection接口和Map接口,java底层的数据结构就两种,数组和链表,其他都是这两种结构的衍生。这篇文章我们一起来探讨一下最常用到的List,Map,Set接口实现类的源码。

2023-04-20 16:53:31 133

原创 JUC源码解析第三章--锁(AQS解析)

锁,顾名思义防止随意进入,不允许随意拿走,保护贵重物品作用:解决多线程并发情况下操作共享资源造成线程安全问题这篇文章我们来探讨一下最常见的Lock,ReadWriteLock,ReentrantLock,synchronized。

2023-03-31 17:09:39 70

原创 JUC源码解析第二章--线程池

线程池就是一个管理线程的容器,它控制了任务提交、线程管理、监控等方法。ThreadPoolExecutor就是jdk提供的一个线程池。

2023-03-27 13:50:36 50

原创 JUC源码第一章--线程

可以看到start()方法里面调用了start0()方法,而这个方法有native关键字,表示是jvm自定义的,不需要关注,我们只需要知道jvm去调度了资源,开启了一个新的线程来执行你的run()方法就好了public/***/= 0)try {start0();try {if (!= null) {

2023-03-21 17:12:07 131

原创 mybatis集成spring的底层实现原理

通过自定义扫描器去扫描指定的backpage包下的mapperinterface3. 4.通过自定义工厂类MapperFactoryBean实现了FactoryBean接口,在使用mapperinterface对象(调用getObject)的时候会自动创建代理类MybatisMapperProxy(由Bean容器管理)5.通过实现InvocationHandler接口,自定义代理类执行对象方法。

2023-03-15 16:26:06 106

原创 Spring-Cache 源码解析

有了EnableCaching,才有了CacheInterceptor有了CacheInterceptor,CacheAutoConfiguration就会生效CacheAutoConfiguration会提供CacheProperties和CacheManagerCustomizers有了CacheProperties和CacheManagerCustomizers,ConcurrentMapCacheManager就会生效。

2023-03-06 17:23:15 215

原创 @Transactional 使用说明

Tranasctional注解是Spring 框架提供的声明式注解事务解决方案,我们在开发中使用事务保证方法对数据库操作的原子性,要么全部成功,要么全部失败,在使用@Transactional注解时需要注意以下问题:1. @Transactional 注解只能用在public 方法上,如果用在protected或者private的方法上,不会报错,但是该注解不会生效。

2022-11-12 16:51:28 4880

原创 Java 泛型: T和?的使用和区别

jdk为了便于理解,K代表键,V代表值,E代表枚举类型,T代表数据类型,这四个都是符号,只是表示了泛型的名称,换成其他字母也没问题,只不过要提前声明。泛型类或者泛型方法(更多是使用在方法体里面),代表的是泛指所有的对象类型。表示的是 限制 T ,?如果有泛型方法和非泛型方法,同事都满足条件,则执行非泛型方法。继承的父类或者是实现的接口里面的参数都必须是一个具体的类型。一个泛型类或者泛型方法,代表的是某一种具体的数据类型。方法里面的参数就可以用泛型来表示了。是通配符,表示不确定的数据类型。

2022-11-10 17:41:41 2300 2

原创 Java开发接触第一个正式项目的心得分享

11.写业务逻辑的时候建议不要使用sql去写,用java stream()写,因为sql的可复用性太低了,复杂的sql也不易阅读,当遇到超过3张表连接的需求时,才建议使用sql操作。7.灵活运用Java集合,List,Set,Map,考虑他们各自的特点,适用在什么场景下,是否允许修改,可以通过这个对象进行限制:UnmodifiableXXX。8.遇到类似的业务场景,应当考虑好每一个步骤,然后抽取出来,写一个公用的组件去处理(注:公用的组件可拓展性一定要高)3.开发的时候要考虑空指针的问题。

2022-11-01 14:56:20 169

原创 打开Spring-Ioc的新世界大门

准备BeanPostProcessor。2.加载配置文件,封装成BeanDefinition。3.调用执行BeanFactoryPost。准备监听器,时间,广播器。

2022-10-30 01:18:07 112

转载 Swagger2的使用和配置

1.简介 帮助前端开发人员便捷调用后端api的,减少不必要的沟通联调,自动生成接口文档,并且也可以像postman一样发送https请求的一款自带UI的插件2.注解@Api():用在请求的类上,表示对类的说明,也代表了这个类是swagger2的资源参数:@ApiOperation():用于方法,表示一个http请求访问该方法的操作参数:@ApiModel():用于响应实体类上,用于说明实体作用参数:@ApiModelProperty:用在属性上,描述实体类的属性参数:@

2022-10-17 22:33:32 1434

原创 基于SSM写的一个简易博客(练手小项目)

前端使用了Bootstrap和jquery组件编写,后端是集成了Spring+SpringMVC+MyBatis的SSM框架,实现了基本登录注册功能,博客的增删改查和模糊查询功能的功能,还有用户个人信息添加修改等功能。下面是一些页面展示图1.博客首页2.登录页面3.注册的页面4.个人主页5.新增博客页面6.模糊查询页面7.简介页面8.更改博客页面9.查看博客页面下面是一些代码图1.Cont...

2021-10-19 12:17:30 754 6

原创 JavaWeb药物管理系统

系统由java+sevlet+mysql+idea实现的Java web药物管理系统,实现一个用户登录注册,管理员登录注册,用户购买药物和充值,管理员增删改查药物和用户的功能。1.登录的一个页面

2021-09-10 14:26:03 1885 4

空空如也

空空如也

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

TA关注的人

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