@TOC(目录)如何更简单的储存spring在Spring中想要更简单的存储和读取对象的核⼼是使⽤注解,也就是我们接下来要学习Spring中的相关注解,来存储和读取Bean对象。1.创建一个maven文件2.添加spring核心包3.配置xml文件,在文件中配置扫描路径4.在代码中直接使用注解读取和储存以前需要在储存一个bean对象时,需要手动的在配置文件中创建bean,这里直接配置一个扫描路径,
@TOC(目录)1.创建Spring项⽬接下来使⽤Maven⽅式来创建⼀个Spring项⽬,创建Spring项⽬和Servlet类似。总共分为以下3步:1.创建⼀个普通Maven项⽬。2.添加Spring框架⽀持(springcontext、springbeans)。3.添加启动类。①创建⼀个Maven项⽬!image20220704235945047(https://s2.51cto.com/
@TOC(目录)一、JUC(java.util.concurrent)1.Callable接口Callable是一个interface.也是一种创建线程的方式。谈到创建多线程,就会想到Runnable接口。但是Runnable有个问题:不适合于让线程计算出一个结果,这样的代码。例如:像创建一个线程,让这个线程计算1+2+3+…+1000要基于Runnable来实现,就很麻烦。创建一个类Result
@TOC(目录)synchronized的锁优化的机制这也是属于我们编译器优化,以及说JVM,操作系统,它们的一些优化策略所涉及到一些小细节。这些东西,其实说白了:如果我们不需要去实现JVM和编译器,就并不需要去理解。但奈何,现在都卷到这个份上,那我们就学吧基本特点结合上面的锁策略,我们就可以总结出Synchronized具有以下特性(只考虑JDK1.8):1、开始时是乐观锁,如果锁冲突频繁,就转
@TOC(目录)CAS(Compareandswap)1、解析CASCAS:全称Compareandswap,字面意思:”比较并交换“,一个CAS涉及到以下操作:!在这里插入图片描述(https://s2.51cto.com/images/blog/202207/15130127_62d0f4a7e77ff97582.png?xossprocess=image/watermark,size_14,
@TOC(目录)一、常见的锁策略1.悲观锁VS乐观锁悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。预期锁冲突的概率很高就是它认为,只要它一加锁,就会出现锁冲突。 乐观锁:假设数据一般情况下不会产生并发冲突,所以在数据进行提交更新的时候,才会正式对数据是否产生并发冲突进行检测,如果发现并发冲突了,则让返回用户
@TOC(目录)Servlet使用Servlet输出helloworld①引入依赖xml<dependency<groupIdjavax.servlet</groupId<artifactIdjavax.servletapi</artifactId<version3.1.0</version<scopeprovided</scope</dependency②创建目录结构当下项目的这些目录是不够的,
@TOC(目录)TomcatTomcat是什么?谈到“汤姆猫”,大家可能更多想到的是大名鼎鼎的这个:!image20220701105323230(https://cdn.jsdelivr.net/gh/PanYuJie/cloudimages/data/image20220701105323230.png)事实上,Java世界中的“汤姆猫”完全不是一回事!image202207011057073
@TOC(目录)一、构造HTTP请求的方式:1.基于HTML/JS(客户端构造HTTP请求,最常见的HTTP客户端,就是浏览器)基于form表单基于ajax2.基于Java(这种方案是完全可行的,但是实际开发中用的不如上面的方式多)基于socket1.基于form表单构造HTTP请求form(表单)是HTML中的一个常用标签,可以用于给服务器发送GET或者POST请求form的重要参数:actio
@TOC(目录)了解HTTP协议HTTP:(全称为“超文本传输协议”)是一种应用非常广泛的应用层协议HTTP处于TCP/IP五层协议栈的应用层HTTP在传输层是基于TCP的(不够严谨,HTTP/1,HTTP/2是基于TCP,最新版本是HTTP/3是基于UDP,但是当下互联网上绝大部分使用的HTTP都是HTTP/1.1)传输层协议,主要关注的是端对端之间的数据传输。TCP,重点关注的是可靠传输应用层
@TOC(目录)引入markdown插件官网:Editor.md开源在线Markdown编辑器(https://pandao.github.io/editor.md/)直接npm构建就好javanpminstalleditor.md!image20220630152221216(https://s2.51cto.com/images/blog/202207/09123928_62c90680e77
@TOC(目录)文档对象模型是HTML和XML文档的编程接口。它提供了对文档的结构化的表述,并定义了一种方式可以使从程序中对该结构进行访问,从而改变文档的结构,样式和内容。将文档解析为一个由节点和对象(包含属性和方法的对象)组成的结构集合。简言之,它会将web页面和脚本或程序语言连接起来。一个web页面是一个文档。这个文档可以在浏览器窗口或作为HTML源码显示出来。但
@TOC(目录)CSSCSS的语法规则非常简单!每一个CSS语句包含两个部分:选择器+应用属性。内部样式表1.内部样式表css<stylep{/设置字体颜色/color:red;/设置字体大小/fontsize:30px;}</style<phello</p上面的代码,就是最典型的例子。其中style标签的内容,就是一个CSS的代码。!image20220627160305131(https://
@TOC(目录)1.什么是HTMLHTML是用来描述网页的一种语言。HTML是一种在Web上使用的通用标记语言。HTML允许你的格式化文本,添加图片,创建链接、输入表单、框架和表格等等,并可将之存为文本文件,浏览器即可读取和显示。1.HTML指的是超文本标记语言:HyperTextMarkupLanguage2.HTML不是一种编程语言,而是一种标记语言3.标记语言是一套标记标签(markupta
@TOC(目录)TCP/IP模型!image20220626123223278(https://cdn.jsdelivr.net/gh/PanYuJie/cloudimages/data/image20220626123223278.png)!image20220626123148981(https://cdn.jsdelivr.net/gh/PanYuJie/cloudimages/data/i
@TOC(目录)什么是网络协议?1.其实网络协议和我们平时生活中的协议是样的也是一种约定2.就好比我们看谍战片的时候的密码本我将信息按照密码本写好你再按照密码本翻译就是一个协议3.计算机之间的传输媒介是光信号和电信号.通过“频率”和“强弱”来表示0和1这样的信息.要想传递各种不同的信息,就需要约定好双方的数据格式.网络协议为什么要分层?1.分层能够避免某个协议过于庞大复杂2.分层之后协议之间解耦合
@TOC(目录)TCP与UDP的区别!image20220625160403605(https://s2.51cto.com/images/blog/202207/02145050_62bfeaca3f5f466564.png?xossprocess=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10
@TOC(目录)多线程的死锁Java线程死锁是一个经典的多线程问题,因为不同的线程都在等待根本不可能被释放的锁,从而导致线程中的任务无法完成下面演示互相等待对方锁释放的死锁javapublicclassDealThreadimplementsRunnable{privateStringuserName;publicStringgetUserName(){returnuserName;}public
@TOC(目录)单例模式什么是单例模式要求我们代码中的某个类,只能有一个实例,不能有多个实例。实例就是对象。就是说某个类只能new一个对象,不能new多个对象。这种单例模式,在实际开发中是非常常见的,也是非常有用的。开发中的很多“概念”,天然就是单例的。比如:使用JDBC操作数据库,此时数据库连接可以通过数据库连接池数据库连来获取javaDataSourceds=newMySqlDataSour
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号