自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mapper三种形式、工具类以及简单的增删改查

Mapper三种形式第一种 : sqlSession执行对应语句,就是我上篇文章测试的那种,所以下面就从第二种开始注解.第二种 : 使用注解(基本不用)第三种 : 利用接口代理(常用)第二种 : 使用注解(基本不用)1 注解方式不需要User.xml2 需要再对应的接口上添加对应的注解语句3 mybatis-config.xml中添加映射配置调用第三种 : 利用接口代理(常用)1 需要User.xml2 接口中不需要添加对应的注解3 mybatis-config.xml中添加映射

2020-09-28 12:29:15 795

原创 API使用和环境搭建

1 导包 mybatis-3.3.0.jar mysql-connector-java-5.1.38-bin.jar log4j-1.2.17.jar ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200928115754602.png#pic_center)2 创建MyBatis配置文件在src下创建 mybatis-config.xml<?xml version="1.0" encoding="UTF-8" ?> .

2020-09-28 12:07:30 784

原创 MyBatis入门概述 ——恋天小结

MyBatisMyBatis 是一款优秀的持久层框架,它支持 SQL、存储过程以及高级映射。如 JDBC中 我们需要有繁琐的流程,和设置参数,并且获取结果集的时候也需要循环遍历,并且手动封装到实体类对象中MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用 简单的 XML 或注解来配置和映射 接口和 Java 的 实体类MyBatis 有两种用法,一个是注解,一个是XML,各有千秋 注解 : 使用注解的话,方便一些,不需要有XML配置文件

2020-09-28 11:50:39 161

原创 JavaScript_判断数组方法 以及数组常用方法和清空数组 ——恋天小结

检测一个对象是否是数组instanceofArray.isArray() HTML5中提供的方法,挂载在window对象上,有兼容性问题toString()/valueOf()toString() 把数组转换成字符串,逗号分隔每一项valueOf() 返回数组对象本身数组常用方法栈操作(先进后出)push()pop() //取出数组中的最后一项,修改length属性队列操作(先进先出)shift() //取出数组中的第一个元素,修改length属性unshift

2020-08-27 20:55:23 193

原创 JavaScript_Array对象、Filter和Map和ForEach ——恋天小结

Array对象创建数组对象的两种方式1.字面量方式2.new Array()Filter和Map和ForEachForEach是遍历Filterfilter方法是对数组中的元素进行过滤,也就是说不能修改原数组中的数据,只能读取原数组中的数据,callback需要返回布尔值为true的时候,对应的元素留下来,为false的时候,对应的元素过滤掉filter方法的使用:对应的结果:会发现数据不会发生改变的。也就是说:filter方法是对原数组的元素进行过滤,返回到一个新的数组中去

2020-08-27 19:40:40 199

原创 JavaScript_Date对象 ——恋天小结

var dt; //获取当前系统时间 dt = new Date(); console.log(dt); //传入时间 dt = new Date("2017-09-12"); console.log(dt); //毫秒数 dt = Date.now(); console.log(dt); dt = new Date();..

2020-08-19 21:43:31 82

转载 JavaScript_Math对象 ——恋天小结

//圆周率 var pi = Math.PI; console.log(pi); //0-1之间生成随机数 var random = Math.random(); console.log(random); //向下取整 console.log(Math.floor(2.9)); //向上取整 console.log(Math.ceil(2.1));

2020-08-19 21:38:23 76

原创 JavaScript_遍历对象、删除属性 ——恋天小结

遍历对象的属性通过for…in语法可以遍历一个对象 var obj = { name:'张三', age:18, name:'李四', say:function(){ console.log('你好吗?'); } }for(var x in obj){ //x是string类型

2020-08-19 21:35:06 737

原创 JavaScript_对象及创建方式 ——恋天小结

对象为什么要有对象function printPerson(name, age, sex....) {}// 函数的参数如果特别多的话,可以使用对象简化function printPerson(person) { console.log(person.name); ……}什么是对象现实生活中:万物皆对象,对象是一个具体的事物,一个具体的事物就会有行为和特征。举例: 一部车,一个手机车是一类事物,门口停的那辆车才是对象特征:红色、四个轮子行为:驾驶、刹车JavaScript

2020-08-19 21:24:54 82

原创 JavaScript_预解析及作用域 ——恋天小结

预解析JavaScript引擎在对JavaScript代码进行解释执行之前,会对JavaScript代码进行预解析,在预解析阶段,会将以关键字var和function开头的语句块提前进行处理。当变量和函数的声明处在作用域比较靠后的位置的时候,变量和函数的声明会被提升到作用域的开头函数提升func();function func(){ 函数体;};由于JavaScript的预解析机制,上面的代码就等效于:function func(){ 函数体;};func();变量提升al

2020-08-18 20:40:39 99

原创 JavaScript_函数 ——恋天小结

函数函数的命名1.由字母、数字、下划线、$符号组成,不能以数字开头2.不能是关键字和保留字,例如:for,while,this, name3.区分大小写规范:1.变量名必须有意义2.遵守驼峰命名法3.建议不要用$作为变量名函数的覆盖问题函数重复定义会覆盖前一个arguments的使用JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性。也就是说所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有的实参。ar

2020-08-18 20:14:45 124

原创 JavaScript_流程控制(if、switch、while、do while) ——恋天小结

流程控制介绍程序的三种基本结构:顺序结构从上到下执行的代码就是顺序结构(程序默认就是由上到下顺序执行的)分支结构根据不同的情况,执行对应代码循环结构循环结构:重复做一件事情分支结构###if语句if (/* 条件表达式 */) { // 执行语句}​if (/* 条件表达式 */){ // 成立执行语句} else { // 否则执行语句}​if (/* 条件1 */){ // 成立执行语句} else if (/* 条件2 */){ // 成立执行语句} e

2020-08-17 21:31:19 159

原创 JavaScript变量、数据类型、运算符 ——恋天小结

JavaScript代码写法1.在html的文件中,script的标签中写js代码2.js代码可以在html的标签中写3.在js文件中可以写js代码,但是需要在html页面中引入script的标签中的src=“js的路径”4.还可以在控制台直接书写js代码注释单行注释// 这是一个变量多行注释/*var age = 18;var name = 'zs';console.log(name, age);*/JavaScript 变量什么是变量变量是计算机内存中存储数据的标识符

2020-08-17 17:37:59 187

原创 CSS相对定位、绝对定位、固定定位 ——恋天小结

相对定位relative相对定位是将元素相对于它在标准流中的位置进行定位,当position属性的取值为relative时,可以将元素定位于相对位置。对元素设置相对定位后,可以通过边偏移属性改变元素的位置,但是它在文档流中的位置仍然保留。如下图所示,即是一个相对定位的效果展示:注意:相对定位最重要的一点是,它可以通过边偏移移动位置,但是原来的所占的位置,继续占有。其次,每次移动的位置,是以自己的左上角为基点移动(相对于自己来移动位置)就是说,相对定位的盒子仍在标准流中,它后面的盒子仍以标准

2020-08-15 13:11:33 270

原创 CSS定位概念和静态定位 ——恋天小结

定位(position)元素的定位属性元素的定位属性主要包括定位模式和边偏移两部分。边偏移边偏移属性 描述top 顶端偏移量,定义元素相对于其父元素上边线的距离bottom 底部偏移量,定义元素相对于其父元素下边线的距离left 左侧偏移量,定义元素相对于其父元素左边线的距离right 右侧偏移量,定义元素相对于其父元素右边线的距离也就说,以后定位要和这边偏移搭配使用了, 比如 top: 100px; left: 30px; 等等定位模式(定位的分类)

2020-08-15 12:23:31 208

原创 CSS浮动以及清除浮动 ——恋天小结

浮动(float)可以让任何盒子可以一行排列,因此我们就慢慢的偏离主题,用浮动的特性来布局了什么是浮动?元素的浮动是指设置了浮动属性的元素会脱离标准普通流的控制,移动到其父元素中指定位置的过程。在CSS中,通过float属性来定义浮动,其基本语法格式如下:选择器{float:属性值;}float: left/right/none;属性值 描述left 元素向左浮动right 元素向右浮动none 元素不浮动(默认值)浮动详细内幕特性浮动脱离标准流,不占位置,会影响标准流。浮动只有

2020-08-15 12:18:17 156

原创 CSS盒子模型 ——恋天小结

行高的测量行高我们利用最多的一个地方是:可以让一行文本在盒子中垂直居中对齐。做法就是:文字的行高等于盒子的高度。这里情况些许复杂,开始学习,我们可以先从简单地方入手学会。总结:上距离和下距离总是相等的,因此文字看上去是垂直居中的。如果行高等于height高度,文字会垂直居中如果行高大于高度,文字会偏下如果行高小于高度,文字会偏上CSS三大特性层叠 继承 优先级 是我们学习CSS 必须掌握的三个特性。CSS层叠性所谓层叠性是指多种CSS样式的叠加。是浏览器处理冲突的一个能力,如果

2020-08-15 12:09:16 262

原创 Java面向对象特性_继承 ——恋天小结

继承的概念继承是从已有的类中派生出新的类,新的类能吸收已有类的属性和行为,并能扩展新的属性和行为。Java继承特点1)Java是单继承的,不支持多继承。这样使得Java的继承关系很简单,一个类只能有一个父类,易于管理程序。同时一个类可以实现多个接口,从而克服单继承的缺点。java 中只支持单继承,并且是链式继承(爹不能再继承儿子)2)继承关系是传递的3)private修饰的成员变量或方法是不能被继承的继承目的提高代码的效率,避免代码重写语法格式【修饰符】 class 子类 exten

2020-08-15 12:06:02 84

原创 Java_Integer(包装类) ——恋天小结

包装类byte Byteshort Shortint Integerlong Longfloat Floatdouble Doubleboolean Booleanchar Character八种包装类 都在java.lang 下,意味着 使用不需要导入另外 都覆写了 toString 和 equals方法等八种包装类操作几乎一致,所以我们以Integer为例public static void main(String[] args) { System.out.println("

2020-08-15 12:05:32 172

原创 Java_Enumeration(枚举) ——恋天小结

枚举Enumeration枚举类型,简单来说,可以看做是常量的集合什么时候用枚举当我们需要一系列有限的值的时候,并且用的比较多,可以使用枚举使用枚举有什么好处写枚举的话,更容易发现错误,在编译器会对类型进行检查,从而减少错误可以替代常量定义,自动实现类型检查,便于维护、编程,减少出错概率由class 变为 enum介绍枚举类型是Java 5新增的特性,它是一种新的类型枚举类型的定义中列举了该类型所有可能值使用java.lang.Enum类型来定义枚举语法格式[修饰符] enum

2020-08-15 12:05:14 166 1

原创 CSS选择器(选择符) ——恋天小结

基础选择器要想将CSS样式应用于特定的HTML元素,首先需要找到该目标元素。在CSS中,执行这一任务的样式规则部分被称为选择器(选择符)。标签选择器(元素选择器)标签选择器是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式。其基本语法格式如下:标签名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; } 或者元素名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }特点:标签选择器能快速为页面中同类型的标签统一样式,同时这也是他

2020-08-13 21:30:46 381

原创 CSS外观属性 ——恋天小结

color:文本颜色color属性用于定义文本的颜色,其取值方式有如下3种:1.预定义的颜色值,如red,green,blue等。2.十六进制,如#FF0000,#FF6600,#29D794等。实际工作中,十六进制是最常用的定义颜色的方式。3.RGB代码,如红色可以表示为rgb(255,0,0)或rgb(100%,0%,0%)。需要注意的是,如果使用RGB代码的百分比颜色值,取值为0时也不能省略百分号,必须写为0%。line-height:行间距line-height属性用于设置行间距,就是

2020-08-13 21:30:35 137

原创 CSS字体样式属性 ——恋天小结

font-size:字号大小font-size属性用于设置字号,该属性的值可以使用相对长度单位,也可以使用绝对长度单位。其中,相对长度单位比较常用,推荐使用像素单位px,绝对长度单位使用较少。具体如下:font-family:字体font-family属性用于设置字体。网页中常用的字体有宋体、微软雅黑、黑体等,例如将网页中所有段落文本的字体设置为微软雅黑,可以使用如下CSS样式代码:p{ font-family:"微软雅黑";}可以同时指定多个字体,中间以逗号隔开,表示如果浏览器不支持第一个字

2020-08-13 21:30:20 271

原创 CSS初识以及样式表——恋天小结

CSS初识CSS(Cascading Style Sheets) 主要用于美化样式。CSS通常称为CSS样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局等外观显示样式。CSS以HTML为基础,提供了丰富的功能,如字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式。样式表CSS可以写到那个位置? 是不是一定写到html文件里面呢?内部样式表内嵌式是将CSS代码集中写在HT

2020-08-13 21:30:08 112

原创 HTML_表格和表单 ——恋天小结

1. 表格标签(重点)表格是较为常用的一种标签,但不是用来布局,常用来处理、显示表格式数据。创建表格在HTML网页中,要想创建表格,就需要使用表格相关的标签。创建表格的基本语法格式如下:<table> <tr> <td>单元格内的文字</td> ... </tr> ...</table>在上面的语法中包含三对HTML标签,分别为 table、tr、td,他们是创建表格的基本标签,缺一不可,下面对

2020-08-13 21:29:01 368

原创 Java_Map转List ——恋天小结

Map转为list 并且 以 value进行排序public static void main(String[] args) { Map<String,Integer> map = new HashMap<String,Integer>(); map.put("a", 1); map.put("b", 2); map.put("c", 1); map.put("d", 12); //因为map中存储的是entry,所以想要把map转换为list,那么l

2020-08-13 21:28:30 284

原创 Java_泛型 ——恋天小结

泛型类型检查编译过程中,检查数据类型是否匹配定义集合实际上和数组一样,只能存储统一数据类型,只不过这个类型是Object,所有元素都会发生向上转型,所以导致什么都能放泛型不能使用基本数据类型,只能使用引用数据类型转型为多态之后,子类的属性就访问不到了,想要使用,必须向下转型,很麻烦优缺点优点 : 统一类型,减少类型转换缺点 : 只能存储单一类型的元素public class Collection_18_Generic_01 { public static void main(Strin

2020-08-13 21:28:15 240

原创 Java_HashMap和TreeMap ——恋天小结

HashSetHashMapMap无序可重复 value可重复 , key不可重复Map和Collection集合不一样,但是操作都是类似的put(key,value) 添加数据clear()size()isEmpty();get(key) 根据key 获取value值values() : 获取所有的value,以集合形式返回containsKey(key)containsValue(value)keySet() 获取所有key,以set形式返回entrySet() 获取键值对,

2020-08-13 21:27:58 65

原创 Java_HashSet ——恋天小结

HashSetHashSet哈希表又叫散列表,用来保存键值对(key,value), 就是一个数组中,每个元素都是一个单向链表根据添加元素的hash值,通过hash算法,就能够确定要把元素添加到哪个链表中hash算法一种安全加密算法,把不定长的值,更改为定长的值,不能保证其值的唯一性java中指的是 hashCode()函数算法包括1 直接寻址法2 数字分析法3 平方取中法4 随机数5 除数取余法目标给每个对象生成一个唯一的标识符目的为了查询快,hash值是一个固定的值,整

2020-08-12 20:09:19 87

原创 Java_Comparable 和 Comparator ——恋天小结

想要让TreeSet集合中元素进行排序 有三种方式1要添加的元素对应的类实现java.lang.Comparable接口,并实现compareTo方法2 让SortedSet集合做到排序还有一种方法,java.util.Comparator比较器类3 写一个匿名内部类 ,还是 java.util.Comparator默认的一些类型中,都实现了比较器,比如Date,String,Integer等等所以 我们自定义类一个数据类型的时候(类),当需要对这个类对象进行排序,就需要我们自定义比较器,用于比较

2020-08-12 20:09:06 60

原创 Java_set_TreeSet ——恋天小结

set特点1. Set是一个无序集合,既存入集合的顺序和取出的顺序不一致2. Set集合中元素不重复TreeSetTreeSet是SortedSet的唯一实现类,保存的元素可以按照某种规则自动排序数字:从小到大日期:自然日期(昨天,今天,明天)字符串:每一位的ASCII码值public static void main(String[] args) throws ParseException { SortedSet ss = new TreeSet(); ss.add(1);

2020-08-12 20:08:51 72

原创 Java_List_LinkedLIst ——恋天小结

链表链表中保存节点,节点中有三个元素,自身对象(添加的元素),下一个节点的地址,上一个节点的地址LinkedList就是基于双向链表实现的链表是没有下标的,所以查询慢, 当然我们可以通过 get方法 使用下标找到数据但是get方法中,也是通过循环,从首节点一步步向后找的,不像ArrayList,底层是数组,有下标,可以直接数组[下标],可以参考源码public static void main(String[] args) { LinkedList li = new LinkedList();

2020-08-12 20:08:32 199

原创 Java_List_ArrayList ——恋天小结

ListList元素的特点 有序可重复,存入顺序和取出顺序一致,并且可以有多个重复元素ArrayList : 底层是数组 , 查询快,增删慢LinkedList : 底层是双向链表 , 增删快,查询慢ArrayList默认初始化容量是10 , 扩大容量是原始容量的1.5倍veator : 默认容量是10,扩大容量是2倍ArrayLList是veator的升级版,所以vector已经废弃vector是线程安全,执行效率低ArrayList是非线程安全,执行效率高public static

2020-08-12 20:08:19 57

原创 Java_boolean contains ——恋天小结

删除和判断是否包含boolean contains(Object o)判断是否包含某个元素,底层会自动调用该对象的equalsc.contains(m1)m1调用equals方法,和集合中的元素进行比较,boolean remove(Object o)删除集合中某个元素 也会调用 equals方法进行比较所以 我们再使用 remove和contains的时候,注意覆写equals方法,因为删除和判断是否包含是需要通过equals方法定位元素的但是 Object中的equals方法默认比较内存

2020-08-12 20:08:08 1066

原创 Java_Interator迭代器 ——恋天小结

Interator 迭代器Iterator it = 集合对象.iterator();调用集合对象自己的iterator() 就能创建这个集合的迭代器迭代器中有三个方法1 boolean hasNext() : 判断当前游标的下一位是否还有元素,有就返回true,没有就返回false2 E next() : 将迭代器的游标向下移动一位,并返回这个数据3 remove() : 删除当前游标指向的元素原则上,上面三个方法必须按照这个顺序调用注意迭代器一旦创建,集合中不能添加或删除元素,如果添加

2020-08-12 20:07:50 159

原创 Java集合介绍 ——恋天小结

Java集合是使程序能够存储和操纵元素不固定的一组数据。 所有Java集合类都位于java.uti包中。Java的集合类主要由两个接口派生而出:Collection和Map。Collection和Map是Java结合框架的根接口,这两个接口又包含了一些子接口或实现类Collection类是最大的,也就意味着,Collection中定义的方法规定是List和Set都有的集合中 只能存储单个元素,并且只能保存引用数据类型,保存Object能放Object 就意味着什么都能放,因为多态Collectio

2020-08-12 20:07:37 58

原创 HTML初识(标签)——恋天小结

1.HTML初识<h1> 我是一个大标题 </h1>HTML指的是超文本标记语言 (Hyper Text Markup Language)HTML不是一种编程语言,而是一种标记语言 (markup language)标记语言是一套标记标签 (markup tag)总结: HTML 作用就是用标记标签来描述网页,把网页内容在浏览器中展示出来。HTML骨架格式<HTML> <head> <title>&l

2020-08-12 20:07:19 274

原创 HTML基础(标签之前) ——恋天小结

HTML基础1. 开发工具:推荐使用谷歌我们主要用的开发工具有 chrome、vscode、photoshop。浏览器(显示)浏览器是网页显示、运行的平台,常用的浏览器有IE、火狐(Firefox)、谷歌(Chrome)、Safari和Opera等。我们平时称为五大浏览器。sublime(书写):现在一般使用vsCode 的居多2. 常见浏览器内核介绍浏览器内核又可以分成两部分:渲染引擎(layout engineer 或者 Rendering Engine)和 JS 引擎。渲染引擎它负

2020-08-12 20:06:49 209

原创 Java_Date ——恋天小结

public static void main(String[] args) { //时间原点到当前时间毫秒数 long now = System.currentTimeMillis(); System.out.println(now/1000/60/60/24/365); }public static void main(String[] args) { //获取当前系统的时间 Date date = new Date(); System.out.println(date)

2020-08-10 08:34:12 54

原创 Java_StringBuffer和StringBuilder ——恋天小结

StringBuffer和StringBuilder1 StringBuffer和StringBuilder是什么?是可变的字符串缓冲区2 原理预先在内存中申请一块空间,用来容纳字符序列(字符数组) 如果预留空间不够的话,会自动扩容3 String和 StringBuffer以及StringBuilder最大的区别String是不可变的字符序列,存储在字符串常量池中StringBuilder和StringBuffer是可变的,底层也是char数组,并且可以自动扩容4 StringBuff

2020-08-10 08:33:57 59

空空如也

空空如也

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

TA关注的人

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