- 博客(69)
- 收藏
- 关注
原创 2021.7.27_Sql获取Employees中的first_name,查询按照first_name最后两个字母,按照升序进行排列
2021.7.27_Sql获取Employees中的first_name,查询按照first_name最后两个字母,按照升序进行排列表结构CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16) NOT NULL,`gender` char(1) NOT NULL,`hire_d
2021-07-27 23:46:53
358
原创 2021.7.26_Sql使用子查询的方式找出属于Action分类的所有电影对应的title,description
2021.7.26_Sql使用子查询的方式找出属于Action分类的所有电影对应的title,description表结构film表字段说明film_id电影idtitle电影名称description电影描述信息category表字段说明category_id电影分类idname电影分类名称last_update电影分类最后更新时间film_category表字段说明film_id电影i
2021-07-27 00:14:57
287
原创 2021.7.25_Sql使用join查询方式找出没有分类的电影id以及名称
2021.7.25_Sql使用join查询方式找出没有分类的电影id以及名称1.表结构film表字段说明film_id电影idtitle电影名称description电影描述信息category表字段说明category_id电影分类idname电影分类名称last_update电影分类最后更新时间film_category表字段说明film_id电影idcategory_id电影
2021-07-26 00:00:32
236
原创 2021-07-23_Sql统计各个部门的工资记录数
2021-07-23_Sql统计各个部门的工资记录数有一个部门表departments简况如下:有一个,部门员工关系表dept_emp简况如下:有一个薪水表salaries简况如下:请你统计各个部门的工资记录数,给出部门编码dept_no、部门名称dept_name以及部门在salaries表里面有多少条记录sum,按照dept_no升序排序SELECT dep.dept_no,dep.dept_name,count(1) as sum FROM departments dep INNE
2021-07-23 20:03:46
400
原创 2021.07.22_Sql获取所有的员工和员工对应的经理,如果员工本身是经理的话则不显示
2021.07.22_Sql获取所有的员工和员工对应的经理,如果员工本身是经理的话则不显示有一个员工表dept_emp简况如下:有一个部门经理表dept_manager简况如下:获取所有的员工和员工对应的经理,如果员工本身是经理的话则不显示。SELECT emp.emp_no,manager.emp_no FROM dept_emp emp INNER JOIN dept_manager manager ON emp.dept_no = manager.dept_no WHERE
2021-07-22 22:10:57
1203
原创 2021.07.21_Sql找出所有员工当前薪水salary情况
2021.07.21_Sql找出所有员工当前薪水salary情况有一个薪水表,salaries简况如下:请你找出所有员工具体的薪水salary情况,对于相同的薪水只显示一次,并按照逆序显示。SqlSELECT DISTINCT salary FROM salaries ORDER by salary DESC...
2021-07-21 23:13:11
156
原创 2021.07.20_Sql查找薪水记录超过15次的员工号emp_no以及其对应的记录次数
2021.07.20_Sql查找薪水记录超过15次的员工号emp_no以及其对应的记录次数有一个薪水表,salaries简况如下:SELECT emp_no,COUNT(emp_no) as t FROM salaries GROUP BY emp_noHAVING COUNT(emp_no) > 15
2021-07-20 23:49:08
102
原创 2021.07.19_Sql查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示
查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示表结构员工表employees部门表dept_empsqlSELECT emp.last_name,emp.first_name,dep.dept_no FROM employees emp INNER JOIN dept_emp dep ON emp.emp_no = dep.emp_no...
2021-07-20 00:08:45
133
原创 2021.7.16_Sql查找当前薪水详情以及部门编号
查找当前薪水详情以及部门编号题目请你查找各个部门当前领导的薪水详情以及其对应部门编号dept_no,输出结果以salaries.emp_no升序排序,并且请注意输出结果里面dept_no列是最后一列表结构全部员工的薪水表salaries各个部门的领导表dept_managerSql语句SELECT sal.*,dep.dept_no FROM salaries sal INNER JOIN dept_manager dep ON sal.emp_no = dep.emp_no
2021-07-17 00:05:26
202
原创 2021.07.15_Sql查找入职时间排名倒数第三的员工所有信息
查找入职时间排名倒数第三的员工所有信息表结构有一个员工employees表简况如下:sql语句select * from employees order by hire_date desc limit 2,1
2021-07-16 00:04:44
198
原创 2021.07.14_Sql查找最晚入职员工的所有信息
2021.07.14_Sql查找最晚入职员工的所有信息表结构员工employees表如图所示sqlselect * from employees order by hire_date desc limit 1;
2021-07-14 23:51:30
253
原创 2021.07.13_Sql查询,登录日志相关
2021.07.13_Sql查询,登录日志相关表结构login_log日志表,表结构如下图所示问题一 查询2021-07-13日,每个用户最后登录日志信息SELECT `name`,MAX(`login_time`) as `last_time` FROM `login_log` WHERE `login_time` BETWEEN '2021-07-13 00:00:00' AND '2021-07-13 23:59:59' GROUP BY `name`问题二 查询每个用户,每天最
2021-07-14 00:39:31
429
原创 2021.7.12_Sql查询每门课程都大于80分学生的姓名
2021.7.13_SQL查询每门课程都大于80分学生的姓名问题描述有一张score表,表结构数据如下图所示,查询出每门课程都大于80分的学生的姓名方法一SELECT `name` FROM `score` GROUP BY `name`HAVING min(`grade`) >= 80方法二SELECT DISTINCT `name` FROM `score` WHERE `name` NOT IN( SELECT `name` FROM `score` W
2021-07-13 00:18:53
8329
原创 Git的基本使用
Git的基本使用将项目在远程仓库拉下来git clone http://…写完代码将文件添加到暂存区 git add 文件名将文件添加到本地仓库 git commit -m ‘注释’将文件推送的远程仓库拉取远程仓库代码 git pull判断是否发生代码冲突,若没有冲突,将本地仓库代码推送到远程仓库如发生代码冲突,解决冲突,重复写完代码步骤和文件推送远程仓库步骤...
2021-06-29 00:18:00
65
原创 HashMap浅读
HashMap浅读目标:根据源码,HashMap初始容量(Capity)、负载因子(loadFactor)、阈值(throhold)HashMap无参初始化·HashMap<String,String> map = new HashMap<>()·static final float DEFAULT_LOAD_FACTOR = 0.75f;//...public HashMap() { this.loadFactor = DEFAULT_LOAD_FACTOR;
2021-06-14 02:11:36
157
原创 Seata踩坑
Seata踩坑no available service 'null' found, please make sure registry config correct可能原因#vgroup_mapping.test_tx_group = "seata_tc_server" (错误)vgroupMapping.test_tx_group = "seata_tc_server"(正确)
2021-06-09 13:30:18
1603
原创 JVM深入理解
JVM深入理解类加载器过程加载:将class文件加载到内存校验:对class文件进行校验准备:为静态变量分配内存空间,设置默认值解析:静态链接,将符号引用链接为直接引用初始化:为静态变量设置指定的值,加载静态代码块类加载器启动类加载器:加载JRE目录下lib目录下的jar包应用类加载器:加载JRE目录lib目录下的etx目录下的jar包扩展类加载器:加载ClassPath目录下的jar包自定义类加载器:继承ClassLoad类,加载自己指定目录下jar包双亲委派机制的目的
2021-06-04 01:50:11
73
原创 力扣(07)一道简单题引起的一系列问题
力扣(07)一道简单题引起的一系列问题问题描述给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−2^31, 2^31 − 1] ,就返回 0。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-integer突发奇想(使用字符串反转解决问题)public static int reverse(int x) { boolean fla
2021-05-07 10:44:52
229
原创 二十三种设计模式(第二十三种)-----职责链模式(Chain of Resposibility)
二十三种设计模式(第二十三种)-----职责链模式(Chain of Resposibility)尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&seid=11487053970269878470职责链模式(Chain of Resposibility)又叫责任链模式,为请求创建一个接收者对象的链。这种模式对请求的发送者和接收者进行了解耦。职责链模式通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请
2021-03-26 08:47:40
139
原创 二十三种设计模式(第二十二种)-----策略模式(Strategy)
二十三种设计模式(第二十二种)-----策略模式(Strategy)尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&seid=11487053970269878470类图从上图可以看到,客户context有成员变量strategy或者其他的策略接口,至于需要使用到那个策略,我们可以在构造器中指定需求有各种鸭子(如:野鸭、北京鸭、水鸭等,鸭子有各种行为,比如叫、飞行等待)显示鸭子的信息需求类图代码1.鸭
2021-03-26 08:41:04
119
原创 二十三种设计模式(第二十一种)-----状态模式(State)
二十三种设计模式(第二十一种)-----状态模式(State)尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&seid=11487053970269878470状态模式(State Pattern):它主要用来解决对象在多种状态转换时,需要对外输出不同的行为的问题。状态和行为是一一对应的,状态之间可以相互转换当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类类图Context类为环境
2021-03-26 08:36:13
55
原创 二十三种设计模式(第二十种)-----解释器模式(Interpreter)
二十三种设计模式(第二十种)-----解释器模式(Interpreter)尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&seid=11487053970269878470在编译原理中,一个算术表达式通过词法分析器形成词法单元,而后这些词法单元再通过语法分析器构建语法分析树,最终形成一颗抽象的语法分析树。这里的词法分析器和语法分析器都可以看做是解释器解析器模式:是指给定一个语言(表达式),定义它的文法的一种表示,并
2021-03-26 08:29:26
114
原创 二十三种设计模式(第十九种)-----备忘录模式(Memento)
二十三种设计模式(第十九种)-----备忘录模式(Memento)尚硅谷视频连接https://www.bilibili.com/video/BV1G4411c7N4?from=search&seid=11487053970269878470备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态可以这样理解备忘录模式:现实生活中的备忘录是用来记录某些要去做的事情,或者是记录已经达成的共同意见的事情,以访忘记了。而在软件
2021-03-26 08:22:33
76
原创 二十三种设计模式(第十八种)-----中介者模式(Mediator)
二十三种设计模式(第十八种)-----中介者模式(Mediator)中介者模式:用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互中介者模式属于行为模式,使代码易于维护比如MVC模式,C(Controller控制器)是M(Model模型)和V(View视图)的中介者,在前后端交互时起到了中间人的作用类图需求需求类图代码1.同事抽象类public abstract class Colleague {
2021-02-23 09:08:01
127
1
原创 二十三种设计模式(第十七种)-----观察者模式(Observer)
二十三种设计模式(第十七种)-----观察者模式(Observer)观察者模式,对象之间多对一依赖的一种设计方案,被依赖的对象为Subject,依赖的对象为Observer,Subject通知Observer变化,比如这里的奶站是Subject,是1的一方,用户是Observer是多的一方。需求需求类图代码1.天气信息抽取方法,接口public interface Subject { void registerObserver(Observer o); void remove
2021-02-23 09:02:03
92
原创 二十三种设计模式(第十六种)-----迭代器模式(Iterator)
二十三种设计模式(第十六种)-----迭代器模式(Iterator)类图Iterator:迭代器接口,是系统提供,含义hasNext,next,removeConcreteIterator:具体的迭代器类,管理迭代Aggregate:一个统一的聚合接口,将客户端和具体聚合解耦ConcreteAggregate:具体的聚合持有对象的集合,并提供一个方法,返回一个迭代器可以正确遍历集合Client:客户端,通过Iterator和Aggregate依赖子类需求需求类图代码1.学院接口
2021-02-23 08:55:49
164
2
原创 二十三种设计模式(第十五种)-----访问者模式(Visitor)
二十三种设计模式(第十五种)-----访问者模式(Visitor)访问者模式,封装一些作用于某些数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作主要将数据结构与数据操作分离,解决数据结构和操作耦合性的问题访问者模式的基本工作原理:在被访问者的类里面加一个对外提供接待访问者的接口访问者模式主要应用场景是:需要对一个对象结构中的对象进行很多不同操作(这些操作彼此没有关联),同时需要避免让这些操作"污染"这些对象的类,可以选用访问者模式解决类图Visitor是
2021-02-20 01:08:58
311
原创 二十三种设计模式(第十四种)-----命令模式(Command)
二十三种设计模式(第十四种)-----命令模式(Command)命令模式:在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是那个,**我们只需在程序运行时指定具体的请求接收者即可,**此时,可以使用命令模式来进行设计命令模式使得请求发送者与请求接收者消除彼此间的耦合,让对象之间的调用关系更加灵活,实现解耦。在命令模式中,会将一个请求封装为一个对象,以便使用不同参数来表示不同的请求(即命令),同时命令模式也支持可撤销的操作通俗理解:将军发布命令,士兵去
2021-02-19 23:51:05
190
1
原创 二十三种设计模式(第十三种)-----模板方法模式(Template Method)
二十三种设计模式(第十三种)-----模板方法模式(Template Method)模板方法模式,又叫模板模式,在一个抽象类公开定义了执行它的方法的模板,它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方法执行。简单说,模板方法模式定义一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法结构,就可以重新定义该算法的某些特定步骤行为型模式类图案例案例类图代码1.豆浆抽象类public abstract class SoyaMilk { //模
2021-02-19 21:34:42
173
原创 二十三种设计模式(第十二种)-----代理模式(Proxy)
二十三种设计模式(第十二种)-----代理模式(Proxy)为对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象,这样做的好处是:可以在目标对象实现的基础上增强额外的功能操作,即扩展目标对象的功能。被代理的对象可以是远程对象、创建开销大的对象或需要安全控制的对象代理模式有不同的形式,主要有三种代理模式、静态代理、动态代理(JDK代理、接口代理)和Cglib代理(可以在内存动态的创建对象,而不需要实现接口,他属于动态代理的范畴)静态代理静态代理在使用时,需要定义接口或者父类,被
2021-02-19 20:28:24
106
原创 UML——类图
UML——类图用于描述系统中的类(对象)本身的组成和类(对象)之间的各种静态关系。类之间的关系:依赖、泛化(继承)、实现、关联、聚合、组合依赖关系(Dependency)A类中用到B类,具有依赖关系。A---->B类的成员属性方法的返回值方法接收的参数方法中使用到的(类的局部变量)泛化关系(Generalization)泛化关系就说继承关系,泛化关系就说依赖关系的特例A继承B A——|>B实现关系(Implementation)实现关系就说A类实现了B接
2021-02-10 11:00:57
114
原创 设计模式基础——设计模式的依据(七大基本原则)
设计模式基础——设计模式的依据(七大基本原则)接口隔离原则(Interface Segregation Principle)客户端不应该依赖它不需要的接口(一个接口中的方法不应该冗余)类间的依赖关系应该建立在最小接口上将接口进行拆分接口应该细化,同时接口中的方法应该尽量少依赖倒置原则(Dependence Inversion Principle)高层模块不应该依赖底层模块,二者都应该依赖其他抽象抽象不应该依赖细节,细节应该依赖抽象依赖倒置的中心思想是面向接口编程依赖倒置原则的设计理
2021-02-10 10:16:57
183
原创 二十三种设计模式(第十一种)-----享元模式(Flyweight)
二十三种设计模式(第十一种)-----享元模式(Flyweight)享元模式又叫蝇量模式,运用共享技术有效地支持大量细粒度的对象常用于系统底层开发,解决系统的性能问题。像数据库连接池,里面都是创建好的连接对象,在这些连接对象中有我们需要的则直接拿出来用,避免重新创建,如果没有我们需要的,则创建一个享元模式能解决重复对象的内存浪费的问题,当系统中有大量相似对象,需要缓冲层时。不需总是创建新的对象,可以从缓冲池里拿。这样可以降低系统内存,同时提高效率享元模式经典的应用就是池技术,String常量池、数
2021-02-09 00:34:48
106
原创 二十三种设计模式(第十种)-----外观模式(Facade)
二十三种设计模式(第十种)-----外观模式(Facade)外观模式:又叫过程模式,外观模式为子系统中的一组接口提供一个一致的界面,此模式定义一个高层接口,这个接口使得这一子系统更容易使用外观模式通过定义一个一致的接口,用以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关心这个子系统的内部细节需求组建一个家庭影院DVD播放器、投影仪、自动屏幕、环绕立体声、爆米花机,要完全使用家庭影院的功能,具体过程为:使用遥控器:统筹各设备开关开爆米花机放下屏幕开投影仪开音响开D
2021-02-08 23:32:02
92
原创 二十三种设计模式(第九种)-----组合模式(Composite)
二十三种设计模式(第九种)-----组合模式(Composite)组合模式,又叫部分整体模式,它创建了对象组的树行结构,将对象组合成树形结构以表示"整体-部分"的层次关系组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的模式属于结构型模式。组合模式使得用户对单个对象和组合对象的访问具有一致性,即:组合能让客户以一致的方式处理个别对象以及组合对象需求看一个学校院系展示需求编写程序展示一个学校院系结果:要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系。
2021-02-08 22:27:06
117
原创 二十三种设计模式(第八种)-----装饰者模式(Decorator)
二十三种设计模式(第八种)-----桥接模式(Decorator)装饰者模式:动态的将新功能附加到对象上。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(ocp)。装饰者就像打包一个快递需求星巴克咖啡订单项目咖啡种类/单品咖啡:Espresso(意大利浓咖啡)、ShortBlack、LongBlack(美式咖啡)、Decaf(无因咖啡)调料:Milk、Soy(豆浆)、Chocolate要求在扩展新的咖啡种类时,具有良好的扩展性、改动方便、维护方便使用OO来计算不同咖啡
2021-02-08 21:23:37
106
原创 二十三种设计模式(第七种)-----桥接模式(Bridge)
二十三种设计模式(第七种)-----桥接模式(Bridge)桥接模式(Bridge模式)是指:将实现与抽象放在两个不同的类层次种,使两个层次可以独立改变是一种结构型设计模式Bridge模式基于类的最小设计原则,通过使用封装、聚合及继承行为让不同的类承担不同的职责。它的主要特点是把抽象与行为实现分离开来,从而可以保持各部分的对立性以及应对他们的功能扩展需求不同类型的手机类图代码品牌接口public interface Brand { void open(); voi
2021-02-08 19:57:21
102
原创 二十三种设计模式(第六种)-----适配器模式(Adapter)
二十三种设计模式(第六种)-----适配器模式(Adapter)适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,主要目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别名为包装器(Wrapper)适配器模式属于结构型模式主要分为三类:类适配器模式、对象适配器模式、接口适配器模式三种命名方式:根据src是以什么样的方式给Adapter命名的类适配器基本介绍:Adapter类,通过继承src(源)类,实现dst(目标)类接口,完成sr
2021-02-08 01:14:59
254
原创 二十三种设计模式(第五种)-----建造者模式(Builder)
二十三种设计模式(第五种)-----建造者模式(Builder)建造者模式(Builder pattern)又叫生成器模式,是一种对象构建的模式。它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构建出不同表现(属性)的对象。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构造细节。建造者模式的四个角色Product(产品角色):一个具体的产品对象Builder(抽象建造者):建造一个Pro
2021-02-08 01:06:34
222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人