![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
文章平均质量分 79
王小小鸭
愿世间再无bug!
展开
-
java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed【错误记录】
初步判断是驱动的问题,在pom.xml上设置版本号(很多都是5.7版本,现在大多是8.0版本)之前用的数据库是网络公共的,后来用的自己的数据库更改了相关配置,多加了东西,改正过来即可正常使用。再次启动依然报错,于是仔细查看后发现是application.yml的URL配置有误,原创 2023-07-18 10:24:42 · 388 阅读 · 0 评论 -
多表联查及mybatis中@Results,@ResultMap注解的应用
而在项目中的具体应用,如用户信息表采用多表联查,user用户表新增用户一进去就触发方法自动生成账号,账号会在后端进行查重验证,还以手动刷新,自动查询所有部门,选择部门后可查找对应职位展示出来供操作者选择,调用角色表查找所有角色可供选择,新增成功后会分页按时间倒序输出。一般查询语句都是针对一个表的,但是在关系型数据库中,表与表之间是有联系的,所以在实际应用中,经常使用。在 MySQL 中,多表查询主要有交叉连接、内连接、外连接、分组查询与子查询等5种。查询部门表、职位表、角色表。选择好部门会展示对应职位↓。原创 2023-05-17 10:49:27 · 1157 阅读 · 0 评论 -
【7.精选分类】
精选旅游最新旅游→日期最新主题旅游→主题关键字相同在首页将精选的内容动态展示的实现分析首页中的精选包含“人气旅游”、“最新旅游”、“主题旅游”三个部分index.html//页面加载完成,发送ajax请求根据点击不同分类展示不同内容最新旅游→日期最新(rdate)主题旅游→主题关键字相同(theme)index.html改写前首先index.html中的标签添加id。原创 2023-03-09 09:44:35 · 285 阅读 · 0 评论 -
【6.我的收藏和收藏排行榜】
分析前台代码判断用户是否登录,传递uid,通过uid查找其对应的rid集合当查询的属性涉及到多张表,则必须使用多表连接,此时子查询也不再适用语法:select 查询列表from 表1 别名【inner】 join 表2 别名 on 连接条件where 筛选条件group by 分组列表having 分组后的筛选order by 排序列表limit 子句;查询结果:查询语句后台代码实体类中并无与tab_favorite表中对应的uid,rid,Date属性,原创 2023-03-02 19:19:24 · 513 阅读 · 0 评论 -
三层架构及实例
通过对上述三层架构的学习,下面大家在上面这个案例的基础之上完成 学生的注册功能,分析:注册相当于往数据库表中添加一条数据。注意用代码判断输入的信息是否有误。原创 2022-09-29 15:11:00 · 611 阅读 · 0 评论 -
MYSQL知识点补充
在数据之外,数据库还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用指向数据,这样就可以在这些数据结构上实现高效查找,这些数据结构就是索引。简单来说索引的出现就是为了提高数据的查询效率,就像书的目录一样。在书籍中,用户不必翻阅完整个书就能根据目录迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。原创 2022-09-17 15:06:46 · 2646 阅读 · 0 评论 -
DML(data manipulation language)数据操纵语言& DDL(data definition language)数据定义语言
1.1 数据库操作* 创建数据库:* create database 数据库名称;* 创建数据库,判断不存在,再创建:* create database if not exists 数据库名称;* 创建数据库,并指定字符集* create database 数据库名称 character set 字符集名;* 查询所有数据库的名称:* 查询某个数据库的字符集:查询某个数据库的创建语句* show create database 数据库名称;原创 2022-09-15 20:29:34 · 347 阅读 · 0 评论 -
DQL语言进阶3
案例3:返回其它部门中比job_id为‘IT_PROG’部门所有工资都低的员工 的员工号、姓名、job_id 以及salary。#案例2:返回其它工种中比job_id为‘IT_PROG’工种任一工资低的员工的员工号、姓名、job_id 以及salary。#案例2:返回job_id与141号员工相同,salary比143号员工多的员工 姓名,job_id 和工资。#③查询员工的姓名,job_id 和工资,要求job_id=①并且salary>②。WHERE 连接条件。HAVING 分组后筛选条件。原创 2022-09-15 17:17:04 · 357 阅读 · 0 评论 -
DQL语言进阶2
SELECT last_name,commission_pct,IF(commission_pct IS NULL,'没奖金,好家伙','有奖金,笑嘻了') 备注。SELECT DATE_FORMAT(NOW(),'%Y年%m月%d日') AS out_put;SELECT CONCAT(last_name, '_',first_name) 姓名 FROM employees;SELECT REPLACE('张无忌爱上了周芷若','周芷若','赵敏')AS out_put;#September。原创 2022-09-13 16:30:14 · 286 阅读 · 0 评论 -
DQL语言实例(Data QueryLanguage 数据查询语言)
- 1. 查询员工号为176的员工的姓名和部门号和年薪12(1+IFNULL(commission_pct,0)) AS 年薪 FROM employees WHERE employee_id in(176);-- 2. 选择工资不在5000到12000的员工的姓名和工资 -- 方式一: SELECT first_name,last_name, salary FROM employees WHERE salary < 5000 OR salary > 12000;原创 2022-09-15 20:30:26 · 894 阅读 · 0 评论 -
MySql配置环境变量及修改密码
查阅很多资料后发现出现这个问题基本上与my.ini配置文件以及data文件有关,不是my.ini配置文件内容错误就是没有data文件夹或者自己新建文件夹而导致没办法用 mysqld --initialize 命令建立data文件夹,我的mysql的路径和data路径不在一起,并且。正常情况下应该会显示 “mysql 服务已经启动成功后”,可是却出现服务没有任何报错无法启动的异常,初步怀疑是之前服务我没改mysql启动类型,依旧是“自动”,将其改为“手动”右键我的电脑选择【属性】→【高级系统设置】原创 2022-09-05 14:36:01 · 948 阅读 · 0 评论 -
与MySQL的纠缠(卸载与安装)
其一是电脑设备名会被配置到配置文件中(xxx.ini),我之前重装过系统,想着反正暑假打孩子——闲着也是闲着,为了和我的蓝牙设备名“满船清梦压星河”相称将电脑改成了“我寄人间雪满头”,因为含有中文,配置文件出错,改回中文就好了。B.HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002LServices\Eventlog\Application\MySQL目录。美好的一天从卸载之前安装的MySQL结束,因为之前安装的找不到相关配置,于是索性全删了重新下载,以绝后患。原创 2022-09-03 12:07:46 · 1096 阅读 · 0 评论 -
版本4校园兼职软件遇到的问题和解决方法
ConcurrentModificationException 当不允许这样的修改时,可以通过检测到对象的并发修改的方法来抛出此异常。成了但好像没完全成,之前if……逻辑结构好像没理清,还有输出错误。因为暂存的temp对象被定义为全局变量,所以每次进去都被刷新为新对象,将其。每次只能保存一位用户信息,后面输入用户信息前面的用户信息会被覆盖。好消息是正则表达式成功啦,约束工作完成时间只能在工作开始时间之后。重新整理一下代码逻辑和顺序,成啦!重新编写了一下申请兼职工作的方法。明明有内容确未查询到。...原创 2022-09-01 16:29:53 · 290 阅读 · 0 评论 -
校园兼职项目遇到的问题及解决(版本1-3)
在UserService中用户信息修改方法modify,一开始一切都还好,直到遍历集合,出现报红和提示翻译过来是:Non-static方法'getUid()' cannot be referenced from a static context 不能从静态上下文引用非静态方法‘getUid()’静态方法的使用:在一个类中调用另一个static类中方法或变量时要使用类名.方法名或者类名.属性名;如果调用的是非静态的方法或属性则要用类的对象去调用,即对象方法或对象属性。...原创 2022-08-26 09:44:11 · 98 阅读 · 0 评论 -
比较方法equals( )、==、===以及CompareTo
equals() 方法和==运算符执行的是两个不同的操作。equals() 方法比较字符串对象中的字符==运算符比较两个对象引用看它们是否引用相同的实例变量 s1 指向由“Hello World”创建的字符串实例。s2 所指的的对象是以 s1 作为初始化而创建的,存放地址不同。因此这两个字符串对象的内容是一样,但它们是不同的对象,这就意味着 s1 和 s2 没有指向同一的对象,因此它们是不==的。因此,千万不要使用==运算符测试字符串的相等性,以免在程序中出现糟糕的 bug。...原创 2022-08-05 11:26:25 · 2351 阅读 · 0 评论 -
特殊流&Properties属性集实例遇到的问题及解决方法
解题思路:1.编写一个小程序类,就以猜数字为例,在1-100之间随机生成一个任意自然数,依次输入数字比对生成数字,答对退出,即为一次;2.创建数据源目录File对象,路径是Temp\\applet.txt,判断文件是否存在,不存在则自己创建;3.创建好以后applet.txt文件以后记得往里面写入初始化对象count=0(一定要记得!!!)4.从文件中读取数据到Properties集合,用lo写代码看似简单却又不简单,很多时候看似不起眼的小细节往往能决定成败,吾生有涯而学无涯,一起努力加油呀!.原创 2022-07-28 15:17:38 · 430 阅读 · 0 评论 -
字符流问答小程序解题过程及拓展
基本实现我们想要的效果,但是当我输出小写字母的答案时,找不到与之相匹配的值,所以即便我答案正确也不得分,所以可以写一个输出错误语句。java中“==”的使用回顾:因为在Java中,如果是基本数据类型,则 == 比较的是值;如果是对象类型,则 == 比较的是对象的地址。......原创 2022-07-28 20:44:00 · 277 阅读 · 1 评论 -
字符流相关
一个小于127的字符的意义与原来相同,但两个大于127的字符连在一起时,就表示一个汉字,这样大约可以组合了包含7000多个简体汉字,此外数学符号、罗马希腊的字母、日文的假名等都编进去了,连在ASCII里本来就有的数字、标点、字母都统统重新编了两个字节长的编码,这就是常说的"全角"字符,而原来在127号以下的那些就叫"半角"字符。最为常用的UTF-8编码。转换流的名字比较长,而我们常见的操作都是按照本地默认编码实现的,所以,为了简化书写,转换流提供了对应的子类FileReader用于读取字符文件的便捷类。..原创 2022-07-26 21:37:50 · 266 阅读 · 0 评论 -
Map函数统计字符出现的次数
我们可以把结果分成几个部分来看: a(5),b(4),c(3),d(2),e(1)每一个部分可以看成是:字符和字符对应的次数组成这样的数据,我们可以通过HashMap集合来存储,键是字符,值是字符出现的次数注意:键是字符,类型应该是Character;值是字符出现的次数,类型应该是Integer思路:键盘录入一个字符串创建HashMap集合,键是Character,值是Integer遍历字符串,得到每一个字符拿得到的每一个字符作为键到HashMap集合中去找对应的值,看其返回值 ..原创 2022-07-26 09:52:41 · 758 阅读 · 0 评论 -
字节流实现文本文件/图片/视频文件的复制效率比较
明明视频只有短短3秒,占用内存1.25MB,但是字节流复制视频的时常计算方法二(一次读写一个字节数组)却用了7854毫秒,有蹊跷,分别使用字节流和字节缓冲流,实现文本文件/图片/视频文件的复制。并比较二者在数据复制方面的效率(提示日期类。复制视频的时常计算(一次读写一个字节。复制视频的时常计算(一次读写一个。......原创 2022-07-25 23:38:29 · 527 阅读 · 0 评论 -
File类的学习过程中出现的问题及解决方法
1.利用File构造器,new一个文件目录file1)在其中创建多个文件和目录,测试自己学过的File类的方法2)手动编写方法,实现删除file中指定文件的操作2.判断指定目录下是否有后缀名为.jpg的文件,如果有,就输出该文件名称3.遍历指定目录所有文件名称,包括子文件目录中的文件(注意这句话,经典递归方法,不知道思路的直接问)。4.创建一个与a.txt文件同目录下的另外一个文件b.txt5.操作D盘下的my.txt文件1)判断my.txt文件是否存在。...原创 2022-07-25 10:08:55 · 725 阅读 · 1 评论 -
File&递归14.1
File类介绍它是文件和目录路径名的抽象表示文件和目录是可以通过File封装成对象的对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的File类的构造方法方法名说明通过将给定的路径名字符串转换为抽象路径名来创建新的File实例从父路径名字符串和子路径名字符串创建新的File实例从父抽象路径名和子路径名字符串创建新的File实例示例代码//1File类概述和构造方法。............原创 2022-07-26 14:41:50 · 154 阅读 · 0 评论 -
集合相关知识点和拓展补充
ArrayList的最大容量根据ArrayList源码,ArrayList的最大容量为Integer.MAX_VALUE-8也就是2147483639。为什么不是Integer.MAX_VALUE呢?因为有些虚拟机在数组中保留一些headerwords,所以预留了8来防止越界。转载 2022-07-20 16:08:48 · 165 阅读 · 1 评论 -
多种方式Map集合遍历
4)遍历Map,输出所有的老师及老师教授的课程(用Set、Setget(key)都可)1、分析首先应准备牌完成数字与纸牌的映射关系使用双列Map(HashMap)集合,完成一个数字与字符串纸牌的对应关系。看牌通过Map集合找到对应字符展示。通过查询纸牌与数字的对应关系,由数字转成纸牌字符串再进行展示。1)使用一个Map,以老师的名字作为键,以老师教授的课程名作为值,表示上述课程安排。5)利用Map,输出所有教JSP的老师。......原创 2022-07-21 08:43:56 · 1503 阅读 · 0 评论 -
set集合中的唯一性和排序问题
在某次考试中,学生的成绩信息如下(公有属性)姓名(String)年龄(int)成绩(int)Tom2090;Kevin2290请分别用Comparable和Comparator两个接口对以上同学的成绩做降序排序,如果成绩一样,那在成绩排序的基础上按照年龄由小到大排序,成绩和年龄都一样,则按照姓名的字典顺序排序。现有若干图书信息(包含名称title、作者author、定价price)需要存储到set集合中,保证集合中无重复元素,并遍历查看。可以认为所有信息都相同的图书为重复数据。...原创 2022-07-20 10:06:37 · 513 阅读 · 0 评论 -
Map集合
Map集合概述键的类型;V值的类型Map集合的特点键值对映射关系一个键对应一个值键不能重复,值可以重复元素存取无序创建Map集合的对象多态的方式具体的实现类HashMapMap集合的基本使用map.put("18160062","今夜鸣风");//同键第一次出现是添加map.put("18160062","总攻大人");//同键第二次出现是替换//创建集合对象//Vput(Kkey,Vvalue)将指定的值与该映射中的指定键相关联方法名。......原创 2022-07-19 19:35:41 · 164 阅读 · 0 评论 -
Set集合
Set集合的特点元素存取无序没有索引(所以无法使用普通for循环遍历)、只能通过迭代器或增强for循环遍历不能存储重复元素Set集合的基本使用//创建集合对象//添加元素//不包含重复元素的集合//遍历set){}}}worldjavahello进程已结束,退出代码0HashSet集合的特点(Set接口的实现类)底层数据结构是哈希表对集合的迭代顺序不作任何保证,也就是说不保证存储和取出的元素顺序一致//HashSet集合的基本使用。......原创 2022-07-18 19:09:52 · 100 阅读 · 0 评论 -
反向输出字符串的多种方法
说干就干,我首先想到的是迭代器ListIterator遍历方法配合hasPrevious以及previous完成反向输出;但是编写运行时ListIterator反向遍历始终无法输出,通过查阅资料发现之前也有前辈遇到同样的问题,但在编写程序时发现。做一道list反向输出字符串练习题时我就在想能不能也用不同的方式输出呢?reverse函数功能是逆序(或反转),多用于字符串、数组、容器。最后reverse反向输出,刚好三种方法,可以和正向输出对应上。//reverse函数逆序反转。//新建一个列表list2。..原创 2022-07-15 16:34:20 · 4755 阅读 · 3 评论 -
Collection & List
集合类的特点提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变集合类的体系图 1.2Collection集合概述和基本使用【应用】Collection集合概述是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素JDK 不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现Collection集合基本使用需要导入Colection的包 //创建Collection集合的对象 Collection c = new Arra........原创 2022-07-14 17:13:33 · 219 阅读 · 0 评论 -
优化方案及实现
测试人员在测试过后提出要求:当前代码无限制,注册会出现无限长的用户名和密码的问题,要添加限制条件使其合理化。改进方法:通过引入方法工具类TSUtility中的readKeyBoard方法,limit限制长度 成功!原因:While语句位置错误,放到if(s == '2' || s=='3')外面,导致输入匹配失败后(此时s=4)不会跳出该if语句进入下一个if语句匹配解决方法:将while语句放到该if语句里面,这样就能在匹配完if(s == '2' || s=='3')发现匹配失败退出该语句进入if( s原创 2022-07-11 08:58:43 · 97 阅读 · 0 评论 -
遇到的问题及解决方法
如图所示,在编写判断当前团队程序员数量时,判断语句!(team[i] instanceof Architect)内部报错,提示“Inconvertible types; cannot cast 'Project.team.domain.Programmer' to 'Project.team.domain.Architect'”,翻译过来就是 “不可转换类型;无法将“Project.team.domain.Programme原创 2022-07-11 08:47:17 · 4078 阅读 · 0 评论 -
实现一个项目开发团队分配管理软件思路及过程
做一个项目之前首先要知道做什么?实现什么功能?得到什么效果?然后再理思绪以及怎么做,慢慢来,一口吃不成个胖子,切忌一上来就动手做,简单的代码还好,一旦代码更多更复杂进行到后面就很容易乱成一锅粥,所以我们要清楚项目开发流程:1.初步了解需求有利于构建初步框架,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块;2.系统分析深入了解和分析需求,根据自己的经验和需求用W再做出一份文档系统的功能需求文档,清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界原创 2022-07-07 19:21:21 · 338 阅读 · 0 评论 -
时间戳的拓展及应用实例
近期学习遇到的一些应用实例可以用时间戳来解决,而获取时间戳有以下三种方式,推荐使用System类来获取时间戳,下面一起看一看三种方式:1.System.currentTimeMillis()System类中的currentTimeMilis()方法是三种方式中效率最好的,运行时间最短。开发中如果设计到效率问题,推荐使用此种方式获取。2.new Date().getTime()除了System类,使用量很大的应该就是Date类了,开发中如果涉及到日期的首先会想到Date,但date类中获取时间戳并不是最有原创 2022-07-01 11:15:18 · 831 阅读 · 0 评论 -
Date类中日期转成指定字符串出现的问题及解决方法
在学习Date内容时跟着做练习,结果老是报错,我寻思着代码也没错鸭,难道是我导的包不正确,反反复复查错找问题都确认代码没问题,那问题出在哪里?我陷入了沉默……好在在我火眼金睛的加持下终于找到,上面的11:20:00用的英文输入法的冒号,下面时分秒用的是中文输入法的冒号,自然匹配不了,日期和模式必须一一对照 改正成英文输入法后成功编译运行 sdf2.parse(ss); 快速补全 Ctrl+lt+v//ParseException 报错,解析异常 解决的快捷键 Alt+Enter,默认原创 2022-07-01 10:57:22 · 618 阅读 · 0 评论 -
常用API类及异常体系
应用程序接口(英语:Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。API主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。1、Math类概述2、Math中方法的调用方式3、Math类的常用方法实例:1.2 System(应用)System中代表程序所在系统,提供了对应的一些系统属性原创 2022-06-30 17:24:48 · 265 阅读 · 0 评论 -
近期遇到的比较方法
做题遇到了一些比较的内容,来做一些总结例题是:定义一个接口用来实现两个对象的比较。interface CompareObject{public int compareTo(Object o); //若返回值是 0 , 代表相等; 若为正数,代表当前对象大;负数代表当前对象小}定义一个Circle类,声明redius属性,提供getter和setter方法定义一个ComparableCircle类,继承Circle类并且实现CompareObject接口。在ComparableCircle类中给原创 2022-06-28 15:24:41 · 513 阅读 · 1 评论 -
抽象类和接口
当我们在做子类共性功能抽取时,有些方法在父类中并没有具体的体现,这个时候就需要抽象类了!在Java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类!抽象类和抽象方法必须使用 abstract 关键字修饰 抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类抽象类不能实例化抽象类如何实例化呢?参照多态的方式,通过子类对象实例化,这叫抽象类多态抽象类的子类要么重写抽象类中的所有抽象方法要么是抽象类成员的特点成员变量既可以是变量也可以是常量构造方法空参构造有参构造原创 2022-06-28 09:06:26 · 241 阅读 · 0 评论 -
重载和重写
简单来说就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者重载方法方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载。1)多个方法在同一个类中2)多个方法具有相同的方法名3)多个方法的参数不相同,类型不同或者数量不同下面的程序哪个和show()方法重载()?**A、C、D**方法重载特点:*重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式*重载仅针对同一个类中方法的名称与参数进行识原创 2022-06-25 22:50:32 · 622 阅读 · 0 评论 -
面向对象三大特征之多态
同一个对象,在不同时刻表现出来的不同形态 - 要有继承或实现关系 - 要有方法的重写 - 要有父类引用指向子类对象1.定义不同---重载是定义相同的方法名,参数不同;重写是子类重写父类的方法。2.范围不同---重载是在一个类中,重写是子类与父类之间的。3.多态不同---重载是编译时的多态性,重写是运行时的多态性。4.返回不同---重载对返回类型没有要求,而重写要求返回类型,有兼容的返回类型。5.参数不同---重载的参数个数、参数类型、参数顺序可以不同,而重写父子方法参数必须相同。6.修饰原创 2022-06-25 22:17:34 · 151 阅读 · 0 评论 -
面向对象三大特征之继承
实现继承的格式继承通过extends实现格式:class 子类 extends 父类 { }举例:class Dog extends Animal { }继承可以让类与类之间产生关系,子父类关系,产生子父类后,子类则可以使用父类中非私有的成员。提高了代码的维护性(如果方法的代码需要修改,修改一处即可)继承让类与类之间产生了关系,类的耦合性增强了,当父类发生变化时子类实现也不得不跟着变化,削弱了子类的独立性使用继承,需要考虑类与类之间是否存在is..a的关系,不能盲目使用继承is..a的关系:谁是谁的一种,例原创 2022-06-25 22:16:46 · 148 阅读 · 0 评论