📄🦌🙌🐟🏖️
乘与零-cenyuio
让生活变的更有趣~
精选文章
按住 Shift 横向滚动
Java 转义符

Java 转义符

本文介绍了Java中常用的转义字符及其用法。主要内容包括: 1. **换行符 `\n`**:将光标移到下一行开头。 2. **制表符 `\t`**:相当于键盘上的 `Tab` 键,用于对齐文本。 3. **双引号 `\"`**:用于在字符串中显示双引号。 4. **单引号 `\'`**:用于在字符常量中显示单引号。 5. **反斜杠 `\\`**:用于在字符串中显示反斜杠本身。 6. **回车符 `\r`**:将光标移到当前行开头。 此外,文章还提供了相应的代码示例,展示了如何在Java程序中使用这些转义字符来实现换行、对齐、显示特殊字符以及处理文件路径等功能。

Java 8 与 Java 11新特性

Java 8 与 Java 11新特性

文章总结了Java 8和Java 11的核心新特性,分别从函数式编程、日期时间API、接口增强、实用特性等方面进行了详细介绍。Java 8引入了Lambda表达式、Stream API、新日期时间API、默认方法和静态方法、Optional类等,极大提升了开发效率和代码简洁性。Java 11则在Java 8的基础上进一步优化,增加了局部变量类型推断、字符串实用方法、集合转数组方法等,提升了开发效率。此外,Java 11还引入了ZGC垃圾回收器、Epsilon GC等性能优化,以及单文件Java程序运行、HTTP Client API等工具和语法优化,同时废弃了Nashorn JS引擎和部分旧工具,精简了JDK。总体而言,Java 8和Java 11通过一系列新特性,显著提升了Java编程的效率和性能。

Java 的核心特点

Java 的核心特点

Java 是一种广泛应用的编程语言,具有以下核心特点和优势: 1. **跨平台性**:Java代码编译生成字节码,通过不同操作系统的 JVM 解释执行,实现“一次编写,到处运行”。 2. **面向对象**:支持封装、继承、多态,提供接口和抽象类,使程序结构清晰、易于维护和复用。 3. **简单性**:移除指针和手动内存管理,语法简洁,自动垃圾回收(GC)管理内存。 4. **安全性**:通过沙箱环境、字节码验证和内置加密算法,防止直接访问底层系统资源,确保程序安全。 5. **健壮性**:自动 GC 避免内存泄漏,支持 `try-catch-finally` 异常处理,编译阶段严格校验代码。 6. **多线程支持**:提供 `Thread`、`Runnable` 及 `java.util.concurrent` 并发包,支持线程同步和高效并发。 7. **分布式**:内置 `Socket`、`URL` 等网络 API,适配 Dubbo、Spring Cloud 等分布式框架,支持分布式应用开发。 8. **动态性**:支持反射机制和动态类加载,运行时可操作类的结构和方法,提升灵活性。 这些特点使 Java 成为开发高效、安全、可维护应用的理想选择。

自托管记账工具(ezBookkeeping)

自托管记账工具(ezBookkeeping)

**ezBookkeeping 是一款轻量级、可自行托管的个人理财应用**,具备用户友好界面和强大的记账功能。它通过 Docker 部署简便,支持多种数据库和架构,适用于小型设备到大型集群环境。应用提供移动和桌面优化界面,支持 PWA,用户可将其添加到手机主屏幕。ezBookkeeping 还具备人工智能驱动的功能,如收据图像识别和模型上下文协议集成。其强大的记账功能包括两级账户、图片附加、地图位置跟踪等,并支持多语言、多货币和自动汇率。安全性方面,提供双因素认证和应用锁定等功能。数据导入导出支持多种格式,便于用户管理财务数据。

MySQL 部署(Docker 方式)

MySQL 部署(Docker 方式)

MySQL是一款开源的关系型数据库管理系统,广泛应用于全球各类应用中,支持结构化数据的存储、查询和修改。它具有高性能、跨平台、多语言支持等特点,能够处理海量数据,并通过索引和缓存机制提升查询效率。MySQL支持事务和数据安全,提供ACID特性,确保数据操作的可靠性和安全性。 文章介绍了如何使用Docker Compose部署MySQL。首先,通过编写Docker Compose配置文件,定义MySQL容器的基本设置,包括镜像版本、环境变量、端口映射、数据持久化等。随后,通过命令构建并启动MySQL容器,确保数据库服务能够稳定运行。整个部署过程简化了MySQL的安装和配置,使其能够快速集成到开发环境中。

Node 版本管理器(NVM)

Node 版本管理器(NVM)

`nvm`(Node Version Manager)是一款命令行工具,旨在帮助开发者解决不同项目中使用不同Node.js版本的需求。通过`nvm`,用户可以快速安装、卸载任意版本的Node.js,并在不同版本之间灵活切换,无需手动配置环境变量。本文以Windows版本为例,介绍了`nvm`的安装步骤,包括下载、卸载原有Node.js后再进行安装。使用`nvm`时,可以通过命令行查看可安装的Node.js版本、安装指定版本、切换版本、设置默认版本等操作,极大地方便了多版本管理的需求。

Java SE 与 Java EE

Java SE 与 Java EE

Java SE(Java Standard Edition)是Java技术的基础核心,提供核心语法、基础类库和运行环境,是所有Java应用的基石,适用于桌面应用、控制台程序、移动端开发等基础场景。Java EE(Java Enterprise Edition)则是在Java SE基础上扩展的企业级开发平台,专注于解决大型、分布式、高并发的企业级应用问题,增加了Servlet、JSP、EJB等企业级规范和API。学习Java SE是入门的核心,掌握后再学习Java EE,适用于大型Web应用、分布式系统和企业级服务等复杂场景。

Kali工具集-Nmap

Kali工具集-Nmap

Nmap 7.95 是一款强大的网络扫描工具,支持多种扫描类型和选项。用户可以通过指定主机名、IP 地址、网段等目标进行扫描,并可从文件中读取目标列表或随机选择目标。Nmap 提供了多种主机发现技术,如 Ping 扫描、ICMP 请求等,并支持自定义 DNS 解析和路由追踪。扫描技术包括 TCP SYN、UDP、IP 协议扫描等,用户还可以指定端口范围和扫描顺序。Nmap 还支持服务和版本探测、操作系统探测,并通过脚本扫描实现更复杂的任务。性能方面,Nmap 提供了多种计时模板和性能优化选项,如调整扫描速度和并行度。此外,Nmap 还支持防火墙规避、地址欺骗等技术,以增强隐蔽性。输出选项丰富,支持多种格式和详细程度的控制。更多详细信息和示例可参考 Nmap 官方手册。

Gitea 迁移(环境:Docker + MySQL)

Gitea 迁移(环境:Docker + MySQL)

本文详细介绍了如何备份和恢复Gitea服务的过程,分为五个步骤: 1. **备份Gitea**:通过Docker进入Gitea终端,切换到git账号,使用`gitea dump`命令备份到指定目录,并确认备份成功。 2. **上传备份文件**:将生成的备份文件(如`gitea-dump-<时间戳>.zip`)上传到另一台Gitea主机,同时将数据库备份文件(如`gitea-db.sql`)上传到MySQL主机。 3. **恢复MySQL备份**:在MySQL终端中创建gitea数据库,并使用`mysql --default-character-set=utf8mb4`命令恢复备份。 4. **恢复Gitea备份**:解压备份文件,替换配置文件和仓库,调整文件权限,修改数据库连接方式(如需),并重新生成Git钩子。 5. **重启Gitea容器**:完成所有恢复步骤后,重启Gitea容器以确保所有更改生效。 整个过程涵盖了从备份到恢复的详细操作,适用于需要迁移或恢复Gitea服务的场景。

密码自托管服务部署(Vaultwarden )

密码自托管服务部署(Vaultwarden )

Vaultwarden 是一个开源的密码管理器,作为 Bitwarden 的自托管版本,提供安全存储和管理密码、敏感数据和身份信息的功能。它具备高安全性,使用加密算法保护数据,跨平台兼容,支持密码生成器、浏览器插件、多因素身份验证等功能,提升用户体验和安全性。 部署过程包括拉取 Docker 镜像、创建容器并设置自启动,配置端口和文件夹映射。为确保安全访问,使用 1Panel OpenResty 代理并添加 SSL 证书,启用 HTTPS 访问。初始化配置后,通过浏览器访问并进行设置。最终,用户可以通过浏览器扩展或客户端连接到 Vaultwarden,实现高效、安全的密码管理。