自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java:XML的四种解析方式 —— DOM解析

XML概念XML通常用于数据存储,配置的数据,XML文件的解析将这些数据读取出来。XML在不同的语言环境中解析方式都是一样的,只不过实现的语法不同。HTML 用于页面的展示<?XML version="1.0" encoding="utf-8"?> version — 版本号 encoding — 编码字符集我们下面查询时使用的 department.xml 文件:<?xml version="1.0" encoding="UTF-8" standalone=

2021-03-23 19:42:16 451

原创 MySQL:事务的概念、事务的隔离级别

一、事务的基本概念和操作流程Transaction通常情况下在某些业务:如银行转账等,这样的业务他不是由一个SQL语句构成而是多个或多组的SQL构成,那么这样的一个过程,我们称之为一组事务。事务的特征(ACID)A 原子性(Atomicity):事务是最小的单位,不可再分C 一致性(Consistency):事务在DML语句操作时,要保证同时成功同时失败I 隔离性(Isolation):事务和事物之间互不干扰D 持久性(Durability):完成事务后,最终要把数据库表的更改内容持久化

2020-07-18 14:16:02 1088

原创 Homework:行级锁 表级索 乐观锁 悲观锁

1. 行级锁只针对当前行的一种锁,行级锁是MySQL中锁定粒度最细的一种锁。行级锁能大大减少数据库操作的冲突。 其加锁粒度最小,但开锁的开销也最大。【行级锁分为共享锁,排他锁】特点:加锁慢,开销大;会出现死锁;锁定粒度最小,发生所冲突的概率最底,并发率也最高。2. 表级锁直接锁定整张表,表级锁是MySQL中锁定粒度最大的一种锁,表示对当前操作的整张表加锁,它实现简单,资源消耗较少。【表级锁分为共享锁与排他锁】特点:开销小,加锁快;不会出现死锁;锁粒度大,发出所冲突的概率最高

2020-07-16 00:42:48 294

原创 Java:SQL注入,Properties,PreparedStatement封装

SQL注入通过SQL代码的漏洞,进行攻击系统例:在查询条件中输入‘’‘or 1 or’” 那么查询条件会显示的结果[id=002, username=wangwu, salary=7898.0, age=23, depart=manage]如何解决:数据厂商的问题解决方案:对Java语言中传递的字符串做预处理PrepareStatement:先由PrepareStatement 和数据库连接,对字符串进行预处理,处理结束后再去执行SQLPrepareStatement的使用:p

2020-07-14 15:38:19 376

原创 MySQL:更新语句,查询语句,多表查询,子查询

文章目录1.更新语句2.查询语句2.1聚合函数2.2别名什么时候使用别名?2.3limit3.多表查询(重点)3.1 内连接3.2 外连接3.3 等值连接3.4 全连接4.子查询1.更新语句Update tableName set columnName = ColumnName+x [ and columnName1 = number];如果是并列的筛选条件,使用and关键字修改表中 username 为 wangwu 且年龄为23的人张薪资2000;update tb1 set salary

2020-07-13 14:09:33 941

原创 Homework:SQL执行顺序,HashTable与HashMap,Statement与PreparedStatement区别

sql语句中 查询语句关键字的执行顺序MySQL语句中,其书写顺序如下:SELECT [ DISTINCT ] * | 字段 [ 别名 ] [ 字段 [ 别名 ] ] | 统计函数 FROM 表名称 [ 别名 ] , [ 表名称 [ 别名 ] , … ] [ WHERE 条件 ( s ) ] [ GROUP BY 分组字段1 [ , 分组字段2 , … ] ] [ HAVING 分组后的过滤条件 ( 可以使用分组函数 ) ] [ ORDER

2020-07-13 01:19:09 186

原创 Homework:Java抽象类概念,抽象类为什么不能创建对象

抽象是什么?1.抽象类的定义:抽象就是从多个事物中奖共性的,本质的内容抽取出来。通常在编译语句中用abstract修饰的类是抽象类,含有抽象方法的类称为抽象类,同样不能生成对象。抽象类是不完整的,只能用作基类,在面向对象方法中,抽象类主要用来进行类型隐藏,和充当全局变量的角色。2.抽象类的概念多个对象都具备相同的功能,但是该功能的具体实现细节又各不相同。那么我们对此相同功能进行抽取,只抽取功能定义,只有功能声明,这种方法称为抽象方法例:狗和猫均有 eat() 功能,但是具体吃的东西又

2020-07-12 17:48:31 1242 1

原创 Java:Web工程介绍、重写单条、多条记录查询与实现、MySQL中float,double字段的查询

文章目录一、Web项目介绍二、Web工程中项目分层介绍三、Web工程例题1. JDBCUtil新改写的类中1.2 单条记录的查询1.2 多条记录的查询1.3 添加抽象方法2. 确定需求后,建立工程2.1 构建实体类 com.openlab.pojo2.2 创建业务接口 com.openlab.service2.3 数据链路层 com.openlab.dao2.4 业务接口实现com.openlab.service.impl2.5 测试 com.openlab.test附: MySQL中的float,doub

2020-07-09 00:36:24 464

原创 JBDC:基础实现—代码优化,封装,MySQL增删查实现,idea单元测试

文章目录JBDC1. 代码优化2. 增加添加,修改,删除功能3. 单元测试3.1 步骤:3.2 Update单元测试JBDC1. 代码优化步骤:使用DriverManager 进行加载驱动Driver利用加载驱动拿到Connection连接对象通过Connection对象拿到Statement使用Statement对象,进行SQL查询查询返回jieg关闭资源【优化概括】利用try/catch,封装进行优化将相关代码段进行封装,使得当连接数据库改变时,操作简单public c

2020-07-06 22:31:23 312

原创 MySQL:外键约束,表结构的修改

一、关于MySQL的范式 建表要求MySQL中的约束:非空约束唯一约束主键约束默认约束外键约束1. 非空约束not null 表示字段不可为nullnull 表示字段可以为nullcreate table tb3( name varchar(20) not null, age int unsigned null);2. 唯一约束用于保证表中记录的唯一性,可以不是主键,可空每张数据表可存在多个唯一约束create table tb3( name varchar(20

2020-07-06 12:14:45 2537

原创 MySQL:安装&卸载,常用命令

文章目录一、MySQL的安装二、MySQL的卸载三、为什么要学习数据库四、常用命令五、数据库语句DDL六、数据库的数据类型七、数据库表的操作八、JDBC基础九、具体实现一、MySQL的安装下载安装最新的相应的MySQL版本安装+配置安装的组件信息:服务器软件目录:数据目录:点击install安装即可:配置:机器类型:是否支持事物功能:innodb表空间:连接数量:字符集设定:配置Windows管理相关:配置安全选项:最后执行配置即可:配置结束后,

2020-07-01 22:36:10 1134

原创 Request:知识点总结

Request对象概念:Request对象的作用是与客户端交互,收集客户端的Form,Cookies,超链接,或者收集服务器端的环境变量。request对象是从客户端向服务器发出请求,包括用户提交的信息以及客户端的一些信息。操作:客户端可以通过HTML表单或在网页地址后面提供参数的方法提交数据,然后服务器通过request对象的相关方法来获取这些数据。request的各种方法主要用来处理客户端浏览器提交的请求中的各项参数和选项。主要功能及其作用:Request对象,又称为请求对象,该对象派生

2020-05-31 13:05:45 1470 1

原创 JavaScript:简单面试题知识点总结

一、网页头部的声明用 lang="zh"还是 lang=“zh-cn”?简体中文页面:html lang=zh-cmn-Hans繁体中文页面:html lang=zh-cmn-Hant英语页面:html lang=en二、JavaScript放在< head >和< body >里有区别吗?先加载与后加载的区别,写在head标签里,在需要用window.onl...

2020-05-31 09:04:19 272

原创 数据库:第二章 《关系模式》概念总结

一、关系数据结构及形式化定义1. 关系模式的相关概念:域: 域是一组具有相同数据类型的值的集合笛卡尔积: 域上的一种集合运算其中每一个元素(d1,d2,d3,……dn)叫做一个元祖,元祖中的每一个值叫做一个分量。 【一个域允许的不同取值个数称为这个域的基数】关系: D1D2…*Dn的子集叫做在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn)这里的n是关系的...

2020-03-31 11:27:37 16756 1

原创 Java:多线程安全例题(消费者--生产者)

书店图书的购买与生产题目要求:*** 在线程同步的情况下来实现读者与书工厂之间的关系 **若图书数量不足,停止向读者售卖图书;让书工厂继续出售若图书数量过多,停止生产图书;通知读者进行图书购买(利用notify 与 wait解决问题)代码实现:读者模块//读者(买书)class Reader implements Runnable{ //定义一个书店对象 BookStore...

2020-02-23 15:46:36 199

原创 Java:线程,多线程安全

文章目录线程线程的创建方式1:继承Thread类线程的创建方式2:实现Runnable接口多线程共享同步锁1.同步代码块2.同步方法:Lock锁线程间的通讯线程的声明周期线程程序:进程,线程,就是一段静止的代码进程:程序由静态转变为动态,一个正在运行的程序,具有生命周期线程:进程的最小单元,线程是CPU的一条执行路径,一个进程中包含多个线程,且每个线程具有独立的栈和程序计数器,是CPU最小...

2020-02-23 15:03:54 290

原创 Java:面向对象面试题整理

文章目录1.面向对象的特征有哪些方面?2.访问修饰符public,private,protected,以及默认时的区别?3.类型转换int 与 Integer 有什么区别?1.面向对象的特征有哪些方面?抽象:将一类对象的共同特征总结出来,构造类的过程(数据抽象和行为抽象)只关注对象有哪些属性和行为,不关注这些的细节。继承:从已有类得到继承信息创建新类的过程(父类 & 子类)封...

2020-02-13 22:21:57 186

原创 Java:异常,常用类(file,math,random,date,calendar)

文章目录异常Throwable 异常异常的分类特点抛出异常:JVM抛throw抛一、JVM对异常的处理:补充try{}与catch{}【用户自己处理出现的异常】二、throws:常用类路径:绝对路径,相对路径关于FILE类的用法MATH类:包含基本的数字操作static关键字:RANDOM伪随机数DATE时间类型CALENDAR日期类型SIMPLEDATEFORMAT异常定义:指非正常情况的错...

2020-02-11 22:29:26 511

原创 Java:接口,内部类,设计模式(代理模式,工厂模式)

接口 interface概念:是一个全部由抽象方法组成的集合,用interface定义,里面只能有抽象的方法和常量。接口体现的是事物扩展的功能,接口定义了一个实体可能发生的动作,只有一个声明,没有具体的行为。前提:当一个方法在很多类中有不同体现时,可把这个方法抽象出来做成一个接口注意:接口里面只能有不可修改的全局变量,只能有抽象的方法,接口没有构造方法。...

2020-02-11 21:51:27 276

原创 Java算法:LeetCode总结(分类二)67

67. 二进制求和题目给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。题目分析该题目要求以二进制的方法进行计算,并返回相应的值难点:注意返回值类型为String(熟练运用String的有关操作与转化)二进制需要考虑的几种情况:1. 相加后为0或者1:直接加2. 相加后为2:把当前位置的数字变为0,且要考虑进位3. 相加后为3:...

2020-02-06 22:53:36 204

原创 Java:设计模式(单例模式,懒汉式&饿汉式的区别)

设计模式之一——单例模式是在大量的实践和理论中总结出来的并优化之后的一个代码结构,编程风格,解决问题的思考方式概念:一个类只能创建一个实例化对象(将构造器进行私有化(Private)来保证只有一个实例,此时外部无法调用构造器来创建对象提供static 修饰)饿汉式class Banl{//1. 私有化构造器 private Bank(){}//2. 内部需要提供一个当前类的实例...

2020-02-06 11:25:20 582

原创 Java:重写 与 重载 的区别

Java:重写与重载的区别1. 重写(子类重写父类)重写: 重新写一遍。在子类中把父类本身有的方法重新写一遍。子类继承了父类原有的方法,但并不是原封不动的继承父类中的某个方法 --> 在方法名,参数列表,返回类型均相同的情况下, 对方法体进行修改或重写。注意:子类函数的访问修饰权限不能少于父类public class object1{ public static void ...

2020-02-03 15:51:40 113

原创 Java 算法:leetcode总结(分类一)1

1. 两数之和题目:给定一个整数数组nums和一个目标值target,请你在数组中找出和为目标值的那两个整数,并返回他们的数组的数组下标。(可假定每种输出只会对应一个答案,但是不能重复利用这个数组中相同的元素)示例:给定 nums = [ 2, 7, 11,15 ] , target = 9因为 nums [ 0 ] +nums [ 1 ] = 2 + 7 = 9所以返回 [ 0, ...

2020-01-26 00:46:41 454

原创 Java数据结构:链栈,双端栈,循环单链表

链栈**注意:**在指定栈顶的时候,将数据前面的位置作为栈顶1. 当数据后为栈顶时:插入为n(1) 删除为 n(n) --> 需要找到所删除数据的前一个数A2. 当表头的下一个为栈顶时:插入与删除均为n(1)代码实现(基于链表的实现基础之上)package DS02动态链表;import DS01.Stack;import java.util.Iterator...

2020-01-26 00:06:03 262

原创 Java数据结构:动态链表的链式存储结构

链表定义表示数据元素与其直接后继之间的关系,两者之间物理存储地址并不连续,为了存储下一个直接后继的地址,一个结点除了存储本身的信息,还需存储一个指示直接后继信息。如图,每个结点有两个存储空间,数据域和指针域单链表:n个结点链接成一个链表,即为线性表(a1,a2,a3……an)的链式存储结构,因为此链表的每个结点只包含一个指针域,所以叫做单链表。头结点与头指针头结点:是指链表中的第一...

2019-12-21 00:53:37 526

原创 java数据结构:Stack栈,双端栈的顺序存储结构

das

2019-12-19 21:18:49 199

原创 Java:面向对象概念(抽象类,接口,多态,异常)

抽象类概念:在继承的层次结构中,每个新子类都使类变得越来越明确和具体。如果从一个子类追溯到父类,类就会变得更通用,更加不明确。类的设计应该确保父类包含它的子类的共同特征。注意:抽象类不可以用于创建对象。抽象类可以包含抽象方法,这些方法将在具体的子类中实现。...

2019-12-19 17:33:28 219

原创 Java数据结构:List线性表的顺序存储结构(增,删,查,改,字符串输出)【泛型,迭代器】

补充概念:1.泛型:【允许在编写代码时定义一些可变部分】“泛型是程序设计语言的一种特性。允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明。各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。泛型类是引用类型,是堆对象,主要是引入了类型参数这个概念。”package DS01;/*...

2019-12-15 01:48:17 607

原创 Java 数组(算法88):合并两个有序数组

题目:合并两个有序数组给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入: nums1 = [1,2,3,0,0,0], m = ...

2019-12-06 18:59:06 5362

原创 Java:面向对象概念(构造函数,继承,this ,super关键字)

构造函数 构造器构造方法:构造方法必须具备和所在类相同的名字构造方法没有返回值,void也没有构造方法是在创建一个对象使用new操作符时调用的(初始化对象)构造方法具有和定义它的类完全相同的名字,构造函数也可以重载在定义中如果出现其他的构造函数,则默认的无参构造函数不存在(建议写出无参构造函数)如果一个类里面没有定义任何构造函数,则会有一个隐藏的无参构造函数权限修饰符 类名(...

2019-12-06 12:15:11 703

原创 Java:面向对象的基础概念01

面向对象概念:创建一个类,将某一类型的方法都放在这个类中(封装)面向过程与面向对象:面向过程:注重于过程,注重一步一步的求解,去实现(面对具体的每一个功能函数,凡事亲力亲为)面向对象:将具体功能进行封装,注重于找到具体的类,创建出对象,来调用相对应对象的具体功能面向对象例子:做饭->买菜洗菜烧水切菜煮菜装盘面向对象是将做饭这整一个过程封装起来,组装成一个做饭的...

2019-11-30 00:45:00 108

原创 Java数组(算法169,747):多数元素,至少是其他数字两倍的最大数

题目一(多数元素):给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。题目分析:从所给数组中找出出现次数大于n/2的数字因为是大于n/2的数字,所以只有一个符合要求的数字懂得运用该题目的特性进行解题题目解答:方法一(依次遍历):找出出现次数大于n/2的数字建立...

2019-11-27 19:46:09 205

原创 Java数组(算法268):缺失数字

题目:给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。题目分析:要点:注意题目中的0~n的数组,可得->遍历时仅需从零遍历到nums.length即可,无需遍历寻找最大最小值对所给的数组进行查找,找到0~n中没有出现的那个数字并进行输出题目解答:方法一(依次遍历进行查找):a. 建立两个for循环b. 依...

2019-11-27 15:54:52 1080

原创 java 数组(算法66):加一【易错】

题目:给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。如:输入[ 1,2,3 ]输出[ 1,2,4 ]错误代码:public static int[] plusOne(int[] digits) { int num=0; ...

2019-11-21 14:23:34 339

原创 java 只出现一次的数字

题目:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。解题思路:/*1.定义一个count进行计数2.遍历: 创建两个指针进行遍历 在其中一个指针遍历结束后,对count进行判断 若为1,则是要查找的数字 若不为1,进行下一轮遍历,count清零 */代码实现://只出现一次的数...

2019-11-21 01:00:52 722

原创 Java:游戏编写——五子棋

**题目:游戏五子棋的程序**步骤:创建五子棋输出五子棋开始游戏3.1 黑白方提示用户3.2 用户输入棋子位置3.3 放入棋子,并图形化输出棋子3.4 判断输赢3.5 判断是否继续游戏import java.util.Scanner;class wuziqi{ public static Scanner scanner=new Scanner(S...

2019-11-16 01:03:28 286

原创 Java编程 猜字游戏

题目:编写一个猜字游戏。随机产生一个单词,提示用户依次猜测一个字母,如运行示例所示。单词中的每个字母显示为一个星号。当用户猜测正确后,正确的字母显示出来。当用户猜出一个单词,显示猜错的次数,并且询问用户是否继续对另一个单词进行游戏。声明一个数组来存储单词,如下所示:(主函数)解题思路:1.创建随机猜测的字符串数组2.随机抽取字符串,用户进行猜测3.判断用户是否猜对其中的一个字符创建状态数...

2019-11-13 22:09:25 2318

原创 Java 函数与数组的概念

函数的概念函数就是定义在类中的具有特定功能的一段独立小程序,并能被多次使用使用函数的原因:由于在主函数中存在很多重复的代码,造成代码的重复性很多,所以提出把这些重复的代码封装起来,提高效率**定义格式 **修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…){执行语句;return 返回值; }return关键字是用于结束该功能。并将后面的具体结果返回给调用...

2019-11-08 17:22:28 166

原创 Java的判断与循环语句

判断语句if判断语句第一种格式:if(条件表达式){执行语句}class Demo { public static void main(String[] args) { int a = 1; if( a > 0){ System.out.println("大于"); ...

2019-11-04 16:40:03 1595

原创 Java介绍及基本用法

Java01软件开发系统软件 :运行程序的平台应用软件:有功能的程序Java的三种技术结构J2EE—企业版J2SE—标准版J2ME—小型版JVM:运行所有JAVA程序的抽象计算机,是Java语言的运行环境不同的操作系统需要安装与此对应的Java虚拟机JVM环境变量path配置过程:我的电脑–属性–高级–环境变量编辑path环境变量,在变量值开始处加上Java...

2019-10-28 12:17:11 298

空空如也

空空如也

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

TA关注的人

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