大数据优就业——javase阶段
文章平均质量分 78
javase
dogedong
这个作者很懒,什么都没留下…
展开
-
Day65_补充:JVM、SQL:索引、视图、函数和过程
课程大纲 课程内容 学习效果 掌握目标 JVM发展史 JVM发展史 了解 JVM内存区域构成 GC基本原理 GC的基本原理 掌握 JVM GC收集器 掌握 ...原创 2021-10-18 17:28:36 · 94 阅读 · 0 评论 -
day29_大数据第一阶段总结(三)
java高级一、反射(一)类加载机制简而言之:class文件被虚拟机加载进内存生产Class对象的过程就是类加载机制。class文件-->Class对象的过程(二)反射概念反射就是在运行时期,动态的获取类中成员信息(构造器,字段,方法)的过程!(三)获取Class类对象1、反射相关类Class类:反射的核心类,可以获取类的属性,方法等信息。Field类:Java.lang.reflec包中的类,表示类的成员变量,可以用来获取和设置类之中的属性值。 **Metho原创 2021-08-16 23:10:02 · 216 阅读 · 0 评论 -
day29_大数据第一阶段总结(二)
java中级一、异常异常的含义异常是java处理错误的一种机制。设计良好的程序应该在异常发生的时候提供处理这些错误的方法,使得程序不会因为异常的发生而阻断。Java的异常处理是通过5个关键字来实现的:try、catch、 finally、throw、throws。1、使用try catch来捕获异常把异常的发现和处理相分离2、异常体系Throwable中的常用方法:public void printStackTrace():打印异常的详细信息。包含了异常的.原创 2021-08-16 22:20:08 · 292 阅读 · 0 评论 -
day28_大数据第一阶段总结(一)
一、java基础(一)java语言开发环境*java语言是半编译、半解释型的语言编译型语言:源代码不能立刻执行要先编译成CPU可以直接执行的内容。C语言解释型语言:源代码不能立刻执行,但不需要经过编译,需要一个解释器直接解释源代码来执行。PYTHON半编译半解释语言:不能直接执行,要结果编译器编译,但编译后文件不能直接执行,还需要一个解释器来解释编译后的文件。JAVA的解释器就是JVM.1、JVMjava虚拟机,运行所有java程序的假想计算机,java程序的运行环境。2、J原创 2021-08-16 00:05:31 · 207 阅读 · 0 评论 -
day27_Maven
一、Maven简介(一)什么是MavenMaven 是 Apache 软件基金会组织维护的一款自动化构建工具,专注服务于 Java 平台的项目构建和依赖管理,可以管理项目生命周期中的构建(编译、运行测试、打包、部署等)和项目的依赖(jar包) ,以及管理项目各个模块之间的依赖关系。Maven 这个单词的本意是:专家,内行。(二)为什么使用Maven1、Maven能提供一种项目的配置。配置好的项目,只需要运行一条简单的命令,就能完成重复的、繁琐的构建动作。2、Maven能提供一种项目的原创 2021-08-12 21:49:24 · 143 阅读 · 0 评论 -
day27_SQL语言(十四)数据库连接池
(一)连接池概述1.什么是数据库连接池连接池是创建和管理数据库连接的缓冲池技术。连接池就是一个容器,连接池中保存了一些数据库连接,这些连接是可以重复使用的。2.为什么用数据库连接池(1)不使用连接池 创建数据库连接 →运行SQL语句→关闭连接,每次数据库访问执行这样重复的动作。获取数据库连接需要消耗比较多的资源,而每次操作都要重新获取新的连接对象,执行一次操作就把连接关闭,创建时间也较长。这样数据库连接对象的使用率低。假设网站一天10万访问量,数据库...原创 2021-08-12 20:59:49 · 424 阅读 · 0 评论 -
day26_SQL语言(十三)使用JDBC技术及DAO模式完成项目
书城小项目(一)需求使用JDBC技术及DAO模式完成书城项目的增、删、改、查操作项目核心文件组成:BookDao:为操作书籍增删改查数据库层接口BookDaoImpl:为操作增删改查接口实现类BookWeb:用于数据组装以及页面展示(注:现在没有学习前端页面,可以在web层中使用Scanner代替页面录入)Utils:存放想用到的工具类Bean:存放项目中用到的bean文件(一)功能展示:1、选择不同的编号完成不同的功能2、查询书籍选择A选项后从数据库原创 2021-08-11 19:48:00 · 372 阅读 · 0 评论 -
day26_SQL语言(十一)JDBC
一、JDBC概述(一)什么是JDBCJDBC全称Java DataBase Connectivity。Java数据库连接, 是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口 ,提供了诸如查询和更新数据库中数据的方法。(二)JDBC的由来1.没有JDBC在JDBC出现之前,Java语言要操作数据库,我们需要掌握具体的编程方式。而针对不同的数据库(MySQL、Oracle等),连接的方式会有较大差异,学习成本较高,数据库的切换也比较繁琐,改动较大。2.使用JDBC..原创 2021-08-10 20:51:12 · 279 阅读 · 1 评论 -
day26_SQL语言(十)索引及存储过程
一、索引(一)分类1.唯一索引1.特点与普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须是唯一的,创建方法和普通索引类似。2.创建唯一索引a.建表时创建语法UNIQUE INDEX 索引名 (列名)示例create table student4( id int primary key, name varchar(20), age int, email varchar(200),...转载 2021-08-10 20:33:01 · 263 阅读 · 0 评论 -
day25_SQL语言(九)DCL
我们现在默认使用的都是root用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。用户和权限的管理可以通过DCL(Data Control Language)来实现。一、创建用户语法CREATE USER '用户名'@ '主机名' IDENTIFIED BY '密码' 1、`用户名`:将创建的用户名 2、`主机名`:指定该用户在哪个主机上可以登陆,..原创 2021-08-09 21:34:05 · 120 阅读 · 0 评论 -
day25_SQL语言(八)数据库事务
一.什么是数据库事务数据库事务是访问并可能操作各种数据项的一个数据库操作(包括读、写)序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。事务由事务开始与事务结束之间执行的全部数据库操作组成。例如:银行转账。核心操作包括更新一个账户减去转账金额,更新另一个账户加上转账金额,要求要同时成功或同时失败。二.事务的目的为数据库操作提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。 当多个应用程序在并发方法数据库时,可以在这些应用程原创 2021-08-09 21:14:33 · 930 阅读 · 0 评论 -
day25_SQL语言(七)数据库备份与还原
(一)备份的应用场景我们在服务器上进行数据传输、数据存储和数据交换,就有可能产生数据故障。比如发生意外停机或存储介质损坏。这时,如果没有采取数据备份和数据恢复手段与措施,就会导致数据的丢失,造成的损失是无法弥补与估量的。(二)备份1.命令方式备份语法mysqldump -u用户名 -p密码 数据库 > 文件的路径/文件名.sql示例备份mydb1数据库中的数据mysqldump -uroot -pmysql mydb1 > D:/abc.sqls.原创 2021-08-09 20:00:31 · 99 阅读 · 0 评论 -
day25_SQL语言(六)多表查询
一、多表查询 (一)什么是多表查询 之前我的查询都是从一张表中返回数据。同时查询多张表获取到需要的数据,就是多表查询。比如:要查询员工的姓名和所在的部门名称,需要从employee表和department表两个表中查询数据。准备数据创建部门表 deptCREATE TABLE dept ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20));添加数据INSERT INTO dept (NAME) VALUES ('开...原创 2021-08-09 19:47:05 · 788 阅读 · 0 评论 -
day24_SQL语言(五)表关系
一、概念和分类现实生活中,实体与实体之间是存在关系的,比如:老公和老婆,部门和员工,老师和学生等。我们设计的表是对现实中实体的描述,那么我们在设计表的时候,就应该体现出表与表之间的这种关系。 表与表之间的关系主要包括:一对多(多对一)、一对一、多对多三种。二、一对多(多对一)一对多(1:n)。 例如:班级和学生,部门和员工,客户和订单,分类和商品等一对多建表原则: 在从表(多方)创建一个字段,字段作为外键指向主表(一方)的主键三、多对多多对多(m:n)。例如:老师...原创 2021-08-07 22:19:28 · 2847 阅读 · 0 评论 -
day24_SQL语言(四)约束和策略
约束的作用:对表中的数据进行进一步的限制,保证数据的正确性、有效性和完整性。约束都是加在列上的,对一列的数据进行限制。分类:数据库约束主要包括:主键约束、非空约束、唯一约束、默认约束(缺省约束)、外键约束、检查约束(MySQL不支持检查约束)一、主键约束1.主键的作用用来唯一标识一条记录,每个表都应该有一个主键,并且每个表只能有一个主键。 有些记录的 name,age,score 字段的值都一样时,那么就没法区分这些数据,造成数据库的记录不唯一,这样就不方便管理数据。哪个字.原创 2021-08-07 22:09:57 · 720 阅读 · 0 评论 -
day24_SQL语言(三)DQL
一、DQL数据查询语言 单表查询 6.条件查询准备表和数据CREATE TABLE student3 ( id int, name varchar(20), age int, sex varchar(5), address varchar(100), math int, english int );INSERT INTO student3(id,...原创 2021-08-07 19:53:51 · 963 阅读 · 0 评论 -
day23_SQL语言(二)DML及DQL
一、DML数据操纵语言对表中的数据进行增、删、改操作。 插入记录 指定字段的插入语法INSERT INTO 表名 (字段名 1, 字段名2...,字段n) VALUES (值1, 值2...,值n)示例更换数据库,创建student表create table student( id int, name varchar(20), age int, sex char(1), address varchar(100))向学生表中添加...原创 2021-08-05 19:48:11 · 148 阅读 · 0 评论 -
day23_SQL语言(一)DDL
一、SQL语言概述1、SQL语言介绍SQL(Structured Query Language) 是结构化查询语言的缩写,使用SQL和DBSM进行交互,操纵关系型数据库中的资源。SQL是数据库管理系统都需要遵循的规范。不同的数据库生产厂商都支持SQL语句,但为了加强SQL的语言能力,各个厂商都增加了特有内容。2、SQL语言分类数据定义语言(DDL):Data Definition Language,用来定义数据库的对象,如数据表、视图、索引等。数据操纵语言(DML):Data原创 2021-08-05 15:57:35 · 428 阅读 · 1 评论 -
day23_MySQ下载、安装及卸载(彻底卸载)
一、下载MySQL官网地址 https://www.mysql.com这里有windows系统的mysql-installer-community-8.0.23.0.msi,可以去下载安装链接:https://pan.baidu.com/s/1wJlbNeFInTdoHtzkp-ZqYA提取码:f3e4本教程下载基于windows系统的MySQL数据库下载最新版本2.下载历史版本选择合适版本进行下载。二、安装双击mysql-in...原创 2021-08-05 11:16:02 · 280 阅读 · 0 评论 -
day22_网络编程
一、网络编程1.1软件架构 C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。 B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。1.2 网络通信协议 网络通信协议:通信协议是对计算机必须遵守的规则,只有遵守这些规则,计算机之间才能进行通信。这就好比在.转载 2021-08-04 20:44:36 · 137 阅读 · 0 评论 -
day21_Lambda表达式、函数式接口
一、Lambda表达式1.1 函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是“拿什么东西做什么事情”。相对而言,面向对象过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——强调做什么,而不是以什么形式做。1.2 冗余的Runnable代码传统写法当需要启动一个线程去完成任务时,通常会通过java.lang.Runnable接口来定义任务内容,并使用java.lang.Thread类来启动该线程。代码如下:pu.原创 2021-08-03 20:40:16 · 158 阅读 · 0 评论 -
day20_单元测试 JUnit4.x
1.1测试的概念先认识到测试的重要性:优秀的软件不是开发出来的,而是测试出来的.软件测试分类: 黑盒测试 白盒测试 黑盒测试:测试工程师黑盒测试又称功能测试,主要检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,进行测试,主要针对软件界面和软件功能进行测试。白盒测试:开发工程师白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试,主要检测程序内部逻辑是否正常在测试中测试原创 2021-08-02 21:34:29 · 111 阅读 · 0 评论 -
day20_反射
一、反射1.1类加载机制当一个class文件被加载进内存时,在JVM中将形成一份描述该class文件结构的元信息对象Class,通过该对象可以获知class文件的结构信息:如构造器,字段,方法等。虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。简而言之:class文件被虚拟机加载进内存生产Class对象的过程就是类加载机制。class文件-->Class对象的过程1.2反射原创 2021-08-02 21:21:49 · 72 阅读 · 0 评论 -
day19_枚举
一、枚举1.1概述其实就是一种特殊的类,一般用于表示多种固定的状态。单例设计模式,设计出来的是某个类型的对象只有一个;枚举类型就是有多个对象的单例设计模式,也可以称为多例模式。声明一个枚举类型,使用的关键字是enum,声明出来的也是一个类,编译出来也是一个.class的文件,只不过是补充了一些内容。格式public enum 名字{ 枚举项1,枚举项2;}1.2枚举实现需求:在Employee类中,定义一个字段,用来表示在哪一天休息(星期几).pack.原创 2021-07-30 22:43:36 · 98 阅读 · 0 评论 -
day19_多线程
一、线程协作我们已了解线程之间可能的冲突,以及怎样避免冲突;下一步就要学习怎样使线程之间相互协作。这种协作是通过线程之间的握手来实现的,这种握手可以通过Object的wait()和notify()来安全的实现。1.1生产者和消费者的问题有一家汉堡店举办吃汉堡比赛,决赛时有3个顾客来吃,3个厨师来做,一个服务员负责协调汉堡的数量。为了避免浪费,制作好的汉堡被放进一个能装有10个汉堡的长条状容器中,按照先进先出的原则取汉堡。如果容器被装满,则厨师停止做汉堡,如果顾客发现容器内的汉堡吃完了,就原创 2021-07-30 22:36:35 · 191 阅读 · 0 评论 -
day18_多线程
一、多线程我们在之前,学习的程序在没有跳转语句的前提下,都是由上至下依次执行,那现在想要设计一个程序,边打游戏边听歌,怎么设计?要解决上述问题,咱们得使用多进程或者多线程来解决.1.1 并发与并行 并行:在同一时刻发生(同时发生),多核cpu的基础上。 并发:指两个或多个事件在同一个时间段内发生。 单核cpu的基础上 在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些程原创 2021-07-30 08:57:14 · 130 阅读 · 0 评论 -
day17_属性集
一、属性集1.1 概述java.util.Properties 继承于Hashtable ,来表示一个持久的属性集。它使用键值结构存储数据,每个键及其对应值都是一个字符串。该类也被许多Java类使用。1.2 Properties类构造方法 public Properties() :创建一个空的属性列表。 基本的存储方法 public Object setProperty(String key, String value) : 保存一对属性。 public Str原创 2021-07-28 17:19:04 · 134 阅读 · 0 评论 -
day17_高效流
一、序列流(也称为合并流)可以将多个输入流合并为一个流进行统一读取。构造方法SequenceInputStream(InputStream s1, InputStream s2) 把流s1和流s2合并成一个输入流对象。示例代码FileInputStream fis1 = new FileInputStream("c:\\a.txt");FileInputStream fis2 = new FileInputStream("c:\\b.txt");SequenceInputStr原创 2021-07-28 17:15:53 · 125 阅读 · 0 评论 -
day16_IO流
一、IO流1.1什么是io生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。这时候数据存放于内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作原创 2021-07-27 19:44:43 · 150 阅读 · 0 评论 -
day16_文件File
一、File对象1.1File的概念 Java.io包下代表平台无关的文件和目录。也就是说如果希望在程序中操作文件或目录都可以通过File类来完成。 File可以新建、删除、和重命名文件和目录。但File不能访问文件本身,如果需要访问文件内容,则需要 I/O。 File类的实例表示一个文件或者目录(文件夹)。 构造一个File实例并不是创建这个目录或文件,而是该路径的一个抽象,它可能真实存在也可能不存在。(就是指向这个文件或目录)。 1.2File的构造方法原创 2021-07-27 18:16:22 · 114 阅读 · 0 评论 -
day15_Map
一、Map1.1概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。存储方式 Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。 Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的值。 Collection中的集原创 2021-07-26 16:55:54 · 107 阅读 · 0 评论 -
day15_泛型
一、泛型1.1泛型概述在前面学习集合时,我们都知道集合中是可以存放任意对象的,只要把对象存储集合后,那么这时他们都会被提升成Object类型。当我们在取出每一个对象,并且进行相应的操作,这时必须采用类型转换。观察下面代码:public class GenericDemo { public static void main(String[] args) { Collection coll = new ArrayList(); coll.add("abc...原创 2021-07-26 11:00:24 · 140 阅读 · 0 评论 -
Day14_操作集合的工具类 Collections
java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:sort(List<T> list); 对List集合进行默认排序addAll(Collection<T>,T...e);向集合中添加可变参数元素fill(List<E> list, E e):将list集合中的所有元素都填充为元素eint frequency(Collection<E> c, E e):返回在集合c中的元素e的个数max、min原创 2021-07-23 15:44:31 · 104 阅读 · 0 评论 -
Day14_list接口
一、list接口1.1List简介List接口是Collection的子接口,实现List接口的容器类中的元素是有顺序的,而且可以重复。List容器中的元素都对应一个整数型的序号记录其在容器中的位置,可以根据此序号存取元素。主要实现类有 ArrayList 和 LinkedList。1.2List接口中的方法相对Collection接口扩展的方法Object get(int index); 通过索引获取元素Object set(int index,Object ele原创 2021-07-23 15:31:11 · 83 阅读 · 0 评论 -
Day14_Set
一、Set接口1.1set简介java.util.Set接口和java.util.List接口一样,同样继承自Collection接口,它与Collection接口中的方法基本一致,并没有对Collection接口进行功能上的扩充,只是比Collection接口更加严格了。与List接口不同的是,Set接口中元素无序,并且都会以某种规则保证存入的元素不出现重复。Set集合有多个子类,这里我们介绍其中的java.util.HashSet、java.util.LinkedHashSet、java.u原创 2021-07-23 13:57:05 · 102 阅读 · 0 评论 -
Day13_集合框架
一、Collection集合1.1 集合概述 集合:集合是java中提供的一种容器,可以用来存储多个数据。 集合和数组既然都是容器,它们有啥区别呢? 数组的长度是固定的。集合的长度是可变的。 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。 1.2 集合框架JAVASE提供了满足各种需求的API,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用哪个类,以及类原创 2021-07-22 17:19:06 · 110 阅读 · 0 评论 -
Day13_正则表达式
一、正则表达式1.1正则表达式的概念正则表达式是一个强大的字符串处理工具,可以对字符串进行查找、提取、分割、替换等工作。正则表达式是一个用来匹配字符串的模板。在java中定义的任何一个字符串都可以作为正则表达式使用。如果正则表达式只能匹配"abc"这样的字符串,那么正则表达式就不值得学习了。1.2判断字符串是否匹配正则表达式的方式 方式一 1 将一个字符串编译成Pattern对象。Pattern p = Pattern.compile(正则表达式);2 使用P原创 2021-07-22 14:57:52 · 239 阅读 · 0 评论 -
Day12_异常
异常处理1.1异常引入 现实生活中异常处理方式 现实生活中万物在发展和变化会出现各种各样不正常的现象。例如:人的成长过程中会生病。|——病|——不可治愈(癌症晚期)|——可治愈|——小病自行解决(上火,牙痛)|——去医院(发烧) 程序中意外情况的处理方式 1.传统方式:用if语句进行判断,并作相应的处理。public static void main(String[] args) { int x = 10; int y = 0;...原创 2021-07-21 19:51:04 · 121 阅读 · 0 评论 -
Day12_内部类
内部类1.1内部类的概念在一个类内部定义的类叫做内部类。包含这个内部类的类叫做外部类。一个器件可能会包含专用的内部器件,内部类的作用相当于这些内部器件。示例代码public class Demo01 { private int id; private String name; class MyInner{//内部类 }}class A{// 不是内部类 }1.2为什么使用内部类避免名字的泛滥和对外部不可见,...原创 2021-07-21 14:28:19 · 71 阅读 · 0 评论 -
Day11——工具类和常用类
一、工具类和常用类1.1Arrays类Arrays类为数组操作的工具类,提供了大量对数组进行操作的静态方法。toString() :把数组变成字符串格式示例代码int[] aa = {2,1,3,4,6}; String str = Arrays.toString(aa);sort() :对数组的数据进行排序示例代码int[] aa = {5,1,4,2,3};Arrays.sort(aa); // 默认是升序排序——如何降序(需要传入比较器)Stri.原创 2021-07-20 20:29:58 · 137 阅读 · 0 评论