Uncategorized
6.5k words
Redis笔记花了大概两天完成,Java8内容的学习,比预期的要上了短一些,本来打算按照学习计划先进行Java开发框架的学习,但是发现面试的时候Redis考点会更多一点,所以将Redis部分的学习提前,预定大概10天完成(黑马Redis教程) 教程包括了:八种不同的数据结构,两个消息队列,四个相关的运维操作,Scrip脚本,事务操作 NoSQLSQL是关系型数据库,而NoSQL是非关系型数据库 与SQL的区别结构化SQL高度结构化,每个字段每个值都会有严格的要求,一般难以修改。而NoSQL是非结构化的,对于key没有严格要求,支持自定义,还可以键值类型,列类型,文档存储,Graph存储,相对SQL,结构便于修改 关联性SQL有外键的约束,数据是相关联的,NoSQL没有关联(程序员手动维护) SQL查询只要是SQL都可以使用相同的查询语句查询,而NoSQL没有固定的语法格式 每一个类型的数据查询方式不同 事务SQL有事务满足ACID,而NoSQL只满足BASE 总结 Redis基本介绍Remote Dictionary Server 远程词典服务器,是一个基于内存的键值型NoSQ...
Uncategorized
14k words
Java8笔记拖了一天,本来打算从昨天就开始Java8特性的学习。但是有门事多题难分少的编译原理实验课把自己搞得心烦,晚上就没有精力学习了。 第二天还要体测,38度的高温,就隔这室外干站着,等半天跑1000米,跑前本来想着4分30以内及格就好,压着脚步跑,结果才4分37,还贼累,险些没给自己跑死。 到了期中以后了,感觉时间也是慢慢的变得紧张了起来,还是尽量多学一会把,刚回宿舍躺了一小会,算是复活了,总而言之开始今天的学习吧 Java8为什么要学习Java8? Java8是当今企业中开发最主流的稳定版本,这个版本中出现了很多的新特性,虽然考点不多,但是可以提升Java后端开发程序员的编程效率,值得学习 相关知识有Lambda表达式、Stream API、Optional 计划加上今天晚上,明天,后天,一共三天完成相关知识的学习 Lambda表达式Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码,使用它可以写出更为简洁灵活的代码,代码风格更加紧凑 代码示例我们用一串代码举例子 多线程接口Runnable,实现一个类,重写run方法,start调用 1...
Uncategorized
14k words
JDBC笔记批处理基本介绍1.当需要成批插入或者更新记录的时候,可以使用Java批处理,这一机制允许多条语句一次性提交给数据库批量处理,通常情况下比单独提交更有效率 2.JDBC的批量处理语句包括了以下的方法 方法名称 说明 addBatch 添加需要批量处理的SQL语句或者参数 executeBatch 执行批量处理语句 clearBatch 清空批处理包的语句 3.JDBC连接MySQL时,如果要使用批处理,需要在url中添加参数 1?rewriteBatchedStatements=true 4.批处理往往与PreparedStatement一起搭配使用,可以及减少编译次数又减少运行次数,效率大大提升 传统的添加方式12345678910111213141516public class Test { @SuppressWarnings ({"all"}) public static void main(String[] args) throws Exception{ ...
Uncategorized
14k words
JDBC笔记JDBCJDBC是JAVA程序操作数据库的一种技术,在绝大多数的框架中JDBC一般都被封装在了各式各样的框架之中,这些框架之后也会学习。但是掌握JDBC是如何连接数据库,操作数据库,返回数据库结果,使用数据库返回结果这也是一个后端开发者应该掌握的基础,掌握了之后对后续框架的理解也是一种帮助 Java对于各大数据库厂商提供了一个连接操作的统一接口,其中定义的方法包括了连接、curd、关闭连接等。而数据库工资负责实现这一些接口,方便Java的开发者利用数据库接口去创建对应数据库实例的创建,再通过动态绑定机制调用数据库实现的相关方法,以下是一个代码示例方便理解(仅仅是模拟,不代表实际开发) Java数据库接口 12345public interface JdbcInterface { public Object getConnection(); public void crud(); public void close();} 数据库实现接口 1234567891011121314151617public class MysqlJdb...
Uncategorized
6.7k words
GITMysql基础部分内容结束,本来打算直接进入JDBC的学习,但是一来我有点小累,学不动Java了,二来我的编译原理课程需要使用到Git,实习的公司也要求熟练运用Git,所以就先看看这一个部分的知识,整理笔记并实际运用,预计今天(15号)一个晚自习和明天把这一块知识拿下(熟练使用Git、Github、GitLab、Gitee) 之前的博客中我也介绍了一下Git大体是个什么玩意,但是使用的是VsCode链接到的Github,而我现在学Java改用IDEA了,又需要重新配置一下才可以方便使用。 找的课程也就4~5个小时,就当过一遍教程了,对不了解的代码分支,分支合并学习一下,以下是该课程涉及的一些知识点(代码推送、代码拉取、代码克隆、IDEA集成Github、分支合并) 重要概念版本控制版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统 其中最重要的就是可以记录文件修改历史,从而让用户能够查看历史版本,方便切换版本 对于个人而言或许不太需要版本控制,但是如果一旦上升到公司集体,为了方便安全的对于代码进行修改(对于多个修改进行正确的合并),版本控制的使用就异常重要 ...
Uncategorized
5.6k words
MySQL习题我们系统的学完了MySQL相关知识,我们现在来用例题巩固一下我们的知识 练习一1.显示所有部门的名称 1select deptno,dname from dept; 2.显示所有雇员名以及全年收入(12*薪水 + 奖金)取名为年收入 这里道题注意null+数字为空,需要使用判断语句处理 12select ename, (sal*12 + if(comm is null,0,comm))as'年收入' from emp; 3.显示工资超过2850雇员的姓名以及工资 1select ename,sal from emp where sal > 2850; 4.显示工资不再1500到2850之间雇员的姓名以及工资 1select ename,sal from emp where sal > 2850 and sal < 1500; 5.显示编号为7796的雇员名称以及所在部门编号 1select ename,deptno from emp where empno=7796; 6.显示部门在20,30中工资超过1500的雇员名...
Uncategorized
9.6k words
MySQL自增长我们再插入记录的时候有的时候需要有的数据从1开始自动增长,我们这个时候就要运用到自增长 基本使用方式:在定义的时候设置auto_increment字段 1字段名称 整形 primary key auto_increment 插入记录的时候填入null 12345CREATE TABLE dept ( `deptno` INT primary key auto_increment,`dname` VARCHAR ( 30 ), `loc` VARCHAR ( 30 ) ); 1insert into dept values(null, 'ddd', 'beijing'); 如果你需要自增需要从10开始,你也可以修改auto_increment设置 1ALTER TABLE dept AUTO_INCREMENT = 10; 插入数据的时候子增值字段也可以不使用null,而插入一个具体的值 1insert into dept values(50, 'ddd', 'beijing')...
Uncategorized
20k words
MySQLMySQL表查询在实际开发的过程中,我们需要用到的查询不只有前面的简单查询,我们还需要学习一些更为符合实际的查询方式,如日期查询,多表查询等 相关表格我们先来建立几个表格,填入响应数据 员工表emp12345678910CREATE TABLE emp ( `empno` INT, `ename` VARCHAR ( 30 ), `job` VARCHAR ( 20 ), `mgr` INT, `hiredate` DATE, `sal` DOUBLE, `comm` DOUBLE,`deptno` INT ); 12345678INSERT INTO empVALUES ( 7396, 'SMITH', 'CLERK', 7902, '1990-12-17', 800.00, NULL, 20 ), ( 7499, 'ALLEN', 'SALESMAN', 7902, '1991-02-20', 1600.00, 300.00, 30 ), ( 7...
Uncategorized
9.9k words
MySQL笔记修改表我们修改表可以通过图形化界面进行修改,这一般比较方便,但是有一些限制,例如需要批量修改,条件限制的情况,我们也需要学会通过指令来对于表进行操作 添加列12ALTER TABLE table_name ADD(column datatype [DEFAULT expr], column datatype [DEFAULT expr]...); 修改列12ALTER TABLE table_name MODIFY(column datatype [DEFAULT expr], column datatype [DEFAULT expr]...); 删除列1ALTER TABLE table_name DROP(column); 重命名表1RENAME TABLE `oldTable` TO `newTable`; 查看表结构1desc newtable; 12345678910111213+------------+-------------+------+-----+---------+-------+| Field | Type ...
Uncategorized
6k words
MySQL​ 经过40天的Java学习,我系统性的学习了Java相关知识点,了解了各个知识点背后的源码逻辑,可以用Java语言实现各类算法,以及解决实际问题,独立的设计,编写相关项目。 ​ 而从今天开始我将开始数据库的学习,预计5天完成MySQL数据库基本操作的学习,之后运用JDBC完成一个实战项目 ​ 我在之前选修数据库课程的时候,只是停留在理论上,对于知识的理解也只是限于应付考试,为了更好的理解数据库以及更好的使用数据库,我决定再次回顾相关知识点,并且整理笔记 MySQL的基本使用关于MySQL的安装我就不过多赘述,因为之前也安装过了,详见各大网站上的安装使用教程照着安装即可 MySQL启动服务在我这里因为安装的时候设置为开机自动启用,所以不用执行该指令 1net start mysql 同样的如果需要停止服务 1net stop mysql 可以通过以下的指令查看数据库服务是否启用(root) 1sc query MySQL80 显示MySQL80在运行状态 12345678SERVICE_NAME: MySQL80 TYPE ...