Java
OPP三次PTA作业总结
一.前言 这学期第一次接触Java中的面向对象程序设计,对于其中的类设计较为陌生,在类设计中有许多不规范的地方。 在类设计中有许多要遵循的原则,例如:单一职责原则,开闭原则,里氏代换原则,依赖倒转原则,接口隔离原则,迪米特法则等。 在三次PTA作业的类设计的要求中主要遵循单一职责原则和迪米特法则,但在三次PTA作业中存在一些不符合以上设计原则的地方,以下是我对三次大作业的一些总结。 二. 第一次作
com.alibaba.druid.pool.DataSourceClosedException: dataSource already closed at Sat Apr 20 09:55:48 CST 2024
适用的druid数据库连接池一直有问题,无法连接,但是什么都没改过。排查了数据库(数据库单独连接没问题)、防火墙、IP白名单等步骤后,重启服务器、重启应用后都无法解决。重启应用过程中发现了应用无法正常启动的情况,这点让人觉得很意外,于是想看下现在服务器上运行的jar包情况,命令是 结果发现了元凶,同一个jar包同时运行着两个进程,有一个是之前重启的时候进程没有成功被杀掉,暂且称
Java (1.7) could not be located
问题现象 opatch version./opatch: line 839: [: too many arguments./opatch: line 839: [: too many argumentsJava (1.7) could not be located. OPatch cannot proceed!OPatch returns with error code = 1 解决
第一次大作业blog
目录前言踩坑心得改进建议总结 前言 知识点: 1.类与对象:三次大作业中最离不开的就是对类和对象的应用,这体现了java面向对象的特点,类的定义,对象的创建都是大作业中最基本的操作但是必要的操作。 2.字符串与数组的应用:本次大作业中对于输入信息的处理最基本的处理方式就是字符数组,字符数组用于存储char类型的数据,可以对输入的信息进行访问,声明和初始化,字符串之间的对比以及转换操作。 3.正则表
基于内存的用户名和密码认证
代码实现 从Spring Security官网文档可以看到,我们想要实现一个基于内存的用户名密码认证,需要编写配置,如下: 在我们的项目中,建立如下项目结构: 我们将Spring Security有关配置全部放置于Security包中。 在templates目录下面新建一个index.html,内容如下: 启动项目运行: 底层代码分析 UsernamePasswordAuthentic
三次大作业总结性blog
目录前言:设计与分析:踩坑心得:改进建议:总结: 前言: 第一次大作业: 1.题量:这次的大作业有五道题,题量较大。 2.难度:第一次大作业的难度适中,前三题难度较为简单,难度主要是集中在最后一题:答题判题程序-1。 3.知识点的使用: 第一次大作业使用了以下Java知识点: (1)类与对象:如定义了Fan类,表示风扇,包括风速、开关、半径和颜色等属性。通过类的构造方法和各个getter和sett
web server apache tomcat11-10-Class Loader
前言 整理这个官方翻译的系列,原因是网上大部分的 tomcat 版本比较旧,此版本为 v11 最新的版本。 开源项目 从零手写实现 tomcat minicat 别称【嗅虎】心有猛虎,轻嗅蔷薇。 系列文章 web server apache tomcat11-01-官方文档入门介绍 web server apache tomcat11-02-setup 启动 web server apache
【转载】Java函数式编程——为什么new Thread()中要用函数式编程
面向对象过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——强调做什么,而不是以什么形式做。 面向对象的思想: 做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情. 函数式编程思想: 只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程 冗余的Runnable代码 🍘传统写法 当需要启动一个线程去完成任务时,通常会通过java.lan
MVCC学习圣经:一文穿透MySQL MVCC,吊打面试官
文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,完成职业升级, 薪酬猛涨!加尼恩免费领 免费赠送 经典图书:《Java高并发核心编程(卷1)加强版》 面试
oop前三次作业总结
oop前三次作业总结 前言 这是我第一次写博客,也是第一次接触Java。在没学Java之前,我只接触过C语言,因此在完成作业时总将Java面向对象的特性抛到一旁,用一个类从头写到尾,这个坏毛病在第一次作业里完美体现(笑)。 关于Java:在深入这门课前,我在网上经常看见人说Java多么多么难学,使得我对它一直有一种敬畏之情,然而,在学习一段时间后,我只能说:确实如此(是不是以为我会反驳)。如果说C
Java 集合进阶使用(List Map Set 异常)
Collection Collection 是其子集的父类,所以可以使用多态的规矩,比如:创建一个 ArrayList 对象,用 Collection 接收 注意:Collection 为接口,不能直接创建对象,但可以利用其子类,使用 Collection 方法,就如上方代码一样 Collection 方法基本使用 注意: add 方法是有一个返回值为 boolean,List系列始终为
什么是 GitHub Wiki 以及如何使用它?
GitHub Wiki 是你项目文档的一个很好的地方。你可以使用 wiki 来创建、管理和托管你的存储库的文档,以便其他人可以使用并为你的项目做出贡献。 GitHub Wiki 很容易开始使用,无需安装任何其他软件。最好的部分是 wiki 与你的 GitHub 存储库集成在一起。 你不需要任何其他工具 - 你只需要知道如何使用 markdown,因为你将使用它来编写你的 wiki。 (本文视频讲解
java中的set集合
java中的set集合 目录java中的set集合1.HashSet集合1.1HashSet的特点1.2HashSet常用方法2.LinkedHashSet集合2.1LinkedHashSet集合的特点3.TreeSet集合3.1TreeSet集合的特点3.2TreeSet的基本使用4.HashSet、LinkedHashSet、TreeSet的使用场景5.list和set集合的区别5.1有序性5
软件开发中的“左移”是什么意思?
我曾经有过一个经理,在讨论我们的项目时提到,我们需要尽可能地将我们的工作左移。 几个月后,在一次面试中,面试官问我是否知道“左移”是什么意思。 除非有人没告诉我一个秘密的软件舞蹈,我现在就来告诉你左移是什么意思。 (本文视频讲解:java567.com) 在软件开发中左移是什么意思? 左移是一个技术术语,意味着尽早在你的软件项目生命周期中尝试识别问题。 '左'表示项目的开始,这个短语的意思就是“让
南昌航空大学-软件学院-23201524-刘子平-JAVA第一次Blog作业
目录前言设计与分析PTA第一次作业PTA第二次作业PTA第三次作业踩坑心得改进建议总结 前言 本学期已经学习JAVA一个多月的时间,对比上学期所学习的C语言,JAVA更加方便和更好理解。最开始起步困难,想不出来从何入手JAVA程序,一直用C语言的思路来写JAVA程序,没有领悟到面对“对象”程序设计中对象的含义,依旧是面向过程进行整体的程序设计。现在略微掌握了JAVA的基本思路,期望经过之后的进一
js substr 与 substring 有什么区别吗
在 JavaScript 中,substr 和 substring 是用于提取字符串的两个方法,它们的功能类似,但有一些区别: 1. substr(start, length) 方法: 参数: start:必需。要提取的子字符串的起始位置。如果为负数,表示从字符串末尾开始计数。 length:可选。要提取的字符数。如果省略或为负数,则提取到字符串的末尾。 返回值: 返回从指定位置开始
typescript安装问题=> for (let i = startIndex ?? 0; i < array.length; i++) { ^ SyntaxError: Unexpected token ? at Object.exports.runInThisContext (vm.js:76:16) at Module
遇到的 SyntaxError: Unexpected token ? 错误是因为正在使用的 Node.js 版本不支持空值合并操作符 ??。空值合并操作符 ?? 是一个相对较新的 JavaScript 特性,它是在 ECMAScript 2020 (ES11) 中引入的。如果您的 Node.js 版本低于这个标准支持的版本,那么就会抛出语法错误。 Node.js 版本 6.10.0 不支持空值
前端开发中 对象 类 方法三者区别
在前端开发中,对象、类和方法都是面向对象编程(OOP)的重要概念。它们各自有着不同的定义和作用,下面将详细解释这三者之间的区别: 对象(Object): 对象是现实世界或抽象概念中事物的表示。在编程中,对象是一个具体存在的实体,具有属性和方法。属性是对象的数据特征,而方法是对象能够执行的操作。例如,一个用户对象可能具有姓名、年龄等属性,以及登录、注销等方法。 类(Class): 类是对象的模板或蓝
4.Java流程控制
Java流程控制 Scannner对象 (获取用户的输入) 顺序结构 选择结构 1. if单选择结构 2. if双选择结构 3. if多选择结构 switch多选择结构 反编译学习(查看源码) 循环结构 主要循环结构: while循环 dowhile循环 for循环 while循环 do...while For循环 break continue 练习
dbt asset-paths 简单说明
dbt的asset-paths 是一个比较有意思的配置,可以用来增强我们的文档信息,比如存放一些图片在资源描述中引用资源 生成的文档中可以进行显示,提示文档的信息 参考配置 dbt_project.yml asset-paths: ["assets"] 使用 假如assets包含一些描述图片信息 models/app.yaml
dbt docs block 的一些技巧
dbt 的docs 实际上自定义上还是很强大的,可以灵活的docs block 解析,同时docs 定义也可以类似model 那样进行引用,当然也包含了一些内部固定模式可以灵活的进行文档的自定义 一些内置自定义玩法 自定义文档路径 类似dbt 其他资源一样docs 也是支持自定义的,否则默认会搜索model-paths, seed-paths, analysis-paths, macro-pa
布隆过滤器原理-原论文解析
布隆过滤器是由 BURTON H. BLOOM 在 1970 年提出的一种哈希方法,用于判断一个元素是否存在于某个集合中。HashSet 或其他的数据结构都使用了传统的哈希方法,得到的结果是准确的,而布隆过滤器得到的结果不一定准确,因为它使用了一种近似的哈希算法。 那为什么还要使用它呢?因为数据量变大时,假如达到了 1 亿,传统的哈希方法效率将变低,布隆过滤器的性能却仍然很好。以下是论文的部分介绍
postgresql数据定时转存mongodb方案
案例背景 很多事件记录在最初一段时间读写比较频繁,存储在postgresql比较合适,后期数据量变大,且仅作为历史记录查询,更适合存储在mongodb中,可能需要定期将postgresql中的数据转存到mongodb。 案例分析 postgresql数据定时转存mongodb,可以采用jdbc方式将postgresql读入内存,对每条数据进行解析,转成json格式,按mongodb的语法写
第一次博客作业-答题判题程序1-3 blog-1
一、前言: 在学习面向对象程序设计的过程中,我完成了三次PTA题目集的作业,在此过程中我感受颇多。 上半学期学习C语言过程中有些错误的习惯对我学习面向对象造成了很大的影响,比如喜欢将代码全写入主函数当中,而不放入函数中分块。 各种问题的积累导致我在初见nchu-software-oop-2024-上-1中的最后一题答题