- 博客(103)
- 资源 (1)
- 收藏
- 关注
原创 JS基础
输入输出语句<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <titl
2021-04-05 00:24:36
141
原创 HTML和CSS之移动端
meta视口标签<!DOCTYPE html><html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1, maximum-scale=1,user-scalable=no" /> <title></title> <
2021-03-31 15:02:38
345
原创 HTML与CSS之动画
2D转换之位移translate<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge">
2021-03-31 14:55:57
227
原创 10.Sql之分页查询
应用场景:当要显示的数据,一页显示不全,需要分页提交sql请求语法:select 查询列表from 表【join type join 表2on 连接条件where 筛选条件group by 分组字段having 分组后的排序order by 排序的字段】limit offset,size;offset要显示条目的起始索引(起始从0开始)size要显示的条目个数特点:①limit语句放在查询语句的最后②公式select 查询列表from 表limit (page-1)*s
2021-03-16 15:45:26
127
原创 8.Sql之99语法_连接查询
内连接():inner外连接左外():left【outer】右外(*):right【outer】全外:full【outer】交叉连接:cross语法:select 查询列表from 表1 别名 【连接类型】join 表2 别名on 连接条件【where 筛选条件】【group by 分组】【having 筛选条件】【order by 排序类型】#一)内连接/*语法:select 查询列表from 表1 别名inner join 表2 别名on 连接条件;分类:
2021-03-16 15:44:05
63
原创 7.Sql之连接查询
含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询笛卡尔乘积现象:表1有m行,表2有n行,结构=m*n行发生原因:没有有效的连接条件分类:按年代分类:sql92标准 仅支持内连接sql99标准【推荐】不支持全外按功能分类: 内连接 等值连接 非等值连接 自连接 外连接 左外连接 右外连接 全外连接 交叉连接#一、sql92标准#1.等值连接/*①多表等值连接的结果为多表的交集部分②n表连接,至少需要n-1个连接条件③多表的顺序没有要求
2021-03-16 15:42:59
49
原创 6.Sql之分组查询
语法:select 分组函数,列(要求出现在group by的后面)from 表【where 筛选条件】group by 分组的列表【order by 子句】注意:查询列表必须特殊,要求是分组函数和group by 后出现的字段特点:1.分组查询中的筛选条件分为两类数据源 位置 关键字分组前筛选 原始表 group by子句前面 where分组后筛选 分组后的结果集 group by字句后面 having①分组函数做条件肯定是放在having子句中②能用分组前筛选的
2021-03-16 15:42:11
254
原创 5.Sql之分组函数
功能:用作统计使用,又称为聚合函数或统计函数或组函数分类:sum 求和、avg 平均值、max 最大值、min 最小值、count 计算个数特点:1.sum、avg一般用于处理数值型max、min、count可以处理任何类型2.以上分组函数都忽略null值3.可以和distinct搭配使用4.count函数的单独介绍一般使用count(*)用作统计函数5.和分组函数一同查询的字段要求是group by后的字段#1.简单的使用SELECT SUM(salary) FROM employ
2021-03-16 15:41:21
216
原创 4.Sql之常见函数
/*select 函数名(实参列表) from 表;分类: 1.单行函数 concat、length、ifnull等 2.分组函数 功能:做统计使用,又称为统计函数、聚合函数、组函数 常见函数: 字符函数: length concat substr instr trim upper lower lpad rpad replace 数学函数: round ceil floor truncate mod 日期函数: now curdat
2021-03-16 15:40:13
57
原创 3.Sql之排序查询
/*语法:select 查询列表from 表where 筛选条件order by 排序列表 asc | desc*/# 案例:查询员工信息,工资从高到低排序SELECT * FROM employees ORDER BY salary DESC;SELECT * FROM employees ORDER BY salary ASC;#案例2:【添加筛选条件】查询部门编号>=90的员工信息,按入职时间的先后进行排序SELECT *FROM employeesWHERE dep
2021-03-16 15:38:23
91
原创 Java反射机制之调用运行时类的指定结构
调用指定的属性:@Testpublic void testField1() throws Exception { Class clazz = Person.class; //创建运行时类的对象 Person p = (Person) clazz.newInstance(); //1. getDeclaredField(String fieldName):获取运行时类中指定变量名的属性 Field name = clazz.getDeclaredField("n
2021-03-09 17:07:59
94
原创 Java反射机制之获取运行时类的完整结构
我们可以通过反射,获取对应的运行时类中所有的属性、方法、构造器、父类、接口、父类的泛型、包、注解、异常等。。。。典型代码:@Testpublic void test1(){ Class clazz = Person.class; //获取属性结构 //getFields():获取当前运行时类及其父类中声明为public访问权限的属性 Field[] fields = clazz.getFields(); for(Field f : fields){
2021-03-09 17:06:47
92
原创 Java反射机制之创建运行时类的对象
1.代码举例Class<Person> clazz = Person.class;Person obj = clazz.newInstance();System.out.println(obj);2.说明newInstance():调用此方法,创建对应的运行时类的对象。内部调用了运行时类的空参的构造器。要想此方法正常的创建运行时类的对象,要求:1.运行时类必须提供空参的构造器2.空参的构造器的访问权限得够。通常,设置为public。在javabean中要求提供一个publi
2021-03-09 17:05:45
115
原创 Java反射机制之了解ClassLoader
1.类的加载过程----了解2.类的加载器的作用3.类的加载器的分类4.Java类编译、运行的执行的流程5.使用Classloader加载src目录下的配置文件@Test public void test2() throws Exception { Properties pros = new Properties(); //此时的文件默认在当前的module下。 //读取配置文件的方式一:// FileInputS
2021-03-09 17:04:53
220
原创 Java反射机制之Class类的理解和获取Class类的实例
1.Class类的理解1.类的加载过程:程序经过javac.exe命令以后,会生成一个或多个字节码文件(.class结尾)。接着我们使用java.exe命令对某个字节码文件进行解释运行。相当于将某个字节码文件加载到内存中。此过程就称为类的加载。加载到内存中的类,我们就称为运行时类,此运行时类,就作为Class的一个实例。2.换句话说,Class的实例就对应着一个运行时类。3.加载到内存中的运行时类,会缓存一定的时间。在此时间之内,我们可以通过不同的方式来获取此运行时类。2.获取Class实
2021-03-09 17:00:46
119
原创 Java反射机制之反射的概述
1.本章的主要内容2.关于反射的理解Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。框架 = 反射 + 注解 + 设计模式。3.体会反射机制的“动态性”//体会反射的动态性@Testpublic void test2(){ for(int i = 0;i < 100;i++){ int num = new Random().nextInt
2021-03-09 16:47:28
82
原创 Java网络编程之URL
1.URL(Uniform Resource Locator)的理解:统一资源定位符,对应着互联网的某一资源地址2.URL的5个基本结构:http://localhost:8080/examples/beauty.jpg?username=Tom协议 主机名 端口号 资源地址 参数列表3.如何实例化:URL url = new URL(“http://localhost:8080/examples/beauty.jpg?username=Tom”);4.常用方法
2021-03-07 15:13:37
101
转载 Java网络编程之UDP网络编程
代码示例://发送端@Testpublic void sender() throws IOException { DatagramSocket socket = new DatagramSocket(); String str = "我是UDP方式发送的导弹"; byte[] data = str.getBytes(); InetAddress inet = InetAddress.getLocalHost(); DatagramPacket packe
2021-03-07 15:11:50
61
原创 Java网络编程之TCP网络编程
代码示例1:客户端发送信息给服务端,服务端将数据显示在控制台上//客户端 @Test public void client() { Socket socket = null; OutputStream os = null; try { //1.创建Socket对象,指明服务器端的ip和端口号 InetAddress inet = InetAddress.getByName("192.168.1
2021-03-07 15:11:09
63
原创 Java网络编程之InetAddress的使用
一、实现网络通信需要解决的两个问题1.如何准确地定位网络上一台或多台主机;定位主机上的特定的应用2.找到主机后如何可靠高效地进行数据传输二、网络通信的两个要素:1.对应问题一:IP和端口号2.对应问题二:提供网络通信协议:TCP/IP参考模型(应用层、传输层、网络层、物理+数据链路层)三、通信要素一:IP和端口号1.IP的理解IP:唯一的标识 Internet 上的计算机(通信实体)在Java中使用InetAddress类代表IPIP分类:IPv4 和 IPv6 ; 万维网
2021-03-07 15:08:24
230
原创 JavaIO流之Path、Paths、Files的使用
1.NIO的使用说明:Java NIO (New IO,Non-Blocking IO)是从Java 1.4版本开始引入的一套新的IO API,可以替代标准的JavaIO API。NIO与原来的IO同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的(IO是面向流的)、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。随着 JDK 7 的发布,Java对NIO进行了极大的扩展,增强了对文件处理和文件系统特性的支持,以至于我们称他们为 NIO.2。2.Path的使用
2021-03-07 15:04:21
105
原创 JavaIO流之RandomAccessFile的使用
1.随机存取文件流:RandomAccessFile2.使用说明:1.RandomAccessFile直接继承于java.lang.Object类,实现了DataInput和DataOutput接口2.RandomAccessFile既可以作为一个输入流,又可以作为一个输出流3.如果RandomAccessFile作为输出流时,写出到的文件如果不存在,则在执行过程中自动创建。如果写出到的文件存在,则会对原文件内容进行覆盖。(默认情况下,从头覆盖)4. 可以通过相关的操作,实现RandomAcce
2021-03-07 15:01:34
203
原创 JavaIO流之对象流的使用
1.对象流:ObjectInputStream 和 ObjectOutputStream2.作用:ObjectOutputStream:内存中的对象—>存储中的文件、通过网络传输出去:序列化过程ObjectInputStream:存储中的文件、通过网络接收过来 —>内存中的对象:反序列化过程3.对象的序列化机制:对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。//当其它程序获取了
2021-03-07 14:59:27
217
原创 JavaIO流之其他的流的使用
1. 标准的输入输出流:System.in:标准的输入流,默认从键盘输入System.out:标准的输出流,默认从控制台输出修改默认的输入和输出行为:System类的setIn(InputStream is) / setOut(PrintStream ps)方式重新指定输入和输出的流。public static void main(String[] args) { BufferedReader br = null; try { //造流
2021-03-06 12:00:30
101
原创 JavaIO流之编码集
1.常见的编码表ASCII:美国标准信息交换码。用一个字节的7位可以表示。ISO8859-1:拉丁码表。欧洲码表用一个字节的8位表示。GB2312:中国的中文编码表。最多两个字节编码所有字符GBK:中国的中文编码表升级,融合了更多的中文文字符号。最多两个字节编码Unicode:国际标准码,融合了目前人类使用的所字符。为每个字符分配唯一的字符码。所有的文字都用两个字节来表示。UTF-8:变长的编码方式,可用1-4个字节来表示一个字符。2.对后面学习的启示客户端/浏览器端 <--
2021-03-06 11:55:19
92
原创 JavaIO流之转换流的使用
1.转换流涉及到的类:属于字符流InputStreamReader:将一个字节的输入流转换为字符的输入流解码:字节、字节数组 —>字符数组、字符串OutputStreamWriter:将一个字符的输出流转换为字节的输出流编码:字符数组、字符串 —> 字节、字节数组说明:编码决定了解码的方式2.作用:提供字节流与字符流之间的转换3.图示:4.典型实现:@Test public void test1() throws IOException { Fil
2021-03-06 11:54:17
188
原创 JavaIO流之缓冲流的使用
1.缓冲流涉及到的类:BufferedInputStreamBufferedOutputStreamBufferedReaderBufferedWriter2.作用:作用:提供流的读取、写入的速度提高读写速度的原因:内部提供了一个缓冲区。默认情况下是8kb3.典型代码3.1 使用BufferedInputStream和BufferedOutputStream:处理非文本文件//实现文件复制的方法 public void copyFileWithBuffered(String s
2021-03-06 11:51:24
86
原创 JavaIO流之节点流(或文件流)
整理说明:看了康师傅教学视频的笔记1.FileReader/FileWriter的使用:1.1 FileReader的使用/*将day09下的hello.txt文件内容读入程序中,并输出到控制台说明点:1. read()的理解:返回读入的一个字符。如果达到文件末尾,返回-12. 异常的处理:为了保证流资源一定可以执行关闭操作。需要使用try-catch-finally处理3. 读入的文件一定要存在,否则就会报FileNotFoundException。 */@Test pub
2021-03-06 11:47:49
100
原创 JavaIO流之概述
1.流的分类1.操作数据单位:字节流、字符流2.数据的流向:输入流、输出流3.流的角色:节点流、处理流2.流的体系结构说明:红框对应的是IO流中的4个抽象基类。蓝框的流需要大家重点关注。3.重点说明的几个流结构4.输入、输出的标准化过程4.1 输入过程① 创建File类的对象,指明读取的数据的来源。(要求此文件一定要存在)② 创建相应的输入流,将File类的对象作为参数,传入流的构造器中③ 具体的读入过程:创建相应的byte[] 或 char[]。④ 关闭流资源说明:程序
2021-03-06 11:44:30
86
原创 javaIO流之File类的使用
1.File类的理解File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)File类声明在java.io包下File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成。后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的"终点".2.File的实例化常用构造器File(String filePath)File(String parentPath,Str
2021-02-28 16:31:42
140
原创 java泛型之通配符
1.通配符的使用/* 通配符的使用 通配符:? 类A是类B的父类,G<A>和G<B>是没关系的,二者共同的父类是:G<?> */ @Test public void test3(){ List<Object> list1 = null; List<String> list2 = null; List<?> list
2021-02-28 16:29:09
55
原创 java泛型之泛型在继承上的体现
/* 1. 泛型在继承方面的体现 虽然类A是类B的父类,但是G<A> 和G<B>二者不具备子父类关系,二者是并列关系。 补充:类A是类B的父类,A<G> 是 B<G> 的父类 */ @Test public void test1(){ Object obj = null; String str = null; obj = str;
2021-02-28 16:28:07
103
原创 java泛型之自定义泛型类、泛型接口、泛型方法
整理说明:康师傅java教学笔记1.举例:【Order.java】public class Order<T> { String orderName; int orderId; //类的内部结构就可以使用类的泛型 T orderT; public Order(){ //编译不通过// T[] arr = new T[10]; //编译通过 T[] arr = (T[]) new O
2021-02-28 16:26:59
155
1
原创 java泛型之泛型在集合中的使用
声明:康师傅java教学课后笔记1.泛型的概念所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时确定(即传入实际的类型参数,也称为类型实参)。2.泛型的引入背景集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,所以在JDK1.5之前只能把元素类型设计为Object,JDK1.5之后使用泛型来解决。因为这个时候除了元素的类型不确定,其他的部分
2021-02-28 16:22:26
294
原创 java集合之Collection工具类的使用
整理说明:康师傅java基础学习笔记1.作用:操作Collection和Map的工具类2.常用方法:reverse(List):反转 List 中元素的顺序shuffle(List):对 List 集合元素进行随机排序sort(List):根据元素的自然顺序对指定 List 集合元素升序排序sort(List,Comparator):根据指定的 Comparator 产生的顺序对 List 集合元素进行排序swap(List,int, int):将指定 list 集合中的 i 处元素和 j 处
2021-02-21 16:07:50
92
原创 Java集合之Map接口
1.常用实现类结构Map:双列数据,存储key-value对的数据 —类似于高中的函数:y = f(x)|----HashMap:作为Map的主要实现类;线程不安全的,效率高;存储null的key和value|-----------LinkedHashMap:保证在遍历map元素时,可以照添加的顺序实现遍历。原因:在原的HashMap底层结构基础上,添加了一对指针,指向前一个和后一个元素。对于频繁的遍历操作,此类执行效率高于HashMap。|----TreeMap:保证照添加的key-v
2021-02-21 16:04:33
59
原创 Java集合之Set接口
1. 存储的数据特点:无序的、不可重复的元素具体的:以HashSet为例说明:无序性:不等于随机性。存储的数据在底层数组中并非照数组索引的顺序添加,而是根据数据的哈希值决定的。不可重复性:保证添加的元素照equals()判断时,不能返回true.即:相同的元素只能添加一个。2. 元素添加过程:(以HashSet为例)我们向HashSet中添加元素a,首先调用元素a所在类的hashCode()方法,计算元素a的哈希值,此哈希值接着通过某种算法计算出在HashSet底层数组中的存放位置(即为:
2021-02-15 12:58:31
112
2
原创 Java集合之List接口
1. 存储的数据特点:存储序的、可重复的数据。2. 常用方法:(记住)增:add(Object obj)删:remove(int index) / remove(Object obj)改:set(int index, Object ele)查:get(int index)插:add(int index, Object ele)长度:size()遍历:① Iterator迭代器方式② 增强for循环③ 普通的循环3. 常用实现类:|----Collection接口:单列集合,用来存储一
2021-02-15 12:55:14
83
1
原创 Java集合之Iterator接口和foreach循环
1.遍历Collection的两种方式:① 使用迭代器Iterator ② foreach循环(或增强for循环)2.java.utils包下定义的迭代器接口:Iterator2.1说明:Iterator对象称为迭代器(设计模式的一种),主要用于遍历 Collection 集合中的元素。GOF给迭代器模式的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。迭代器模式,就是为容器而生。2.2作用:遍历集合Collectiton元素2.3如何获取
2021-02-15 12:50:56
218
2
原创 Java集合之Collection接口
1.单列集合框架结构|----Collection接口:单列集合,用来存储一个一个的对象 |----List接口:存储序的、可重复的数据。 -->“动态”数组 |----ArrayList、LinkedList、Vector |----Set接口:存储无序的、不可重复的数据 -->高中讲的“集合” |----HashSet、LinkedHashSet、TreeSet2.Collection接口常用方法
2021-02-15 12:48:41
103
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人