追随狂神学Java
hyx的java学习笔记
学习资料:狂神java视频
程序猴hyx
本科毕业于北京某程序猿技校,现本校研究生在读
展开
-
狂神Java学习笔记————MySQL(六)————JDBC和数据库连接池
JDBCJava数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。java.sqljavax.sql导入mysql-connector-java-5.1.49在idea中点击flie-projectstructuremodules-dependenc原创 2020-06-25 17:32:05 · 1999 阅读 · 0 评论 -
狂神Java学习笔记————MySQL(五)————事务,索引,用户管理,数据库备份和规范数据库数据(三大范式)
事务要么都成功,要么都失败(类似try代码块?)一一一一一一一一一一一一一A给B转账SQL1 A账面转出SQL2 B账面收到一一一一一一一一一一一一一若SQL2执行时或执行前出现错误,则SQL1也不生效,否则,A账面白白减少。事务原则:ACID原则:原子性,一致性,隔离性,持久性(脏读,幻读)原子性:对于一个事务中的多个动作,要么都成功要么都失败,不可分离一致性:针对一个事务操作前与后的状态一致持久性:事务结束后的数据不会因外界原因导致数据丢失(若事务没有提交则应该恢复原状,否则保原创 2020-06-23 21:59:44 · 451 阅读 · 0 评论 -
狂神Java学习笔记————MySQL(四)————嵌套查询,分组和过滤,函数和MySQL中的md5加密
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++原创 2020-06-22 21:58:38 · 283 阅读 · 0 评论 -
狂神Java学习笔记————MySQL(二)————where子句,联表查询,分页和排序
where 条件子句逻辑运算符运算符语法描述and &&a and b a&&b逻辑与,ab都为真则为真,否则为假or ||a or b a||b逻辑或,ab都为假则为假,否则为假Not !not a !a逻辑非,a为真则假,a为假则真尽量使用户英文字母-- 查询成绩在95到100之间学生的成绩SELECT `StudentId` , `StudentResult` FROM `result`WHE原创 2020-06-19 17:58:40 · 276 阅读 · 0 评论 -
狂神Java学习笔记————MySQL(二)————外键和数据库数据的增删改查
外键外键可以理解为两个表在现实世界中的一种联系在数据库中的体现。比如:学生信息表和班级表存在联系:一个学生必须且只能在一个存在的班级,一个班级可以有很多学生(一对多)教师信息表和班级表存在联系:老师必须教的是存在的班级,一个班级对应多个老师,一个老师也可能对应多个班级(多对多)以下方式一、二为物理外键,即数据库级别的外键,并不推荐使用!外键定义:方式一:创建表时添加约束-- 主表班级CREATE TABLE IF NOT EXISTS `class`( `id` INT(原创 2020-06-18 21:29:12 · 305 阅读 · 0 评论 -
狂神Java学习笔记————MySQL(一)————数据类型、字段属性和基本操作语句(上)
基本命令行修改密码UPDATE mysql.user SET aunthentication_string=PASSWORD('123456') WHERE USER='root' AND HOST='localhost';--更改用户名为root的密码flush privileges; --刷新权限所有语句都以;结尾。-- 单行注释/*多行注释*/SHOW DATABASES; -- 查看所有数据库USE school;-- 切换数据库SHOW TABLES;-- 查看当原创 2020-06-17 23:19:27 · 349 阅读 · 0 评论 -
狂神Java学习笔记————JavaScript(三)————DOM操作和jQuery
需要注意:关于节点(Node)和元素(Element)getElement和getElementsDOMDOM:文档对象模型浏览器网页就是一个DOM树形结构对DOM节点进行增删改查获取DOM节点注意:Element是直接获取节点,即在接下来可以直接通过"."对节点进行操作,而Elements是获取一个节点数组,即使满足条件的节点只有一个,也需要取出数组中的第i个来真正取得节点。 //标签选择器 let h1=document.getElementsBy原创 2020-06-15 21:10:51 · 884 阅读 · 1 评论 -
狂神Java学习笔记————JavaScript(三)————面向对象和BOM
面向对象JavaScript、Java、C#。。。。面向对象;JavaScript有些区别类:模版对象:具体的实例在JavaScript中有所不同原创 2020-06-14 19:47:43 · 575 阅读 · 0 评论 -
狂神Java学习笔记————JavaScript(二)————函数、方法、变量作用域和内部对象
函数定义一:function 函数名(参数){函数体};定义二:let 函数名=function(参数){函数体}; //函数定义 function abs1(x) { if (x>=0){ return x; }else { return -x; } } //匿名函数,把匿名函数赋值给abs2,原创 2020-06-12 20:27:17 · 245 阅读 · 0 评论 -
狂神Java学习笔记————JavaScript(一)————JavaScript基本语法和基本数据类型
JavaScript引入外部引入:添加script标签,在标签内添加属性src指向js文件内部引入:在html内添加script标签,在script标签内直接写<head> <meta charset="UTF-8"> <title>JS1</title><!-- 内部引入:在script标签内写JavaScript代码--> <script> alert("hello")原创 2020-06-11 22:00:21 · 554 阅读 · 0 评论 -
狂神Java学习笔记————CSS3(二)————列表、背景、盒子模型、浮动、定位和z-index
列表样式可以更改列表中点的样式或者去掉点复习之前内容#nav{ width: 300px; } .title{ font-size: 18px; font-weight: bold; text-indent: 1em; line-height: 35px; } ul li{ height: .原创 2020-06-10 21:03:21 · 288 阅读 · 0 评论 -
狂神Java学习笔记————CSS3(一)————CSS导入方式,选择器,伪类和字体文本样式
cascading style sheet 层叠级联样式表CSS:表现层(美化网页)字体,颜色,边距,高宽,背景图片,网页定位,网页浮动。。。第一段css:该段选择h1标签,将颜色指定为红色h1{ color: red;}CSS的导入方式行内样式内部样式外部样式<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title&.原创 2020-06-09 21:48:14 · 508 阅读 · 0 评论 -
狂神Java学习笔记————HTML(二)
列表列表就是信息资源的一种展现形式,它可以使信息结构化条理化,并且以列表的样式显示出来,以便浏览者能更快捷地获取相应的信息可以在列表中嵌套列表,内列表和外层列表缩进明显区分<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>列表</title></head><body><!--有序列表--原创 2020-06-08 16:27:33 · 815 阅读 · 0 评论 -
狂神Java学习笔记——HTML(一)
初识HTMLHyperTextMarkupLanguage(超文本标记语言)< body >、< /body>等成对的标签,分别叫做开放标签和闭合标签,单独呈现的标签(空元素),如< hr/ >;意为用/来关闭空元素。html注释:< !–注释内容–><!--DOCTYPE:告诉浏览器使用什么规范(默认是html)--><!DOCTYPE html><!--语言 zh中文 en英文--><htm原创 2020-06-08 11:03:27 · 691 阅读 · 0 评论 -
狂神Java学习笔记——注解和反射(二)
获取运行时类的完整结构Field、Method、Constructor、Superclass、Interface、Annotation//获得类的信息public class Test1 { public static void main(String[] args) throws Exception { Thread thread=new Thread(); Class c1=thread.getClass(); //类的名字原创 2020-06-05 19:25:37 · 1128 阅读 · 0 评论 -
狂神Java学习笔记——注解和反射(一)
注解和注释一样,注解不是程序本身,而是对程序作出解释,而注解与注释不同的点在于,注解可以被其他程序比如编译器读取@Override//重写注解@Deprecated//不推荐使用注解,可以使用但是又风险或者有更好的方式@SuppressWarnings//“镇压”警告注解元注解元注解的作用解释注解其他注解,Java定义了4个标准的meta-annotation类型,他们被用来提供对其他annotation类型做说明4个元注解分别为:@Target:用于描述注解的使用范围@Ret原创 2020-06-04 20:50:34 · 2864 阅读 · 0 评论 -
狂神java学习笔记——网络编程
IPip地址:在计算机网络中,唯一确定一台计算机127.0.0.1:本机回环地址ip地址的分类(IPV4)分为A类、B类、C类地址,其区别在于A、B、C类子网的个数和所包含的地址个数不同。局域网网段10.0.0.0~10.255.255.255、172.16.0.0~172.31.255.255、192.168.0.0~192.168.255.255不会在公网中出现以及一些预留地址在对应子网中,第一个ip地址表示整个子网的地址,最后一个ip是这个子网的广播地址//测试p原创 2020-06-02 16:35:36 · 2037 阅读 · 1 评论 -
多线程(五)————线程同步和线程间通信
ArrayList 是线程不安全的ArrayList是线程不安全的,而juc下CopyOnWriteArrayList是线程安全的。//测试JUC安全类型的集合public class Test1 { public static void main(String[] args) throws InterruptedException { //多个线程同时往CopyOnWriteArrayList加入元素 CopyOnWriteArrayList<St原创 2020-05-30 17:48:18 · 178 阅读 · 0 评论 -
多线程(四)————线程方法和线程同步
线程的优先级线程的优先级有1-10十级,数值越高优先级越高(超出范围会抛出异常)getPriority()和setPriority(int)分别用来获取和设置线程的优先级优先级高只是增加对应线程被cpu调度执行的概率,并不代表该线程会一直比优先级低的线程先执行**注意:**线程设置优先级建议在线程启动之前public class Test1 implements Runnable { @Override public void run() { System.ou原创 2020-05-27 22:14:16 · 198 阅读 · 0 评论 -
多线程(三)————线程的状态和线程的方法
05 线程的状态新生状态:线程对象创建后,即进入新生状态就绪状态:通过调用线程对象的start()方法,线程进入就绪状态(但是这并不意味着线程立即被调度执行),等待被调度真正执行运行状态:线程中的代码块真正意义上被执行阻塞状态:当调用sleep()、wait()或者同步锁时,线程进入阻塞状态,即暂停运行,直到阻塞事件接触,继续执行线程(进入就绪状态等待被调度)死亡状态:线程中断或者运行结束,进入此状态后的线程,就不能再次启动(即使是调用start()方法从头执行也不可以)06 线程的方法原创 2020-05-25 16:37:53 · 137 阅读 · 0 评论 -
多线程(二)————静态代理和Lamda表达式
03 静态代理模式真实对象和代理对象都要实现一个接口;代理对象一定要代理真实对象;代理对象可以做真实对象做不了的事情;真实对象专注做自己的事情;在前面多线程创建中的“实现Runnable”接口方法中,线程的启动应该(?)使用的就是代理。 public class Test1 { public static void main(String[] args) { Ck ck = new Ck(new Hyx()); ck.HappyMarry(); }原创 2020-05-23 17:45:38 · 188 阅读 · 0 评论 -
多线程 (一)————线程创建方式和多线程操作同一对象可能存在的问题
01 线程创建继承Tread类这里在每个控制台输出语句之后,增加sleep()函数,可以更明显得看出线程间“交替执行”或者说“并行执行”的效果。public class MyFirstThread extends Thread{ @Override public void run(){ for (int i = 0; i <10; i++) { System.out.println("我是副线程"+i); //加入slee原创 2020-05-23 16:30:55 · 476 阅读 · 0 评论 -
GUI小游戏——贪吃蛇
GUI之贪吃蛇前言前言在跟着视频敲的时候出现了一些bug可能是jdk版本问题 我用的jdk11主要问题就是随机玄学监听不到键盘事件其他都是一些小问题了可能和视频代码有出入,一是因为改bug乱撞二是看到24一半之后就自己敲着试试了废话不多说上代码启动类 创建窗体和添加组件package snake;import javax.swing.*;import java.awt.*;//启动类 主窗口 创建游戏panel、添加监听public class StartGame ex原创 2020-05-19 14:14:07 · 850 阅读 · 1 评论