自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringBean管理

在Spring中将管理对象称为 Bean.Bean是由一个SpringIOC容器实例化,组装和管理的对象.也就是说,Bean并不是由我们程序员编写的,而是在程序运行过程中,由Spring通过反射机制生成的.SpringBean是Spring框架在运行时管理的对象,我们编写的大多数逻辑代码都会存放在SpringBean中.

2023-03-13 23:00:00 1631 2

原创 Spring体系结构

Spring框架采用的是分层结构,一系列功能要素被分为20个模块。

2023-03-13 18:47:35 310

原创 Spring自动事物管理失效情形

在MySQL中只有InnoDB引擎支持事物管理,其他的引擎均不支持事物管理,因此我们要想使用Spring的事物管理操作数据库,在MySQL中就必须保证此数据库的引擎为InnoDB引擎。Spring事物管理默认只识别运行期异常,对于编译期异常Spring默认不处理,因此导致Spring事物管理失效。在Spring事务管理中,我们必须使用代理对象调用另一个代理对象,否则Spring无法帮我们找到所需管理的事务。事务传播行为我们在下篇博客详细介绍。

2023-02-07 09:45:00 494

原创 Spring事物管理

事物可以看做是由对数据库的若干操作组成的一个单元事物是一系列的动作,一旦其中有一个动作出现错误,必须全部回滚,提供将事物中对数据库的所有已完成的操作全部撤销,滚回到事物开始的状态,避免出现由于数据不一致而导致接下来的一系列错误.事物的出现是为了确保数据的完整性和一致性,确保用户的每一个操作都是可靠的,事物中的每一步操作都必须执行,只要有发生异常就回退到事物未开始的操作状态,这些事物要么都执行,要么都取消,从而保证数据满足原子性,一致性.在目前的企业开发中,事物的管理是必不可少的.

2023-02-07 07:00:00 355

原创 Spring事务传播行为

至少具有两个事务,单体不存在传播行为.

2023-02-06 20:58:14 1569

原创 Spring AOP[详解]

AOP的全称为Aspect-Orientend-Programming,即面向切面编程.它是面向对象编程(OOP)的一种补充. 为了解决上述问题,AOP思想随之产生,AOP采取横向抽取机制,将分散在各个方法中的重复代码提取出来,然后在程编译或运行时,再将这些提取出来的代码应用到需要执行的地方.这种采用横向抽取机制的方式,采用传统的OOP思想是无法办到的,因为OOP只能实现父子关系的纵向重用.

2022-11-19 11:59:09 463

原创 Spring JDBC

Spring JDBC是Spring所提供的持久层技术,它主要的目的是降低JDBC API的使用难度,以一种更直接,更简洁的方式使用JDBC API. ​ Spring JDBC 模块负责数据库资源和错误处理,大大简化了开发人员对数据库的操作.

2022-11-18 19:06:11 2070 2

原创 基于Maven的Spring开发环境搭建

此处我们只需要导入上述Spring的核心jar包即可,无需导入其他多余Spring有关jar包.因为Maven会为我们自动导入Spring核心jar包所需的其他必要jar包.我们在创建时一定要生成类中的get(),set()方法,以及写出它的无参构造和有参构造方法。idBean的唯一标识符,Spring容器对Bean的配置,管理都通过该属性进行.xml文件中用到的属性暂时简单介绍如下,之后会在SpringBean文章中详细介绍。class指定Bean的实现类,它必须使用类的全限定名。...

2022-11-16 09:15:00 450

原创 Spring概述

Spring是分层的javaSE/EEfull-stack轻量级,非侵入式的一站式开源框架,以IOC(InverseofControl控制反转)和AOP(AspectOrientedProgramming面向切面编程)为内核.使用基本JavaBean来完成以前只能由EJB完成的工作,取代了EJB的臃肿,低效的开发模式JavaBean实际上是一种java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象。...

2022-11-16 06:30:00 307

原创 Mybatis缓存机制

缓存即为存在内存中的临时数据.将用户经常查询的数据存放在缓存(内存)中,用户去查询数据就不用去每次去数据库中查询,而是去缓存中查询,从而提高了查询的效率,解决了高并发系统的性能问题.使用缓存的方式可以减少和数据库的交互次数,减少系统开销,提高系统效率将经常查询的并且不经常改变的数据适合使用缓存;反之,不经常查询且经常改变的数据不适合使用缓存httpshttpshttps。...

2022-11-15 09:45:00 3086

原创 Mybatis多表查询

Mybatis中涉及关联关系时直接在属性中关联对应对象,而不用像之前我们需要在实体类中定义关联对象的所有属性。association多对一关系结果集映射。collection一对多关系结果集映射。表student学生表。表admin管理员表。表grade年级表。...

2022-11-14 13:45:00 1064

原创 Mybatis动态SQL

动态SQL是MyBatis的强大特性之一。如果你使用过JDBC或其它类似的框架,你应该能理解根据不同条件拼接SQL语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号,还有臭名昭著苏的SQL拼接问题。利用动态SQL,可以彻底摆脱这种痛苦。...

2022-11-14 08:00:00 292

原创 Mybatis查询结果处理

!--特殊情况,单独处理-->注此处在定义列名与属性名的一一对应关系时,列名与属性名相同的可以不用定义,但是列名与属性名不相同的一定要在resultMap中定义,否侧无法进行正常映射.如上述属性名“xb”与数据库中列名“gender”不同,我们必须声明出来.​​/*结果处理*/​@Test//单独使用resultMap处理}}​。...

2022-11-13 10:45:00 1077

原创 Mybatis的增删改查操作

1.首先,我们要在数据库中创建好表,并存入基本数据,此处不再进行演示​​​returnxb;}​}​}​}​System.out.println("Admin无参构造");//此处无参构造必须编写}​}​returnid;}​}​}​}​}​}​​@Override'}';}}3.接下来编写dao​​​//此处int返回的值是操作的行数​​​​}4.编写mapper。...

2022-11-13 07:15:00 2884

原创 Mybatis参数传递方式

/insert>​@Test//使用parameterType参数进行类型定义​}}这样我们就通过传递一个对象的方式完成了通过id查询Admin对象。

2022-11-12 21:45:00 516

原创 基于Maven的Mybatis开发环境搭建

此处由于SqlSessionFactory创建的开销比较大,且是用于封装数据库的连接信息,所以我们没有必要在每个测试中都创建一次.因此我们直接将创建SQLSessionFactory的部分封装到一个Util类中,这样我们整个项目只有在第一次创建SQLSessionFactory,之后的使用过程中直接调用Util方法创建SQLSession即可.我们创建SQL映射文件后要在全局配置文件中进行注册,之后在此文件中进行SQL映射.我们在创建实体类时尽量保证属性名与数据库中的字段名相同。保证类中有无参构造方法。..

2022-11-12 17:25:39 423

原创 Mybatis概述

Mybatis对jdbc基础功能进行封装,程序员在此基础上进行业务开发.即Mybatis就是一款帮助程序员进行程序开发的优秀框架.Mybatis对jdbc进行轻量级的开发,支持自定义SQL,存储过程以及高级映射.Mybatis可以使用简单的xml文件或注解来配置和映射原生类型,接口和java的POJO为数据库中的记录....

2022-11-12 17:24:41 324

原创 Maven开发环境搭建

在进行Maven开发环境搭建之前我们必须要有两个前提1.我们的电脑已经安装并配置了jdk;2.因为Maven工作时经常需要通过网络下载各种所需文件,因此我们需要保证网络的通常.

2022-08-11 09:01:04 665

原创 Maven概述

Maven基于项目对象模型(POMprojectobjectmodel),是一款开源的项目管理工具.可以通过一小段描述信息(配置)来管理项目中的jar及jar包之间的依赖关系,完成项目的编译,测试,打包及发布等工作.Maven的核心功能是合理叙述项目之间的依赖关系,就是通过pom.xml文件的配置来获取jar包,而不用我们手动去添加jar包.如果我们需要使用pom.xml来获取jar包,那么我们在创建项目时就应该将项目创建为Maven项目..........

2022-08-11 09:00:47 140

原创 VUE指令集合

v-bind指令可以用来响应式的更新任何一个标签的html属性,属性绑定使用v-bind实现动态图片切换功能运行结果。

2022-07-18 09:50:10 233

原创 第一个Vue程序与总结

1.想让Vue工作,必须创建一个Vue实例,且要传入一个配置对象2.root容器里的代码依然符合HTML规范,只不过混入了一些特殊的Vue语法3.root容器里的代码被称为[Vue模版]4.Vue实例和容器是一一对应的5.真实开发中只有一个Vue实例,并且会配置组件一起使用6.{{XXX}}中的XXX,要写表达式,且XXX可以自动读取到data中的所有属性7.一旦data中的数据发生改变,那么页面中用到该数据的地方也都会自动更新。...

2022-07-18 09:20:17 321

原创 VUE模板语法[简述]

Vue使用了基于HTML的模板语法,允许开发者声明式的将DOM绑定至底层Vue示例的数据.所有Vue的语法都是合法的HTML语言,所以Vue语法能规范的被浏览器和HTML解析器解析.功能当表达式的值发生变化时,将其产生的连带影响,响应式的作用于DOM上,从而实现通过Vue操作DOM.v-model双向数据绑定,一般用于表单元素上举例v-model=“form.title”Vue的语法有两种模板插值语法和指令语法。一种带有v-前缀的特殊属性。功能用于解析标签体的内容....

2022-07-18 09:18:48 307

原创 Vue简介

Vue是一套用于构建用户界面的渐进式JavaScript框架.把数据变成用户可见的界面渐进式vue可以自底向下逐层的应用简单应用只需一个轻量级的小巧的数据库复杂应用可以引入各式各样的vue插件。

2022-07-16 10:35:21 367

原创 CSS简单网页示例

​ 运行结果如下:

2022-06-20 17:05:17 780

原创 CSS实战栗子

运行结果如下: 运行结果如下: 运行结果如下:

2022-06-20 17:03:11 204

原创 CSS粘滞定位

当我们将元素的position属性设置为sticky时,则开启了元素的粘滞定位用法: position: sticky;特点:粘滞定位与相对定位的特点基本一致与相对定位的不同点在于: 粘滞定位可以在元素到达某个位置时将其固定缺点: 粘滞定位的包容性并不高,不能兼容所有的浏览器下面我们来看一个栗子,实际体验一下使用粘滞定位: ​ 在上述代码中我们设置了5个块元素box1,2,3,4,5.且我们设置了box2为相对定位,其背景色为橙色;box3为绝对定位,其背景色为绿色;box4为固定

2022-06-20 16:52:28 727 1

原创 CSS固定定位

将元素的position属性设置为fixed,则开启了元素的固定定位用法: position: fixed;固定定位的特点:固定定位也是一种绝对定位,所以固定定位的大部分特点都和绝对定位一样与相对定位一样.开启了固定定位以后,如果不设置偏移量,元素的位置不会发生任何改变与绝对定位的不同点: 固定定位永远是参照于浏览器的窗口进行定位固定定位的元素不会随着网页的滚动条滚动下面我们来看一个栗子,实际体验一下使用固定定位: ​ 在上述代码中我们设置了4个块元素box1,2,3,4.且我们设置

2022-06-20 16:51:18 5711

原创 CSS绝对定位

当元素的position设置为absolute时,则开启了元素的绝对定位用法: position: absolute;绝对定位的特点:与相对定位一样.开启了绝对定位以后,如果不设置偏移量,元素的位置不会发生任何改变开启绝对定位之后,元素会从原有的文档流中脱离.只是相对于它的包含块定位,包含块可能是文档流中的另一个元素或者是初始包含块绝对定位会改变元素的性质.行内元素变为块元素,块元素的宽度被内容撑开(即块元素中原有内容有多宽,开启绝对定位之后的块元素就有多宽)绝对定位会使元素提升一个层级下面我们来看一个栗子

2022-06-20 16:50:13 8689

原创 CSS相对定位

当元素的position设置为relative时,则开启了元素的相对定位用法: position: relative ;相对定位的特点:元素开启相对定位之后, 如果不设置偏移量,元素不会发生任何变化(因此,我们在使用相对定位的时候,一定要设置元素的偏移量)相对定位是参照于元素在文档流中的位置进行移动的相对定位会提升元素的层级即当我们设置一个元素的位置与另一个元素冲突时,设置了相对定位的元素会显示在未设置定位元素的上面相对定位不会使元素脱离文档流相对定位不会改变元素的性质.块元素还是块元素,行元素还是行元素下

2022-06-20 16:49:21 4612

原创 CSS包含块(containing block)

正常情况下,包含块就相当于一个相对参考系,某元素的包含块就是最高包裹当前元素的块级元素或者是离它最近的祖先元素(大多数是父元素)(除static之外)初始包含块是一个视窗大小的矩阵,即HTML的父级document,它是根元素HTML的包含块;而非根元素的包含块.详细介绍如下:如果position值是relative或static,包含块由最近的块级框,表单元格或行内祖先框的内容边界构成如果position值是absolute,包含块设置为最近的position值不是static的祖先元素(可以是任意类型)

2022-06-20 16:47:51 336

原创 CSS定位

我们在了解相对定位之前,先来看一个案例: 要想实现上述操作,我们可以使用外边距margin对标签进行处理,也可以使用浮动来进行标签的设置.将2号标签进行向左浮动,使之上移,接着对3号标签进行设置.这两种方法虽然能达到我们想要的结果,但是需要改动的步骤较多,不!利于我们开发.因此我们需要使用到定位定位是一种更加高级的布局手段,通过定位可以将元素摆放到页面的任意位置.这样十分方便我们进行页面的布局使用position属性来进行设置定位可选值:static: 默认值.元素是静止的,没有开启定位将posi

2022-06-20 16:45:10 106

原创 CSS复合选择器

复合选择器分为交集选择器和并集选择器,下面我们来逐一介绍: 首先,我们来看一个需求: 将class属性值为aaa的p字体设置为20px;这样我们单独使用简单选择器就不能完成需求,因为我们不能使用简单选择器来同时满足两个条件,这时我们就会用到复合选择器作用: 选中同时符合多个条件的元素语法: 选择器1选择器2选择器n{ }注意点: 交集选择器中如果有元素选择器,必须使用元素选择器开头栗子: 加: 一般不建议这样使用.因为#abc也可以直接定位我们需要选择的元素,这种写法虽

2022-06-20 16:28:45 233

原创 CSS关系选择器

想要了解关系选择器,我们首先要了解都有什么关系父元素直接包含子元素的叫做父元素子元素被包含的元素称为子元素祖先元素直接或间接包含其他元素的元素称为祖先元素一个元素的父元素也是它的祖先元素后代元素直接或间接被祖先元素包含的元素子元素也是后代元素兄弟元素拥有相同父元素的元素之间称为兄弟元素我们可以注意到,祖先元素和后代元素的范围比子元素和父元素的范围更大下面我们从一个需求开始介绍关系选择器​需求: 为div的子元素span设置字体颜色为红色子元素选择器: 作用: 选中一个指定父元素的指

2022-06-20 16:24:54 89

原创 CSS盒子模型(box-model)

我们在进行网页设计的时候,可以将一切的HTML元素看作为盒子.在CSS中盒子模型用来设计和布局时使用CSS处理网页时,它认为每个标签都包含在一个不可见的盒子里.如果把所有的标签都想象成盒子,那么我们对网页的布局就相 当于是放盒子我们只需要将相应的盒子摆放到网页中相应的位置即可完成网页的布局一个盒子分为以下几个部分:内容区(content),内边距(padding),边框(border),外边距(margin) 上述图片展示的即为一个盒子模型,可以使我们更加形象的了解,下面我们来逐对盒子模型的几个部分进行介绍

2022-06-19 23:09:52 880

原创 CSS文档流及浮动

文档流指的是文档中的标签在排列时所占用的位置。 将窗体自上而下分成一行行 ,并在每行中按从左至右的顺序排放标签,即为文档流也就是说在文档流中标签默认会紧贴到上一个标签的右边,如果右边不足以放下标签,标签则会另起一行,在新的一行中继续从左至右摆这样一来每一个块标签都会另起一行,那么我们如果想在文档 流中进行布局就会变得比较麻烦所谓浮动指的是使标签脱离原来的文档流,在父标签中浮动起来 我们可以抽象的理解为,浮动使一个二维的网页页面变为一个三位的立体模型当一个标签浮动以后,其下方的标签会上移浮动会使标签完全脱离文

2022-06-19 23:02:25 267

原创 CSS背景

我们使用CSS可以对网页添加背景颜色,背景图片等操作,使网页更加美观,下面就将一些常用的设置网页背景的方法介绍如下:background-color设置背景颜色我们可以自己设置自己喜欢的背景颜色background-image设置背景图片通过url导入我们已经存放在项目中的图片并将其设置为网页的背景background-repeat设置背景重复(即背景平铺)设置背景重复的目的是,当我们的背景图片大小不符合时,我们可以让背景图片重复铺满我们所要填充的位置background-size设置背景尺寸使用此方法可以

2022-06-19 22:30:10 167

原创 CSS伪类

CSS伪类专门用来表示标签的一种的特殊的状态,当我们需要为处在这些特殊状 态的标签设置样式时,就可以使用伪类伪类的语法:: hover 伪类表示鼠标移入的状态: active 表示的是被点击的状态: focus 向拥有键盘输入焦点的标签添加样式代码示例入下: 运行结果如下:...

2022-06-19 22:28:17 984

原创 CSS透明度[简述]

CSS中设置透明度有两种方式: GRBA和opacity. 下面我们就这两种方式进行简要介绍:语法如下: rgba只是单纯的设置颜色的透明度,但是标签上的文字不会透明. 即透明元素的子元素不会继承其透明效果.代码示例如下: 运行结果: 我们可以看到,使用grba方法只是颜色发生了变化,两个div的文字都没有改变语法如下: 其中,value的取值为[0~1].opacity属性具有继承性,因此会使得容器中所有的元素都

2022-06-19 22:26:20 1669

原创 css文本[简述]

通过文本可以改变文本的颜色,字符间距,对齐方式,装饰文本,对文本进行缩进等等一系列操作 代码的运行结果如下: 在这里我们一定要搞清楚选择器所选择的元素都有哪些.就比如上面的示例中,我们只给clas为p2的文本设置了样式,因此class为p2的文本还保留着其原本的样式...

2022-06-19 22:21:12 114

原创 CSS标签分类

块级标签: 无论内容的多少,都只会占用一行的标签称为块级标签常用块级标签如下: ,,,块级标签可以设置标签的宽高默认大小: 宽: 与父级标签的宽一致 高: 0/与内容的高一致行级标签: 只占自身大小的标签,不会占一行的称为行级标签行级标签不能设置宽高常见的行级标签如下: ,,行级块标签:可以设置大小,但不占一行的标签称为行级块标签常见的行级块标签如下: ,运行结果如下: 我们可以看到,块级标签每次占用了一行的位置.而行级标签只占...

2022-06-19 22:15:33 922

空空如也

空空如也

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

TA关注的人

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