- 博客(46)
- 收藏
- 关注
原创 Spring 学习 day3 : AOP,Spring中JdbcTemplate的使用
1.AOP1.1 什么是AOP在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。要理解切面编程,就需要先理解什么是切面。用刀把一个西瓜分成两瓣,切
2021-12-29 19:37:08
585
原创 Spring 学习 day2 : Spring注解和代理模式
1.IOC注解Spring框架中有注解和XML两种配置方式,这两种方式各有千秋1.1 xml和注解两种注解方式的区别1.1.1 XML配置优点有:1.XML配置方式进一步降低了耦合,使得应用更加容易扩展,即使对配置文件进一步修改也不需要工程进行修改和重新编译2.在处理大的业务量的时候,用XML配置应该更好一些,因为XML更加清晰的表明了各个对象之间的关系,各个业务类之间的调用,同时Spring的相关配置也能一目了然.缺点有:配置文件读取和解析需要花费一定的时间,配置文件过多的
2021-12-29 13:49:28
1098
原创 Spring 学习 day1 : spring初识,环境,IOC的XML方式使用,IOC的自动装配,IOC的延迟加载
1.Spring初识Spring 是一个开源框架,Spring 是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE应用程序开发提供集成的框架。Spring 使用基本的 JavaBean 来完成以前只可能
2021-12-28 22:07:26
247
原创 框架学习 day1 : mybatis环境的基本搭建和使用
1.环境搭建1.1 创建lib文件夹,用来存放依赖的jar包在工程目录下,创建lib文件夹,并且将工程的依赖路径改为lib路径1.2 将jar包存入lib文件夹将所需要用到的jar包依赖放入lib文件夹中log4j的jar包用来和log4j.properties配置文件对应mybatis的jar包提供mybatis环境mysql的jar包用来提供和数据库的连接2.配置文件2.1log4j.propertieslog4j...
2021-12-14 22:28:57
246
原创 Java进阶 学习 day1 : 反射机制
1.反射是什么程序中的反射指程序运行状态中,1、对于给定的一个类(Class)对象,可以获得这个类(Class)对象的所有属性和方法;2、对于给定的一个对象(new XXXClassName<? extends Object>),都能够调用它的任意一个属性和方法。这种动态获取类的内容以及动态调用对象的方法和获取属性的机制,就叫做Java反射机制2.反射有什么用直接new User()不就可以了,为什么要用这种反射写法?实例化一个User()对象,不使用反射,如
2021-12-06 22:22:29
536
原创 前端学习 day11 : JQuery,基本选择器,过滤选择器,筛选选择器
1.JQuery1.1 什么是JQuery(1)、JavaScript与jQuery比较js: 1、入口函数只有一个,window.onload浏览器兼容性:非常令人头疼,比如textContent虽然作为标准方法但是只支持IE8+以上的浏览器 DOM错综复杂,实现简单的效果很麻烦 代码容错性差,出错后导致后面的代码不执行jQuery: 1、市场占有率稳步上升,代码比较少,功能强大2、DOM比较强大,事件处理,完全解决了浏览器的兼容性问题3、ajax操作(比较...
2021-11-24 21:55:24
695
原创 前端学习 day10 : 节点,事件进阶和解绑,BOM,定时器
1.节点1.1 什么是节点//节点主要是添加删除标签的,动态数据渲染 //节点类型 nodeType : //1 元素(标签) 2 属性 3 文本 8 注释 9 文档 //9 文档 console.log(document.nodeType); var dv = document.getElementById("dv") ; //1 元素(标签) console.log(dv.nodeType) ; var c...
2021-11-24 20:57:11
379
原创 前端学习 day9 : DOM操作,获取DOM元素,绑定事件,修改属性
1.DOM操作1.1 啥是DOM事件基础文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为DOM。Document Object Model的历史可以追溯至1990年代后期微软与Netscape的“浏览器大战”,双方为了在JavaScript与JScript一决生死,于是大规模的赋予浏览器强大的功能。微软在网页技术上加入了...
2021-11-21 20:32:44
608
原创 前端学习 day8 : 内置对象,API的使用
1.内置对象JavaScript中的对象分为4种:内置对象、浏览器对象、自定义对象、DOM对象。JavaScript 提供多个内置对象:Math/Array/Number/String/Boolean ... ...。对象只是带有属性和方法的特殊数据类型。学习一个内置对象的使用,只要学会其常用的成员的使用(通过查文档学习)。内置对象的方法很多,我们只需要知道内置对象提供的常用方法,使用的时候查询文档。(1)、如何学习一个方法?方法的功能、参数的意义和类型、返回值意义和类型、demo进行测试2
2021-11-21 17:07:42
119
原创 前端学习 day7 : 预解析,对象,异常
1、函数其他、函数的命名规则1.由字母、数字、下划线、$符号组成,不能以数字开头2.不能是关键字和保留字,例如:for,while,this, name3.区分大小写规范1.函数名必须有意义2.遵守驼峰命名法3.建议不要用$作为函数名、函数的覆盖问题如果两个函数都是函数的声明,且函数名相同,那么后边的函数会覆盖前边的functionfn1(){console.log("函数声明");}functionfn1(){...
2021-11-21 17:06:20
101
原创 前端学习 day6 : 数组,函数
1. 数组、为什么要学习数组之前学习的数据类型,只能存储一个值(比如:Number/String。如果我们想存储班级中所有学生的姓名,此时该如何存储?、数组的定义所谓数组,就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合我们就称之为数组。数组是一个有序的列表,可以在数组中存放任意的数据,并且数组的长度可以动态的调整。、通过数组字面量创建数组// 创建一个空数组vararr1=[]; // 创建一个包含3个数值的数组,多个数组项以逗号隔开vararr...
2021-11-21 17:03:55
508
原创 前端学习 day5 : CSS三大特性,JS初识
1.CSS三大特性三大特性只影响颜色,文本颜色,字体,大小,样式等属性,像是浮动啊,定位啊,这些非文本属性就不会被影响1.1 层叠性相同的属性,相同类型的选择器,会触发层叠性,就近原则 p{ color: red; } p{ /* 不同属性不会冲突 */ font-size: 20px; /* 相同属性,就近原则 */ ...
2021-11-17 20:28:44
135
原创 前端学习 day4 : 盒子模型,浮动,定位
1.居中问题text-align是让块元素中的内容在块元素的范围内水平居中如果设置块元素中的内容的属性line-height的高度等于块元素高度的话,那么该内容垂直居中2.盒子边框的设置2.1 边框的设置细节border-top 上边框 border-right 右边框border-bottom 下边框border-left 左边框border 全边框设置设置顺序为: 粗...
2021-11-16 20:22:13
620
原创 前端学习 day3 : CSS初识,CSS选择器,背景设置
1.CSS初识1.1 CSS的发展历程从HTML被发明开始,样式就以各种形式存在。不同的浏览器结合它们各自的样式语言为用户提供页面效果的控制。最初的HTML只包含很少的显示属性。随着HTML的成长,为了满足页面设计者的要求,HTML添加了很多显示功能。但是随着这些功能的增加,HTML变的越来越杂乱,而且HTML页面也越来越臃肿。于是CSS便诞生了。1.2 CSS网页的美容师从HTML被发明开始,样式就以各种形式存在。不同的浏览器结合它们各自的样式语言为用户提供页面...
2021-11-15 20:45:35
571
原创 前端学习 day2 : 特殊字符,列表,table,搜索,表单
1.特殊字符2.列表标签2.1无序列表没有序号<ul> <li>列表项1</li> <li>列表项2</li> <li>列表项3</li> ......</ul>样式:让CSS来调整2.2有序列表有序号<ol> <li>列表项1</li> <li>列表项2</l...
2021-11-14 18:21:41
153
原创 前端学习 day1 : HTML初识
1.学习大纲2.HTML初识2.1 HTML骨架格式<HTML> <head> <title></title> </head> <body> </body></HTML>1 HTML标签:作用所有HTML中标签的一个根节点。根标签2 head标签: 文档的头部文档的头部描述了文档的各种属性和信息,包括文档的标题、在 Web...
2021-11-10 19:46:42
232
原创 数据库 学习 day4 : JDBC的使用
1.JDBC是什么通过java代码连接数据库并对数据库进行操作的一种方式我们之前学习MYSQL时,为了使用MYSQL服务,我们通常要使用客户端与MYSQL服务进行连接,然后才能输入SQL语句进行数据库的各种操作。客户端有命令行与图形界面2种。但是在更多的环境下,由我们人直接操作数据是很低效的,比如双11这种业务场景下,一秒中往往要在库中生成上千万甚至几亿条数据,靠人来手工操作是不现实的,只能依赖于程序进行这种高并发的操作。程序语言有多种,比如Java、Python、C/C++等,程序语言如果
2021-11-09 22:07:58
995
原创 数据库 学习 day3 : 行转列,连接查询,数据库的导入导出
1.行转列1.1 什么是是行转列正常的查询结果是这样的可是我想要的结果是这样的这就是行转列1.2 场景一(多行转一行多列)可以使用下面的SQL语句(group by 与 case when结合使用即可实现):select name,max(case coursewhen 'java' then score end) Java, max(case coursewhen 'MySQL' then score end) MySQ...
2021-11-07 14:20:59
267
原创 数据库 学习 day2 : 主键外键约束,条件判断,关系表达式,模糊查询,排序,分组,嵌套查询(子查询),常用函数
1.SQL1.1SQLSQL,它的全称叫Structured Query Language,结构化的查询语言。之所以出现这个东西,是为了统一/屏蔽不同数据库厂商生产的数据库产品之间的差异。SQL定义了一系列标准和规范,数据库厂商也需要按照这个规范来,当然会有一些细小的差别,相比没有规范来说,要好很多比如 项目后期由于某些原因,需要进行数据库更换,那么操作数据库的语句就都需要更改,而SQL出现,可以避免这个问题1.2 DDL语句(1) 更...
2021-11-04 19:30:29
523
原创 数据库 学习 day1: 数据库基础,简单的SQL语句
1.数据库基础1.1 概述数据库:遵循一定数据格式的数据结合,可以解决操作系统跨平台存储文件的问题只要是同一个数据库文件,在windows和linux中都可以正常存储1.2 数据库分类画红框的是我们重点关注的。Oracle这是一种关系型数据库。它的特点是闭源收费,但是功能强大稳定,而且有一支专业的技术支撑团队。使用这种数据库的一般是大型企业、银行业、金融业。MySQL它也是关系型数据库。它的特点是开源免费,功能还是不错的,也比较稳定。...
2021-11-03 20:46:25
300
原创 Java 学习 day26: 正则表达式
1.正则表达式1.1 什么是正则表达式正则表达式是一种定义了字符串应遵循的规则的式子正则表达式可以用来搜索,编辑或者处理文字在正则表达式中\表示转义符,在java中\也表示转义符,所以在java中使用正则表达式的转义应该是\\1.2 常用语法1.3 (),[],{}1>. 小括号():匹配小括号内的字符串,可以是一个,也可以是多个,常跟“|”(或)符号搭配使用,是多选结构的 示例1:string name = "way2...
2021-11-01 20:46:00
462
原创 Java 学习 day25: 多线程下的懒汉模式,生产者消费者,网络通信
1.多线程下的单例模式public class Sinleton { private Sinleton(){ } //volatile : 防止指令重排 //指令重排: //创建对象的过程是:加载类,然后载入main方法,在堆内存中创建内存,把内存地址给调用处 //但是也可能先把地址给你再创建内存空间,这时候就是指令重排了,如果在多线程情况下容易出错 private volatile static Sinleton s = null; public static Sinleto
2021-10-31 14:25:04
114
原创 Java 学习 day20: HashSet,Map,Properties,map转换为set和list
1.Set1.1散列表1.2 HashSet2.Map2.1 继承体系2.2 Map特点2.3 常用方法2.4 HashMap2.5 Properties2.6 TreeMap3.面试题Map转换为List并且以Value排序...
2021-10-31 11:07:09
133
原创 Java 学习 day24: 线程join,yield,锁,定时器,死锁,等待挂起wait
1.线程方法1.1joinjoin方法:合并线程,多个线程合并为一个线程演示代码: Thread t1 = new Thread(new Processer_01()); Thread t2 = new Thread(new Processer_01()); t1.setName("t1"); t2.setName("t2"); t1.start(); t2.start(); try{ //执行到join的时...
2021-10-29 20:21:54
145
原创 Java 学习 day23:递归复制文件,多线程
1.递归复制文件思路:1.1.文件复制 本质就是文件的输入和输出 1.1完成文件输入,读取文件 1.2完成文件输出 1.3整合输入和输出完成复制代码实现: try ( FileInputStream fis = new FileInputStream("D:/a.txt"); FileOutputStream fos = new FileOutputStream("D:/a.txt",tr...
2021-10-28 19:57:15
534
原创 Java 学习 day22: IO-转换流,打印流,对象流,文件操作
1.转换流1.1 什么是转换流将字节流(输出或输入)转换为字符流InputStreamReader 输入转换流OutputStreamWriter 输出转换流1.2 InputStreamReader的使用方式 try ( // 字节输入 FileInputStream fis = new FileInputStream("D:/a.java"); // 转换为字符输入 InputStre...
2021-10-27 22:10:00
98
原创 Java 学习 day21: IO流,字节(字符)输出输入流,字节(字符)缓冲输出输入流
1.IO1.1 什么是IO流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或者抽象,那数据在两个设备之间的传输成为流,流的本质就是数据传输,根据数据传输的特性将流抽象为各种类,方便更直观的进行数据操作I就是input 输入:从硬盘中读取输入到内存中O就是outpui 输出,从内存中读取输出到硬盘中1.2 分类按照处理数据类型的不同可以分为: 字节流和字符流按照数据传入的方向不同可以分为: 输入流和输出流按照功...
2021-10-26 21:16:57
202
原创 Java 学习 day19: set,比较器,范型
1.TreeSet1.1 什么是setset特点: 无序,不可重复,添加顺序和取出顺序不一定一致TreeSet: 存进去的元素,会按照某个规则进行排序数字:从小到大字符串:每一位ASCII日期:自然日期1.2 使用方式 public static void main(String[] args) { //数字 升序排序 Set set = new TreeSet() ; set.add(10) ;...
2021-10-24 16:29:17
242
原创 Java 学习 day18: 集合,迭代器,List
1.集合 Collection1.1 什么是集合?Java中的集合是指计算机程序存储和操作不固定元素的一组数据,所有的Java集合类都位于java.util包中,使用的时候需要导包集合和数组都是存储多个元素的方式,那么他们的区别在哪呢?1.集合中只能存放引用数据类型,如果想存储基本数据类型,需要装箱2.集合的长度是不固定的,而数组是固定的1.2 继承体系1.3 常用方法1.4 使用方式...
2021-10-21 20:59:56
123
原创 Java 学习 day16: 包装类 integer ,System,Date,Calendar,Math
1.包装类操作基本数据类型的时候,java不是面向对象的,但是包装类可以让我们将基本数据类型转换为对象来方便我们的使用,集合中就经常这样操作包装类的基本使用:因为Object是所有类的祖宗,那么包装类都是他的子类,所以这里使用多态即可完成需求,此时形参为父类变量,而传入的实参根据情况传入子类对象即可2.Integer3.1 基本使用Integer是int类型的包装类,他可以将整形变量进行一些操作和使用1.获取int类型的最大值和最小值2....
2021-10-19 17:32:19
96
原创 Java 学习 day15: 常用API----String
1.String1.1 是什么String是java.lang.String,因为java.lang是java核心类,所以不需要导包String简单来说就是字符串类,底层是char数组,所以String的特性几乎和数组一致1.字符串一旦创建,该字符串对象不能改变2.为了提高字符串的访问效率,java虚拟机使用了一种缓存技术,可以对字符串操作更加简单方便,更加高效(字符串常量池)3.字符串会被保存在静态区中的常量池中,可以复用性增强当我们用到一个重复的字符串的时候,会...
2021-10-18 18:09:26
276
原创 Java 学习 day13: Object,类关系,内部类,设计模式
1.Object1.1是什么Object是java提供的根类,所有类都直接或者间接的继承Object由于java中继承是可以传递的,所以Object的所有方法是所有类都用的1.2 Equals设计目的: 比较两个对象是否相等使用 = = 比较基本数据类型,可以比较值的大小但是比较引用类型,只能比较内存地址Object中的equals方法默认是比较两个引用类型变量的地址的,因为人家又不知道你要比较啥,你想比较啥,你就覆写eq...
2021-10-15 18:52:07
85
原创 Java 学习 day11:多态,,抽象,接口
1.多态1.1相关知识软件设计六大原则: 1.单一职责原则 2.里式替换原则 3.依赖倒置原则 4.接口隔离原则 5.迪米特法则 6.开闭原则1.2 多态是什么多态:父类引用指向子类对象 父类引用:使用父类声明的引用型变量 指向:就是通过这个变量可以找到谁 子类对象:使用子类创建的对象使用父类的变量...
2021-10-14 19:16:16
74
原创 Java 学习 day11:封装,集成,final,super,方法重写
1.封装封装:即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为相结合,形成一个有机的整体.也就是将数据与操作数据的源代码进行有机的结合,形成"类",其中数据和函数都是类的成员1.1packagepackage:软件包机制 限制的是编译之后的class文件的保存目录,和源文件无关 eclipse中,源文件也必须在这个目录中,这是eclipse的问题,和package无关 而java中的pa...
2021-10-13 18:59:14
152
原创 Java 学习 day10:变量作用域,This用法,Static用法
1.回顾及变量作用域1.1实例化和使用对象创建时的实例化步骤: 1.把类加载到静态区 2.new过程会再堆内存创建内存空间 3.调用构造方法,对该空间进行初始化操作,把成员属性复制到该空间中 4.构造方法执行完弹栈,最后把堆内存对象的地址,赋值给变量o1.2 javaBeanJavaBean: JavaBean是公共Java类,但是为了编辑工具识别,需要满足至少三个条件:有一个public默认构造器(例如...
2021-10-12 20:17:14
139
原创 Java 学习 day8:面向对象设计思想,对象,构造方法,封装
1.面向对象1.1面向对象和面向过程面向过程:侧重分步骤面向对象:侧重分模块面向对象优点:可扩展性,可维护性,耦合度降低高内聚,低耦合1.2 构造器构造方法用来创建并初始化对象如果一个类中没有编写构造方法,则默认有一个公共的无参构造但是如果我们创建了一个构造方法,那么就没有默认的无参构造了语法:权限修饰符 方法名 (参数) (方法体) 并且方法名必须和类名一致也可以根据需求编写多个构造方法,就是构造方法重载1.3 类...
2021-10-11 19:00:38
83
原创 Java 学习 day7: 二分法查找
Day07 二分法技术栈程序基础数据类型本质 : 规定占用内存空间 的大小分类基本数据类型数值型整型Byte,short,int,long浮点型Float,double字符型Char布尔型Boolean引用数据类型类,数组,接口变量命名规则强制 : 大小写字母,美元符号$,下划线_,数字,且数字不能开头,不能使用关键字和保留字非强制 : 望文知义,驼峰命名法介绍 : 就是存储数据的,方便对数据的操作和复用声明 : 数.
2021-10-08 20:13:21
264
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人