- 博客(69)
- 收藏
- 关注
原创 Spring 事务和事务的传播机制
将一组操作封装成一个执行单元 (分装到一起) , 要么全部成功 , 要么全部失败.Spring 事务的传播机制是指多个事务方法相互调用(嵌套)的情况下 , 如何管理这些事务的提交和回滚.
2023-07-22 17:48:24 810
原创 SpringBoot 统一功能的处理
/定义拦截器 @Component public class LoginInterceptor implements HandlerInterceptor {
2023-07-15 10:01:33 13037
原创 Spring AOP 快速入门
添加 AOP 支持框架定义切面和切点定义通知Spring AOP 是通过动态代理的方式 , 在运行期间将 AOP 代码织入到程序中的 , 实现方式有两种 , JDK Porxy 和 CGLIB.
2023-06-12 15:56:21 1185 29
原创 MyBatis 万字进阶
添加字段分为两种: 必填字段和非必填字段 , 其中 id 就是必填字段 , 其余字段都是非必填字段 , 那么假设我们添加用户时 , 由于 photo 字段不做限制 , 可能会出现出乎意料的结果 , 为了防止出现这种情况我们可以使用标签来解决.动态SQL可以使用编程语言中的字符串拼接、条件判断等语法来实现.简而言之 ,我们日常在浏览 , 淘宝 , 京东这样的电商平台时 , 有时需要按各种属性排序 , 实现这样的功能时 , 可选参数有很多 , 因此无法写死 , 需要根据后续用户的选项来拼接.
2023-06-06 17:58:38 3176 26
原创 MyBatis 快速入门
MyBatis 是一款优秀的持久层框架(将电脑中的数据保存到磁盘上) , 它支持自定义 SQL , 存储过程以及高级映射. MyBatis 去除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作. MyBatis 可以通过简单的 xml 或 注解 来配置和映射原始类型 , 接口和 java POJO (plain old java objects , 普通老式 java 对象) 为数据库中的记录.MyBatis 提供简单易用的 API 就是为了更加简单的操作和读取数据.对应后端开发人员来说 , 程序
2023-05-29 10:50:38 1070 30
原创 SpringMVC 万字通关
SpringMVC 是 Spring Framework 的一部分,是一个基于 Servlet API 构建的原始的 Web 框架 , 它的正式名称为 Spring Web MVC.Spring MVC 是一个Web框架.Spring MVC 是基于构建的.然而真正理解 SpringMVC , 我们需要先知道什么是 MCV?MVC 是 Model View Controller 的缩写 , 它是软件工程的一种软件框架模式 , 它把软件系统分为模型视图控制器三个基本部分.Model。
2023-05-19 17:32:31 2322 37
原创 Spring Boot 配置文件
是两个时代的产物 , .yml 属于新时代的产物 , 创建 Spring Boot 时的配置文件默认格式是 properties , 如果用户指定要使用 .yml 就直接发给他.由此可以发现 , 如果没有配置文件 , Spring Boot 项目就不能连接和操作数据库 , 甚至不能保存用于查询问题的关键日志.yml 是树形结构的配置文件 , 基本语法是"key: value"(注意冒号后的空格不可省略)properties 是旧时代的配置文件格式 , 也是 Spring Boot 默认的配置项.
2023-05-12 10:29:08 2282 34
原创 SpringBoot 创建和使用
Spring 的诞生是为了简化 java 程序的开发 , 而Spring Boot 的诞生是为了简化 Spring 程序开发.Spring boot 翻译以下就是"脚手架" , 有了脚手架就可以快速的开发和使用 Spring .
2023-05-10 15:29:04 1359 13
原创 Bean 作用域和生命周期
1. singleton(单例作用域)描述: 由于 Spring 框架除了追求高效还追求性能 , 因此使用单例模式作为默认作用域. 该作用域下的 Bean 在整个 IoC容器中只存在一份 , 无论是获取还是注入都是同一个对象.场景: 通常无状态的 Bean 使用该作用域. (无状态指对象的属性无需更新)2. prototype(原型作用域)描述: 在该作用域下 , 每次 Bean 的请求都会创建新的实例.通常有状态的 Bean 使用该作用域.3. request(请求作用域)描述。
2023-05-05 19:50:42 1562 12
原创 Spring 更简单的读取和存储对象
从容器中取 Bean 对象 , 如果我们在配置文件中有注册标签 , 那么 getBean() 中就可以添加 id 和 class 两个参数 , 确保在容器中找到 Bean. 可是此时我们把配置文件中的标签改为了 component-scan 包路径下的扫描 , 这样就没法通过 id 来访问包了 , 但 Spring 中约定可以。也就是说即使添加了注解 , 如果不是在配置的扫描包下的类对象 , 是不能被存储到 Spring 中的 , 体现了 Spring 框架在追求方法的同时 , 更追求性能.
2023-05-04 19:51:18 1208 10
原创 Spring 创建和使用
在 Java 中对象也叫 Bean , 所以以后遇到对象就以 Bean 著称初学 java 时我们都知道 , java 的图标是一杯咖啡 , 那么 bean 就可以当做咖啡豆.提供一个无参构造函数需要被序列化且实现了 Serializable 接口有一系列可读属性 , 且一般是 private 的.有一系列的 Setter 和 getter 方法.
2023-05-01 21:36:32 1660 11
原创 Spring 初始导读
容器是用来容纳某种物品的装置.List/Map -> 数据存储容器Tomcat -> Web 容器(存储很多 Servlet 程序)IoC = Inversion of Control (控制反转) , 也就是说 Spring 是一个 “控制反转” 的容器 , 听上去很抽象 , 下面这个示例可以很好的解释.
2023-04-28 10:01:40 1433 9
原创 Servlet 配置与高效部署
doGet 是 Tomcat 收到 Get 请求的时候就会调用 , 具体要不要调用 doGet , 还得看当前 Get 请求的路径是啥 , 不同的路径可以触发不同的代码(关联到不同类上) , 一个Servlet 程序中 , 可以有很多的 Servlet 类 , 每个 Servlet 类都可以关联到不同的路径(对应到不同的资源) , 因此多个 Servlet 就可以实现不同的功能.因为 IDE 直接运行是在本地 , 工作时开发环境(自己写代码的电脑)和运行环境(另一个服务器)很可能不是同一个环境.
2023-04-24 10:52:43 2449 15
原创 Tomcat 配置与部署
http 协议就是 http 客户端和 http 服务器之间通信的协议 , 而Tomcat 就是 java 圈子中最广泛使用的 http 服务器.
2023-04-23 08:40:50 884 11
原创 Https详解
https 就是 http + 安全层(SSL)–> 用来加密的协议 SSL/TLSSSL(security scoket layer) 加密套接字协议层.至于为什么会推出安全层 , 是因为臭名昭著的"运营商劫持"可以看到 天天动听 的下载链接被替换为 QQ浏览器.如果避免这种情况呢?出现这种情况的主要原因是在互联网上明文传输非常危险, 不光是运营商劫持 , 黑客窃取支付密码也是常见的事 , 因此需要加密.
2023-04-19 09:40:19 1241 10
原创 高效便捷构造 Http 请求
对于Get请求 常见构造方式为:1. 地址栏直接输入2. 点击收藏夹3. html 中的 link script img a....4. form 标签这里我们重点强调 form 标签构造的 http请求
2023-04-13 14:40:29 1020 15
原创 一文吃透Http协议
Http 协议 , 是应用层最为广泛使用的协议 , Http 就是浏览器和服务器之间的桥梁. Http 是基于 TCP 协议实现的 ,通常我们输入搜索框中的网址 (URL) , 浏览器就会根据这个 URL 构造出一个 Http 请求 , 发送给服务器. 服务器就会返回一个 Http 响应(包含 html, css , js) , 浏览器再把得到的 html 等数据显示出来(渲染) , 这也就是为什么 http 被称为超文本传输协议 , 因为传输的不仅仅是文本.fiddler 本质是一个代理程序 , 使用时
2023-04-11 07:32:58 5352 9
原创 JavaScript(WebAPI)+具体案例
JS 的学习主要分为三个大的部分ECMScript: 基础语法部分DOM API: 操作页面结构BOM API: 操作浏览器WebAPI 就包含了 DOM + BOM真正想要写一个更加复杂的有交互式的页面, 还需要WebAPI的支持.
2023-04-06 08:23:52 1318 12
原创 JavaScript 快速入门
1. 初始 JavaScript1.1 JavaScript 是什么?1.2 JavaScript 能做的事情 1.3 JavaScript 和 HTML 和 CSS 的关系1.4 JavaScript 运行过程1.5 JavaScript 的组成2. 前置知识2.1 JavaScript 的书写形式2.2 输入输出3. 语法概览3.1 变量的使用3.2 理解 动态类型3.3 基本数据类型3.4 JS 中的数组3.5 函数3.6 函数表达式:3.7 作用域:3.8 作用域链:4. 对象4.1 使用 字面量
2023-04-03 11:21:45 1283 14
原创 初始 CSS 基础
专栏简介: 前端从入门到进阶题目来源: leetcode,牛客,剑指offer.创作目标: 记录学习JavaEE学习历程希望在提升自己的同时,帮助他人,,与大家一起共同进步,互相成长.学历代表过去,能力代表现在,学习能力代表未来!目录1. CSS 是什么2. 基本语法规范2. 引入方式2.1 内部样式表2.2 行内样式表2.3 外部样式3. 代码风格3.1 样式格式4. 选择器4.1 选择器的功能4.2 选择器的种类5. 常用元
2023-03-27 22:20:34 1352 3
原创 一文快速入门 HTML 网页基础
学习 HTML 标签之前 , 首先要知道 HTML 这类前端语言在哪里编写/运行 , 常见编译器有 VsCode , IDEA... 从性能和使用体验来讲 , IDEA 最强无可厚非. 但其有个致命的缺点就是收费 , 因此我们可以退而求其次使用 VsCode.Visual Studio Code - Code Editing. Redefined
2023-03-09 10:06:30 1101 18
原创 [多线程进阶]CAS与Synchronized基本原理
CAS 全称 Compare and Swap , 相当于一个原子操作 , 同时完成"读取内存 比较数据是否相等 修改内存"这三个步骤. 本质上是一条 CPU 指令.
2023-02-13 11:41:37 1776 42
原创 [多线程进阶] 常见锁策略
锁策略之所以被叫做策略 , 是因为它并不是一个具体的锁 , 而是一系列供锁的实现者来参考的特性 , 对普通程序猿合理的使用锁也是有很大的帮助.
2023-02-09 08:19:09 1611 39
原创 网络编程-TCP流套接字
短连接: 每次接收数据并返回响应后 , 都关闭连接(短连接只能收发一次数据)长连接: 不关闭连接 , 一直保持连接状态 , 双方不停的收发数据
2023-02-06 08:02:13 1248 34
原创 [JavaEE]线程池
想要搞清楚什么是线程池 , 首先要明白线程存在的意义. 由于使用进程并发编程开销过大, 于是引入了线程 , 线程也叫做 "轻量级进程" , 创建/调度/销毁线程都比进程更加高效. 此时多线程在很多时候就可以代替多进程实现并发编程了.
2023-01-26 06:36:39 1690 28
原创 [JavaEE]文件操作和IO
狭义上的文件指的是 , 针对硬盘这种持久化存储的I/O设备 , 保存数据时会分割成一个个独立的单位 , 这些独立的单位就被抽象成文件的概念.广义上的文件指的是 , 操作系统中会把很多的硬件设备和软件资源抽象成文件 , 按照文件的方式来统一管理 , 例如: 网卡这个硬件设备在网络编程中 , 通常会被当做文件来操作.
2023-01-23 08:46:51 2092 20
原创 [JavaEE]单例设计模式
设计模式就好比象棋中的棋谱 , "红方当头炮 , 黑方马来跳" , 针对红方的走法 , 黑方可以使用一些固定套路来应对 . 软件开发中也是如此 , 针对一个固定的问题场景 , 业界大佬以及总结出一些固定的套路 , 按照这个固定套路可以少走不少弯路.
2023-01-12 09:51:00 1128 31
原创 [JavaEE]synchronized 与 死锁
当某个线程执行到 synchronized 所修饰的对象时 , 该线程对象会加锁(lock) , 其他线程如果执行到同一个对象的 synchronized 就会产生阻塞等待.
2023-01-09 10:28:10 2650 29
原创 [JavaEE] volatile与wait和notify
Java内存模型(JMM):Java虚拟机规范中定义了Java内存模型 , 目的是屏蔽一切硬件和操作系统的内存访问差异 , 以实现Java程序在各种平台下都能达到一致的并发效果.
2023-01-05 09:45:05 1210 26
原创 [JavaEE]线程的状态与安全
观察执行结果我们可以发现 , 相比于单线程执行 , 多线程执行可以节省大量时间 , 但并非我们认为的节省一半时间 , 这是因为多线程在调度时还会有额外的开销 , 而且不能保证多线程一定是在两个CPU上执行.
2023-01-02 09:29:25 1203 22
原创 [JavaEE] Thread类及其常见方法
Thread 类是 JVM 用来管理线程的一个类 , 换句话说 , 每个线程都有唯一的 Thread类 与之关联.Thread 类的对象就是用来描述一个执行流的 , JVM 会将这些Thread对象组织起来 , 用于线程调度和线程管理.
2022-12-28 09:37:32 1987 23
原创 [JavaEE] 线程与进程的区别详解
一个线程就是一个执行流 , 每个线程都可以按照自己的顺序来执行代码 , 多个线程同时执行着多份代码.
2022-12-26 10:27:09 1870 22
原创 [MySQL]初始JDBC编程
JDBC即Java DataBase Connectivity , Java数据库连接 , 是一种用于执行SQL语句的Java API. 它是Java中数据库的连接规范.
2022-12-22 11:28:20 3905 58
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人