Java
从零做软件开发项目系列之三——系统设计
前言 在与客户充分接触后取得需求调研结果,然后分析调研内容,撰写完成项目的需求规格说明书。这是一个正式的文件,需要供需双方签字确认。说明书中会明确需求方的要求和开发方实现的内容,依据需求规格说明书,开发方就要开展系统设计工作。 进行系统设计工作,粗略的可以分成两个阶段,概要设计(总体设计)阶段和详细设计阶段,概要设计阶段主要是做一些系统整体的设计工作,比如系统包括哪些模块,使用什么样的技术等,详细
随笔(三十)『Dockerfile 构建ubuntu镜像练习』
1、将需要用的java8传到宿主机,同级目录下创建Dockerfile 2、编写Dockerfile vim Dockerfile 3、构建镜像 4、启动镜像docker run -it myubuntu:1.0 (多了几个功能)
MongoDB :第七章:总结一下学习MongoDB的心得
创建了数据库 runoob: use runoobswitched to db runoobdbrunoob 查看所有数据库 > show dbs admin 0.000GB local 0.000GB > 注意: MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。在 MongoDB 中,集合只有在内容插入后才会
从零做软件开发项目系列之四——数据库设计
前言 在对软件进行设计的过程中,数据库的设计是一项重要的内容,软件中主要的处理对象就是各类业务数据,通过对业务数据的处理,实现各种功能。我们经常说的,写程序,说到底就是增删改查,而增删改查的对象就是各种数据。数据都存储在数据库中,其重要性不言而喻,对于数据库的设计也是软件设计的一个重要基础。 1 数据库选型 开发的软件,使用什么样的数据库,是由具体的业务数据要求决定。主要考虑的因素包括需要处理哪些
JavaScript基础语法
一、JavaScript概述 1.1、JavaScript可以做什么 1.1.1、页面的各种动画效果 1.1.2、页面的点击/移入响应 1.1.3、对客户端数据进行验证 1.1.4、各种页面小游戏 1.1.5、用途总结 嵌入动态文本于HTML页面。 对浏览器事件做出响应(对于用户的操作给予响应)。 读写HTML元素。 在数据被提交到服务器之前验证数据(客户端数据校验)。 检测访客的浏览
安装使用pnpm包管理工具
安装 前言 If you don't use the standalone script or @pnpm/exe to install pnpm, then you need to have Node.js (at least v16.14) to be installed on your system. 使用独立脚本安装 即使没有安装 Node.js,也
并发问题和实现Callable接口
并发 1.初识并发问题 // 多个线程同时操作一个对象// 买火车票// 发现问题:多个线程操作同一个资源的情况下,线程不安全public class TestThread4 implements Runnable{ // 票数 private int ticketNums = 10; public void run(
SpringBoot/SpringCloud+nacos下配置使用drools,规则修改后无需重启服务
最近做了个需求,就是http调第三方地图图层接口获取点位信息,要把reponseData转换为我们自己的entity数据结构然后入库,因为每种图层返回的json数据结构都不一样,并且图层种类又很多,于是就考虑使用drools来根据规则动态转换,为了使得规则修改后不需要重启服务,我把.drl配置到了nacos config里,并且加了监听器。 小提示 虽然可以把.drl挂到nacos里,但是一开始最
ChatGPT 问答00022 Guava Retryer使用
使用Guava Retryer进行方法异常重试的步骤如下: 添加Guava Retryer依赖:在项目的构建文件(如pom.xml)中添加以下依赖项: 在Java代码中引入必要的类: 创建并配置Retryer对象: 定义需要重试的方法: 使用Retryer对象调用方法: 通过以上步骤,你可以使用Guava Retryer来对指定的方法进行异常重试。可以根据需要自定
linux的用户配置文件(4个用户文件)
Linux中用户与组 原创 凉兮 凉兮的运维日记 2023-08-24 11:07 发表于北京 收录于合集 #linux11个 #管理员1个 #linux系统5个 一、基本概念 1、基本介绍 Linux作为一种多用户的操作系统(服务器系统),允许多个用户同时登录到系统上,并响应每个用户的请求
文件存储引擎模块封装和使用分享
文件存储引擎模块封装和使用分享 背景 需求 在项目开发过程中,经常会使用到文件存储相关的功能,如: 存储发票文件 提供发票下载地址 …… 调研 诸如此类的功能就需要使用到本地存储或云服务商提供的存储功能。当然,这对于开发高手的 zone 来说都是小意思,上网一查,对象存储哪家强? 第一位赫然显示了百家号创作者推荐的阿里云 OSS 服务,那行,就你吧,还要赶紧摸鱼等下班呢。接 API 嘛
深入理解C#中的IDisposable接口
在开始之前,我们需要明确什么是C#(或者说.NET)中的资源,打码的时候我们经常说释放资源,那么到底什么是资源,简单来讲,C#中的每一种类型都是一种资源,而资源又分为托管资源和非托管资源,那这又是什么?! 托管资源:由CLR管理分配和释放的资源,也就是我们直接new出来的对象; 非托管资源:不受CLR控制的资源,也就是不属于.NET本身的功能,往往是通过调用跨平台程序集(如C++)或者
[LeetCode][139]word-break
Content Given a string s and a dictionary of strings wordDict, return true if s can be segmented into a space-separated sequence of one or more dictionary words. Note that the same word in the diction
[LeetCode][124]binary-tree-maximum-path-sum
Content A path in a binary tree is a sequence of nodes where each pair of adjacent nodes in the sequence has an edge connecting them. A node can only appear in the sequence at most once. Note that the
php实现大文件上传下载
前段时间做视频上传业务,通过网页上传视频到服务器。 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制;2,请求时间过长,请求超时;3,传输中断,必须重新上传导致前功尽弃; 解决方案: 1,修改服务端上传的限制配置;Nginx 以及 PHP 的上传文件限制 不宜过大,一般5M 左右为好; 2
Ubuntu 22.04上编译Android 13 AOSP系统
背景 因为最近空闲期,刚好遇到了一个小项目,需要AOSP系统的,因此就花费了一些时间捣鼓了一下,源码编译aosp13 环境: vm 22.04 空间350g 内存24g 环境配置 以下所有操作需要全球通上网,已经安装git环境。 把Ubuntu源切到国内,下载速度快很多。 开始下载repo,如果已经有可以跳过。 下载Android源码 在下载Android源码前,需要安装编译依赖库和工具下载
JavaSE(2)(简单了解idea, 项目结构,运算符,数据转换,原反补码)
JavaSE(2)(简单了解idea, 项目结构,运算符,数据转换,原反补码) p28 idea 项目结构 project 项目 > module 模块 > package 包 > class 类 拿微信举例, 微信就是项目, 它下方的四大功能(微信,通讯录,发现,我)就是模块, 一个项目是包含一个或多个模块的. 以第一个微信模块为例, 我们把相同功能的代码放在一个包中, 在包里
@Value注解读取yml中的map/list配置
读取map 1、配置文件写法 2、java代码的写法 读取list 1、配置文件写法 2、java代码的写法 说明:list数据分割不要使用|,最好就用逗号分割 纸上得来终觉浅,绝知此事要躬行。
并发编程系列 - ReadWriteLock
实际工作中,为了优化性能,我们经常会使用缓存,例如缓存元数据、缓存基础数据等,这就是一种典型的读多写少应用场景。缓存之所以能提升性能,一个重要的条件就是缓存的数据一定是读多写少的,例如元数据和基础数据基本上不会发生变化(写少),但是使用它们的地方却很多(读多)。 针对读多写少这种并发场景,Java SDK并发包提供了读写锁——ReadWriteLock,非常容易使用,并且性能很好。在并发编程中,
SpringBoot 测试实践 - 3:@MockBean、@SpyBean 、提升测试运行速度、Testcontainer
编写测试的时候,我们必须保证外部依赖行为一致,也需要模拟一些边界条件,所以我们需要使用 Mock 来模拟对象的行为。SpringBoot 提供了 @MockBean 和 @SpyBean 注解,可以方便地将模拟对象与 Spring 测试相结合,简化测试代码的编写 @MockBean @MockBean 是 Spring Boot Test提供的注解,用于在 Spring Boot 测试中创建一个模
Windows中Jenkins更新后无法访问Jenkins网页端
问题:升级完Jenkins后发现无法访问网页端,利用指令重启出现报错日志: 十月 17, 2022 5:02:11 下午 executable.Main verifyJavaVersion严重: Running with Java class version 52, which is older than the Minimum required version 55. See https://j
一个被低估的插件:IDEA+JProfiler=性能分析神器
JProfiler 17.1.3(IDEA插件) JProfiler 9.2(可执行软件) IntelliJ IDEA 2017.2.5 下载 下载JProfiler(IDEA)插件 方式1: 在IDEA上直接下载Settings–plugins–Browse repositories 搜索JProfiler 点击 install 按钮安装,然后从启IDEA工具
Spring Boot + Spring Batch 实现批处理任务,保姆级教程!(场景实战)
来源:blog.csdn.net/qq_35387940/article/details/108193473 前言 概念词就不多说了,我简单地介绍下 , spring batch 是一个 方便使用的 较健全的 批处理 框架。 为什么说是方便使用的,因为这是 基于spring的一个框架,接入简单、易理解、流程分明。 为什么说是较健全的, 因为它提供了往常我们在对大批量数据进行处理时需要考虑到的 日志
数仓数据导出mysql保留换行符踩坑
记录一个导数的小坑,数仓里面的数据需要导出到mysql,然后报表展示,并且需要把一段文字里面的换行功能体现出来;数仓里面的原始数据采用的是$符号进行分割每一行数据,直接把$符号替换为n然后导出到mysql,发现没有生效,反而在页面上把n展示出来了。那么注意了,经过反复尝试写成n,然后把这个数据导出到mysql就可以实现换行。 regexp_replace(t1.change_plan,"$",
Java 实现 国密SM4/ECB/PKCS7Padding对称加密解密
Java 实现 国密SM4/ECB/PKCS7Padding对称加密解密,为了演示方便本问使用的是IntelliJ IDEA 2022.1 (Community Edition)来构建代码的 1、pom.xml文件添加需要的jar 2、java代码 3、本文用到了一个Base64的jar加包commons-codec-1.16.0.jar,import org.apach
linux服务器docker compose的使用步骤
之前说了docker的安装,docker compose的安装,还比较了dockerfile和docker compose的区别,那么docker compose的实际应用是怎么样呢?记录下我的实操步骤 1、服务器上新建目录,目录情况如下,我的data目录是挂载到数据盘的 2、把本地的docker_config里面的文件分别更新到服务器指定的目录,这里我贴下我的配置文件,方便参