自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MyBatis 动态 SQL

MyBatis的强大特性之一便是它的动态SQL。使用过JDBC或其他类似框架的人都会知道, 根据不同条件拼接SQL语句时不仅不能忘了必要的空格,还要注意省略掉列名列表最后的逗号,处理方式麻烦且凌乱。MyBatis的动态SQL则能让我们摆脱这种痛苦。 现在MyBatis 釆用了功能强大的动态SQL, 以下是MyBatis的动态SQL在XML中支持的几种标签。if choose...

2020-02-11 19:16:16 119

原创 mybatis 多表关联查询的方式及缺点

mybatis有两种方式和数据库进行交互,一种是基于statement id的方式(映射需要提供get/set方法),另一种是基于mapper接口的方式(最后mapper接口也是调用Statement id方式,但是其映射只需要属性名和数据库字段名匹配即可)。我这里以查询作者和博客的例子为例:1.创建实体类:package com.baidu.mybatis207.model;p...

2020-02-08 18:48:10 1083

原创 mybatis初览-环境搭建和基本操作

1.什么是 MyBatis ?业务逻辑对于我们而言己经很清楚了,但数据逻辑包括哪些呢?最直接的就是一个个对应 于数据库中每张数据表的实体对象,它被称为数据访问对象,即 Data Access Object ,简称 DAO 。很明显 ,这 层数据直接和底层数据库打交道,我们将它们从业务逻辑中分离出来,并加以封装。也就是说,没必要为每 DAO 对象初始化的过程去编写大量的代 码,这些代码应...

2020-02-05 12:46:00 139

原创 缓存击穿 、缓存穿透 、缓存雪崩

1前言数据库的发展中为了应对大量数据的场景,产生了NoSQL技术。而redis技术就是NoSQL技术中的一种,但是引入redis又有可能出现缓存穿透,缓存击穿,缓存雪崩等问题。2 缓存穿透2.1 什么是缓存穿透正常情况下,我们去查询数据都是存在。那么请求去查询一条压根儿数据库中根本就不存在的数据,也就是缓存和数据库都查询不到这条数据,但是请求每次都会打到数据库上面去。这种查询不存...

2019-12-13 07:49:33 121

原创 数据库学习(1)

一、数据库的基本概念1.数据库(database):是长期储存在计算机内、有组织的、可共享的大量数据的集合。2.数据,是数据库中存储的基本对象,是描述事物的符号记录。3.数据库管理系统:是位于用户与操作系统之间的一层数据管理软件,用于科学地组织、存储和管理数据、高效地获取和维护数据。4.数据库的分类:二、SQL1.什么是SQL?SQL指的是结构化查询语言,是一...

2019-11-21 09:59:30 98

原创 JQuery——聚顶效果

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{ margin: 0; padding: 0; } .nav{ he...

2019-11-10 10:15:49 79

原创 JQuery——回到顶部效果

JQuery——回到顶部效果,实现下拉时才出现<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> /* 回到顶部的div样式 */ #goTop{...

2019-11-09 20:07:51 113

原创 JavaScript——DOM(1)

DOM查找和操作

2019-11-09 14:11:54 104

原创 JavaScript——BOM

一、BOM编程BOM是BrowserObjectModel浏览器对象模型的简称,它可以用来操作浏览器二、BOM对象1、window对象的常用方法方法 描述 alert() 显示带有一段消息和一个确认按钮的警告框。 atob() 解码一个 base-64 编码的字符串。 btoa() 创建一个 base-64 编码...

2019-11-09 10:41:25 100

原创 JavaScript(2)

JavaScript的全局属性属性 描述 Infinity 代表正的无穷大的数值。 NaN 指示某个值是不是数字值。 undefined 指示未定义的值。 JavaScript的全局函数函数 描述 decodeURI() 解码某个编码的 URI。 decodeURIComponent() 解码一个编码的 URI 组件。 ...

2019-11-06 19:32:15 116

原创 JavaScript(1)

一、JavaScript基本知识JavaScript是一种网页编程技术,经常用于创建动态交互网页 JavaScript是一种基于对象和事件驱动的解释性脚本语言,类似C语言和Java的语法 事先不编译;逐行执行;无需进行严格的变量声明;内置大量现成对象,编写少量程序可以完成目标 不同的浏览器甚至同一浏览器的不同版本对JavaScript的支持程度都不一样 目前主流版本为ES6二、Jav...

2019-11-06 17:12:19 109

原创 WEB——CSS(1)

一、css基本知识1.1 初识csscss(cascading style sheet)层叠样式表 主要目的是用来装扮网页的 版本主要有css2或者css31.2 使用css的原因其内容和表现分离,易于维护和改版 能够提高页面浏览速度 符合W3C标准二、css使用2.1 如何使用?CSS样式表的使用方式主要有以下三种:标签样式:把CSS样式表写在HTML对...

2019-10-25 14:56:53 88

原创 Web初识

一、什么是 HTML?HTML 是用来描述网页的一种语言。HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 标记语言是一套标记标签 HTML 使用标记标签来描述网页二、HTML 标签HTML 标签是由尖括号包围的关键词,比如 <html> HTML 标签通常是成对出现的 标签对...

2019-10-16 21:08:35 133

原创 数据结构——线性表

数据结构——线性表因为动态数组是顺序存储结构的具体实现,接下来要学习的线性表、栈结构、还是队列,它都是基于动态数组实现的。因此,我们先了解下动态数组。一、动态数组在我们使用Java内置数组时,我们知道它有以下的特点:数组的长度一旦确定则不可更改 数组只能存储同一类型的数据 数组中每个存储空间大小一致且地址连续 数组提供角标的访问元素而当我们继续学习时,可能会遇到容量不够...

2019-09-20 23:01:16 106

原创 数据结构——初步认识

数据结构——初步认识前面我学习了,Java基础,虽然还有很多没理解深刻,但学习就是这样,学的多了也就明白了,因此我现在开始学习数据结构。首先,我先知道数据结构的概念:数据相互存在的一种和多种特定关系的元素集合。数据结构...

2019-09-20 22:07:42 148

原创 Java18——异常

Java18——异常 重要提醒:异常就是一种对象,表示阻止正常进行程序执行的错误或者情况。异常是计算机程序在没有按照人的预期运行时,出现的问题。没有人愿意自己写的程序会出现问题,但我们在真实的运行程序时,总会遇到各种各样的问题,我们无法保证自己的程序就是完美无缺的,因此,我们需要一个强大的模块来解决我们在遇到错误时,可以提醒我们问题出现一些信息,帮助程序员来判断和解决问题。...

2019-08-12 00:16:31 892

原创 Java18——多态、抽象类、接口

Java18——多态、抽象类、接口1. 多态 要点提示:多态意味着父类的变量可以指向子类对象。多态是面向对象程序设计中代码重用的一个重要机制,它代表当同一个操作作用在不同对象时,会有不同的语义,从而产生不同的结果,会有不同的语义,从而产生不同的结果,例如:符号“+”在算数运算中“3+4”中,是用来实现整数相加,而“3”+“4”,却实现了字符串的连接。在Java中,多...

2019-08-11 19:24:24 204

原创 Java17——用数组和链表实现栈

Java17——用数组和链表实现栈栈的基本知识栈(stack) 是一种以 “后进先出” 的方式存放数据的数据结构,如图所示 。而栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆作用,对栈的插入与删除操作中,不需要改变...

2019-08-11 15:15:00 156

原创 JavaDay16——继承

# JavaDay16——继承继承、多态都是是面向对象的三大特征之一。16.1 继承的作用及特点提示:java中的继承具有单继承的特点,每个子类只有一个直接父类。当我们在解决实际问题时,我们会遇到这样的问题,学生和工人,他们都是人。他们都具有一些相同的属性,比如都有姓名、年龄、性别,但他们又有不同的方面,比如学生的主要行为是学习,而工人的主要行为是工作;如果分别去写这两个,必...

2019-08-11 11:40:42 118

原创 JavaDay15——面向对象思想练习(2)

JavaDay15——面向对象思想练习(2)1.Class27题目:解题思路:本题如果用面向对象思想去做,则将其划分为两个部分,第一个是获取输入的密码。第二个部分是判断密码的合法性。这部分需要有三个方法,分别来判断字符数量的合法性,字符类型的合法性,和数字字符量的合法性。代码示例:import java.util.Scanner;class Class27{ ...

2019-08-06 08:48:11 141

原创 初学JavaDay15——面向对象

初学JavaDay15——面向对象15.1 类的抽象和封装类的抽象是指将类的实现和类的使用分离开,实现的细节被封装并且对用户隐藏,这被称为类的封装。类抽象和类封装是一个问题的两个方面。比如:当我们建立一个计算机系统时,一个计算机有很多组件——CPU、内存、硬盘、主板等,这其中的每一个组件都可以被看做一个有属性和方法的对象。而如果要想计算机工作,只需要知道每个组件是怎么用就行了。这...

2019-08-05 16:19:18 153

原创 初学JavaDay14——对象与类习题(1)

初学JavaDay14——对象与类习题(1)1.题目:求圆的面积、周长以及两个圆的的距离;解题思路:这里最重要的是理解面向对象的解题思路,这个应该程序包括两个类。其中第一个类Dome02 是主类。它的唯一目的就是测试第二个类 Circle。使用这样的类的程序通常称为该类的客户。运行这个程序时,Java 运行系统会调用这个主类的 main 方法。代码示例://主类cl...

2019-08-05 14:40:44 323

原创 初学JavaDay13——对象与类

初学JavaDay13——对象与类1. 面向对象和面向过程两个都是指的都是一种思考方式(类似自己做和找别人做)两种编程思想的比较:面向过程:就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向对象:是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。...

2019-08-05 11:53:46 112

原创 初学JavaDay11——String类型

初学JavaDay11——String类型String类型的基本知识 String类型是为了表示一串字符。它和System、Scanner一样是Java库中的预定义类。但它不是基本类型,而是引用类型。String创建 有两种方式,一种是 String s1 ="a" 另一种是 String s2 =new String(“s2”)...

2019-08-01 23:37:53 149

原创 初学JavaDay10——Leetcode练习(2)

初学JavaDay10——Leetcode练习(2)1.LC905题目: 给定一个非负整数数组 A,返回一个数组,在该数组中,A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案。解题思路: 解答本题可以采用插入排序的算法,将偶数排在前面,奇数排在后面。 代码示例:class Solution {...

2019-08-01 19:01:42 122

原创 初学JavaDay09——二维数组的练习

初学JavaDay09——二维数组的练习一、八皇后问题问题简介:指的是在一个8*8的棋盘里,每一个格子都可以放皇后这个棋子,但是有一个规则:同行 同列 同斜线(左,右) 上只能存在一个皇后。问:棋盘存在8个皇后 有几种可能?解题思路:我们采用一种逐步对比的思路,一步一步地往前走,每走一步都更靠近目标结果一些,直到遇到不合适的,我们才考虑往回走。然后再继续尝试向前。通过这样的一层一层的前...

2019-08-01 16:09:12 162

原创 初学JavaDay09——二维数组

初学JavaDay09——二位数组1.二位数组的基本知识1.1声明而二位数组并创建二维数组声明二维数组的语法数据类型 [ ][ ] 数组名;创建二维数组:int[][] matrix=new int[5][5];其中,二维数组有两个下标,一个表示行,一个表示列。默认值都为0。如图:将某个值赋给特定的位置例如将7赋给行为2,列为1的特定元素matrix[2][1...

2019-08-01 13:47:37 411

原创 初学JavaDay07——汉诺塔(递归的练习)

汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。1.汉诺塔的图解1)初始状态2)最终状态2.解题的思路解决这个问题,最主要就是...

2019-07-28 15:22:27 134

原创 初学JavaDay08——LeetCode练习(数组题)

初学JavaDay08——LeetCode练习1.给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/plus-one著作权归领扣网络所有。商业转载请联...

2019-07-28 15:02:35 133

原创 初学JavaDay07——函数与数组练习

初学JavaDay07——函数与数组练习1.求一个整数各数字之和解题思路及代码:import java.util.Scanner;class Class25{ public static void main(String[] args) { System.out.print("Enter a number:"); //提示用户输入 Sc...

2019-07-28 14:49:41 178

原创 初学JavaDay06——数组

初学JavaDay06——数组的基本操作1.数组的遍历public static void bianli(){ System.out.println("数组的遍历"); int arr[]={1,2,3,4,5,6}; for(int i=0;i<arr.length;i++){ System.out.print(a...

2019-07-27 10:35:34 146

原创 初学JavaDay05——函数

初学JavaDay05——函数一、为什么要使用函数?函数是用来完成或解决一种问题的代码,当我们遇到重复但没有规律的问题时,用循环结构会使代码变得冗余,而使用函数就可以一次输入,多次调用。二、函数的基本格式是什么样的?修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,......){ 执行语句 ……… return 返回值;}图解格式...

2019-07-24 18:26:31 119

原创 初学JavaDay04——循环结构

初学JavaDay04——循环结构为什么需要循环 在解决固定的循环次数,减少代码的冗余一、 循环结构的种类:1.while循环2.do-while循环3.for循环其中,while循环多用于不知道循环的次数的时候。for循环用于已知循环的次数的时候。do-while用于需要先执行循环体,再判断的时候。二、For循环(1)For循环结构的结构:...

2019-07-24 16:46:10 131

原创 初学JavaDay04——循环语句和判断语句的练习

1.求解以下四种图案图案1解题思路:解决此类题的基本思路,就是先循环行,再循环一行中的数字或者空格图案1代码class Home15a{ public static void main(String[] args){ for(int i=1;i<=7;i++){ //对每一行进行循环 for(int k=...

2019-07-24 15:56:20 199

原创 初学JavaDay03——判断结构(if)

Day03主要学习了: 判断结构if判断结构(if)01if 语句是一个结构,它用来确定执行的路径。Java 中的选择语句类型:单分支 if 语句、双分支 if-else 语句、嵌套 if 语句、多分支 if-else 语句、switch 语句和条件表达式1.单分支if语句1.1基本语法结构 if (布尔表达式){ 执行语句 }当运行到该语法时,...

2019-07-24 15:18:47 474

原创 初学JavaDay02

初学JavaDay023.Java语法基础3.1 关键字3.2 标识符3.2 常量和变量3.2.1常量:3.2.2变量:3.2.3命名时应该注意的问题:3.3 Java的数据类型3.Java语法基础3.1 关键字含义:被Java语言赋予了特定含义的一些字符关键字分类:用于定义数据类型的关键字 class interface byte short int long float double...

2019-07-24 15:16:55 135

原创 初学JavaDay01

初学JavaDay011 计算机基础知识1.1 计算机的基本结构1.2 软件开发1.3 常用的DOS命令2 Java基础知识2.1 计算机语言2.2 Java语言简介2.3 Java语言的三种架构2.4为什么Java语言能够跨平台2.5 JVM2.6 环境变量配置2.7 程序的编写和运行1.编写1 计算机基础知识1.1 计算机的基本结构输入设备 键盘、鼠标...

2019-07-20 15:35:29 110

空空如也

空空如也

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

TA关注的人

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