- 博客(53)
- 收藏
- 关注
原创 Spring Web MVC(Spring MVC)
4.实现服务器端代码学习Spring MVC, 其实就是学习各种Web开发需要⽤的到注解是⼀个 Web 框架.,简称之为: Spring MVCMVC 定义eg:HR就是View(视图), 负责接待候选⼈, 并告知候选⼈⾯试结果不同的部⻔, 就是Controller(控制器), HR根据候选⼈来选择对应的部⻔来进⾏⾯试⾯试官, 就是Model层, 来处理⾯试这个事情Spring MVCMVC 是⼀种架构设计模式, 也是⼀种思想, ⽽ Spring MVC。
2025-03-29 22:53:13
1163
原创 Spring Boot、Web
就是对HTTP协议进⾏封装, 程序员不需要直接对协议进⾏操作(⾃⼰写代码去解析http协议 规则),让Web开发更加便捷, 所以Web服务器。/static:静态资源⽂件夹, ⽐如前期学的js, css, html等静态⽂件, 不需要服务器数据进⾏绑定的。5xx 的状态码表⽰服务器出现错误, 往往需要观察⻚⾯提⽰的内容和 Tomcat ⾃⾝的⽇志, 观察是否。常⻅的Web服务器有: Apache,Nginx, IIS, Tomcat, Jboss等。1.Spring Boot 提供了启动添加依赖的功能,
2025-03-28 23:41:12
586
原创 Maven
相当于一个库,里面包含了很多jar包,方便使用Spring等各种工具;使用之前要先添加Maven插件,然后配置仓库地址和setting,可以设置新setting这样下次创建文件就不用再添加Maven.
2025-03-28 23:12:19
308
原创 Spring Boot(properties/yml/ymtl)
如果同时存在这两个配置文件,两个同时生效(取并集),如果有冲突项目,以properties为准,优先级更高。
2025-03-23 00:16:11
155
原创 Spring DI(注解)
Autowired优点:简介使用方便缺点:1.只能在IOC容器中使用 2.不能与final语法使用(final User u=new User)
2025-03-20 15:50:01
935
原创 Spring IOC(五个类注解以及方法注解)
/告诉Spring帮我们管理对象,ioc:五个类注解:controller// //等于HelloController helloController=new HelloController();//@Controller("aaa")重命名//// //ioc:类注解:service//////ioc:类注解:Repository////ioc:类注解:Component。
2025-03-17 21:43:15
886
原创 Spring mvc(5)、(6)用户登录,图书管理
如何把对象转换为JSON,前端与后端的用户登录。//转成JSON格式,如果不用直接对象就行。
2025-03-14 21:00:36
106
原创 JQuery 语法 $
jQuery 语法是通过选取 HTML 元素, 并对选取的元素执⾏某些操作。事件处理程序: 进⼀步如何处理. 往往是⼀个回调函数。事件类型: 是点击, 选中, 还是修改?jQuery 中所有选择器都以。事件源: 哪个元素触发的。JQuery 选择器。
2025-03-08 22:46:14
229
原创 SpringMVC 获取、返回Cookie、Seesion、Http,返回界面、数据,HttpServletResponse response,类,html,text,状态码
1.日志2.注解@SessionAttribute("储存的名字") @CookieValue ("储存的名字") @RequestHeader("User-Agent")二.储存1.//返回页面return//返回数据//一个类中既返回数据,又返回页面。返回数据要@ResponseBody//这个方法返回数据,也可以放在类上面,表示类返回数据return "我是数据";returnHTML(){return "<h1>我是一级</h1>";
2025-03-03 23:11:05
853
原创 SpringMVC(2)传递JSON、 从url中获取参数、上传文件、cookie 、session
ile.transferTo(new File("D:\\新建文件夹 (2)\\as\\"+file.getOriginalFilename()));return "接收ID:"+articId+" type:"+type;@RequestMapping("/r7")//@RequestBody请求。return "接收:"+user.toString();cookie:学生证 session:学生证里面存储的信息。return "文件接收成功";//从url中获取参数。
2025-03-01 17:06:11
374
原创 11.24 SpringMVC(1)@RequestMapping、@RestController、@RequestParam
类中的方法返回值会直接作为 HTTP 响应体返回给客户端。return "接收:"+keyword;数组用 Arrays.toString(arr)value这个参数指定了请求的 URL 路径。参数指定了允许的 HTTP 请求方法。//从前端接收p给后端keyword。,可表示为类路径与方法路径。传递ArrayList。
2025-02-27 23:33:36
319
原创 Map和Set
二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树。一般把搜索的数据称为关键字(Key),和关键字对应的称为值(Value),将其称之为Key-value的键值对,所以模型会有两种:1.,比如:有一个英文词典,快速查找一个单词是否在词典中快速查找某个名字在不在通讯录中2.,比如:统计文件中每个单词出现的次数,统计结果是每个单词都有与其对应的次数:单词,单词出现的次数梁山好汉的江湖绰号:每个好汉都有自己的江湖绰号而。。
2024-12-05 20:11:16
657
原创 排序(数据结构)
1.直接选择排序思考非常好理解,但是效率不是很好。实际中很少使用2.时间复杂度:O(N^2)3.空间复杂度:O(1)4.稳定性:不稳定。
2024-11-29 21:35:16
570
原创 ⽂件内容的读写
InputStream (字节流读出 抽象类)InputStream 只是⼀个抽象类,要使⽤还需要具体的实现类FileInputStream(字节流读出)
2024-11-17 21:46:06
184
原创 约束(MYSQL)
not null(非空)unique(唯一)default(默认约束,规定值)主键约束primary key(非空且唯一)auto_increment(自增类型)复合主键check(保证列中值符合指定条件)foreign key(外键约束)
2024-11-13 22:17:16
369
原创 堆(优先级队列)
注意:默认情况下,PriorityQueue队列是小堆,如果需要大堆需要用户提供比较器。即每次获取到的元素都是最小的元素。1.堆中某个节点的值总是。
2024-11-11 00:23:10
221
原创 网络原理(初一,TCP/IP五层(或四层)模型面试问题)
注意我们这⾥说的是传统意义上的交换机和路由器,也称为⼆层交换机(⼯作在TCP/IP五层模型的下 两层)、三层路由器(⼯作在TCP/IP五层模型的下三层)。对于⼀台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四 层;TCP/IP通讯协议采⽤了5层的层级结构,每⼀层都呼叫它的下⼀层所提供的⽹络来完成⾃⼰的需求。对于⼀台路由器,它实现了从⽹络层到物理层,也即是TCP/IP五层模型的下三层;TCP/IP是⼀组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。
2024-11-03 23:19:41
449
原创 定时器(多线程)
⼀个带优先级队列(不要使⽤ PriorityBlockingQueue, 容易死锁!同时有⼀个 worker 线程⼀直扫描队⾸元素, 看队⾸元素是否需要执⾏。Task 中带有⼀个时间属性, 队⾸元素就是即将要执⾏的任务。标准库中提供了⼀个 Timer 类. Timer 类的。队列中的每个元素是⼀个 Task 对象.包含两个参数. 第⼀个参数指定即。执⾏ (单位为毫秒).
2024-10-30 21:32:43
238
原创 线程池(重要)
使⽤ Executors.newFixedThreadPool(10) 能创建出固定包含 10 个线程的线程池.)threadFactory: 创建线程的⼯⼚, 参与具体的创建线程⼯作. 通过不同线程⼯⼚创建出的线程相当于。maximumPoolSize: 正式员⼯ + 临时⼯的数⽬. (临时⼯: ⼀段时间不⼲活, 就被辞退).ThreadPoolExecutor 提供了更多的可选参数, 可以进⼀步细化线程池⾏为的设定.corePoolSize: 正式员⼯的数量. (正式员⼯, ⼀旦录⽤, 永不辞退)
2024-10-27 23:29:10
541
原创 8阻塞队列
put 插⼊元素的时候, 判定如果队列满了, 就进⾏ wait. (注意, 要在循环中进⾏ wait. 被唤醒时不⼀定。在 Java 标准库中内置了阻塞队列. 如果我们需要在⼀些程序中使⽤阻塞队列, 直接使⽤标准库中的。take 取出元素的时候, 判定如果队列为空, 就进⾏ wait. (也是循环 wait)put ⽅法⽤于阻塞式的⼊队列, take ⽤于阻塞式的出队列.当队列满的时候, 继续⼊队列就会阻塞, 直到有其他线程从队列中。当队列空的时候, 继续出队列也会阻塞, 直到有其他线程往队列中。
2024-10-23 22:55:21
506
原创 懒汉与饿汉
线程安全问题发⽣在⾸次创建实例时. 如果在多个线程中同时调⽤ getInstance ⽅法, 就可能导致创建出多个实例. ⼀旦实例已经创建好了, 后⾯再多线程环境调⽤ getInstance 就不再有线程安全问题了。加上 synchronized 可以改善这⾥的线程安全问。synchronized 可以改善这⾥的线程安全问。给 instance 加上了 volatile.使⽤双重 if 判定, 降低锁竞争的频率.上⾯的懒汉模式的实现是线程不安全的.懒汉模式-多线程版(改进)
2024-10-22 23:41:44
213
原创 wait 和 notify
⽅法notify()也要在同步⽅法或同步块中调⽤,该⽅法是⽤来通知那些可能等待该对象的对象锁的其 它线程,对其发出通知notify,并使它们重新获取该对象的对象锁。在notify()⽅法后,当前线程不会⻢上释放该对象锁,要等到执⾏notify()⽅法的线程将程序执⾏。notify⽅法只是唤醒某⼀个等待线程. 使⽤notifyAll⽅法可以⼀次唤醒所有的等待线程。notify() / notifyAll(): 唤醒在当前对象上等待的线程.使当前执⾏代码的线程进⾏等待. (把线程放到等待队列中)
2024-10-20 16:08:35
326
原创 volatile 关键字
volatile 和 synchronized 有着本质的区别. synchronized 能够保证原⼦性,从主内存中读取volatile变量的最新值到线程的⼯作内存中。volatile 修饰的变量, 能够保证 "内存可⻅性".volatile 修饰的变量, 能够保证 "内存可⻅性".代码在写⼊ volatile 修饰的变量的时候,代码在读取 volatile 修饰的变量的时候,从⼯作内存中读取volatile变量的副本。将改变后的副本的值从⼯作内存刷新到主内存。t1 读的是⾃⼰⼯作内存中的内容.
2024-10-20 15:45:13
299
原创 线程安全(重点)
按理说返回10W线程不安全的原因线程调度是随机的这是线程安全问题的 罪魁祸⾸随机调度使⼀个程序在多线程环境下, 执⾏顺序存在很多的变数.程序猿必须保证 在任意执⾏顺序下 , 代码都能正常⼯作.修改共享数据多个线程修改同⼀个变量上⾯的线程不安全的代码中, 涉及到多个线程针对count变量进⾏修改.此时这个count是⼀个多个线程都能访问到的 "共享数据"原⼦性。
2024-10-20 15:18:00
236
原创 线程与进程的区别与联系
⼀个线程就是⼀个 "执⾏流". 每个线程之间都可以按照顺序执⾏⾃⼰的代码. 多个线程之间 "同时" 执⾏ 着多份代码.进程和进程之间不共享内存空间. 同⼀个进程的线程之间共享同⼀个内存空间。进程和进程之间不共享内存空间. 同⼀个进程的线程之间共享同⼀个内存空间。进程是包含线程的. 每个进程⾄少有⼀个线程存在,即主线程。进程是包含线程的. 每个进程⾄少有⼀个线程存在,即主线程。虽然多进程也能实现 并发编程, 但是线程⽐进程更轻量.创建线程⽐创建进程更快.销毁线程⽐销毁进程更快.调度线程⽐调度进程更快。
2024-10-09 21:50:09
254
原创 队列(用双向链表来实现)
只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有入队列:进行插入操作的一端称为出队列:进行删除操作的一端称为在Java中,的。
2024-07-31 22:05:27
819
原创 自定义异常(代码理解)
2.可以借助throw关键字,抛出一个指定的异常对象,将错误信息告知给调用者。对比两个图片,因为异常有无处理结果产生的不同。
2024-06-18 01:36:31
159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人