程序员 程序 日记java
java中使用RedisTemplate读取数据异常 Missing type id when trying to resolve subtype of [simple type, class java.lang.Object]: missing type id property '@class' at [Source: (byte[])"
解决方法: 直接储存对象,交给redisTemplate来序列化,或手动使用Jackson2JsonRedisSerializer序列化对象。 ......
比较Python与Java在类的定义、继承、多态等方面的异同
首先我来进行介绍Python与Java在类的定义、继承、多态等方面的异同 1.python类和java类的使用一览 java: public class Car { private String color; private String model; private int year; publi ......
java 分词统计
依赖(谷歌基于lucene的中文分词IKAnalyzer) <dependency> <groupId>org.wltea</groupId> <artifactId>ikanalyzer</artifactId> <version>5.0.2</version> </dependency> <de ......
Java设计模式-简单工厂模式
简介 在软件开发过程中,设计模式是一种被广泛应用的实践,它是通过总结、归纳和提炼出软件设计经验,从而使得设计更加优雅、高效。简单工厂模式是设计模式中最基本、最简单的一种模式,它能够有效地封装对象的创建过程,简化代码结构。 简单工厂模式又称为静态工厂方法模式,它是通过定义一个工厂类,用于创建不同的对象 ......
Java报错:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.
报错内容 Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.spr ......
JAVA线程池开发
1.java给我们自带了4种线程池newSingleThreadExexcutor:单线程数的线程池(核心线程数=最大线程数=1)newFixedThreadPool:固定线程数的线程池(核心线程数=最大线程数=自定义)newCacheThreadPool:可缓存的线程池(核心线程数=0,最大线程数 ......
【代理设计模式详解】C/Java/JS/Go/Python/TS不同语言实现
简介 代理模式(Proxy Pattern)是一种结构型设计模式,用一个类来代理另一个类或几个类的功能。 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。 延迟初始化(虚拟代理)。如果你有一个偶尔使用的重量级服务对象,一直保持该对象运行会消耗系统资源时,可使用代理模式。 访问控制( ......
GraalVM(云原生时代的Java)和IoT在边缘侧落地与实践
环顾四周,皆是对手! 云时代的掉队者,由于Java启动的高延时、对资源的高占用、导致在Serverless及FaaS架构下力不从心,在越来越流行的边缘计算、IoT方向上也是难觅踪影; Java语言在业务服务开发中孤独求败,但在系统级应用领域几乎是C、C++、搅局者Go、黑天鹅Rust的天下; 移动应 ......
QT程序打包过程
QT程序打包过程 1. 介绍windeployqt.exe是Qt自带的工具,用于创建应用程序发布包。简单来说,这个工具可以自动地将某程序依赖的库、资源拷贝到其所在目录,防止程序在其他电脑上运行报找不到库的错误。这里贴上官方文档:https://doc.qt.io/qt-5/windows-deplo ......
OpenAI ChatGPT 能取代多少程序员的工作?导致失业吗?
阅读原文:https://bysocket.com/openai-chatgpt-vs-developer/ ChatGPT 能取代多少程序员的工作?导致我们程序员失业吗?这是一个很好的话题,我这里分享下: 一、ChatGPT 是什么?有什么作用 ChatGPT是一种基于人工智能技术的语言模型,是可 ......
深入理解python虚拟机:程序执行的载体——栈帧
在本篇文章当中主要介绍了 cpython 当中的函数执行的时候的栈帧结构,作为程序执行的载体,深入理解栈帧可以很好帮助我们理解 python 程序执行原理。 ......
一种新的流:为 Java 加入生成器(Generator)特性
这篇文章不是工具推荐,也不是应用案例分享。其主题思想,是介绍一种全新的设计模式。它既拥有抽象的数学美感,仅仅从一个简单接口出发,就能推演出庞大的特性集合,引出许多全新概念。同时也有扎实的工程实用价值,由其实现的工具,性能均可显著超过同类的头部开源产品。 ......
【GPT】用groovy写一个,把index导入elasic的程序
@Grab(group='org.elasticsearch.client', module='elasticsearch-rest-high-level-client', version='7.15.0') import org.elasticsearch.client.RestHighLevel ......
【GPT】用groovy写一个,从elasic导出index的程序
@Grab(group='org.elasticsearch.client', module='elasticsearch-rest-high-level-client', version='7.15.0') import org.elasticsearch.client.RestHighLevel ......
保持做一个架构师,程序员热情
0. 功能 与 实现,技术 之间需要 找到一个平衡 , 需要有说不的能力 1. 深刻理解什么是 简单 和 容易的设计 > 简单 并不容易 2. 永远不要停止编码 3. 意识风险 , 如果要失败, 需要做到快速失败 > 风险优先 4. 提出问题 比 解决问题 更难 5. 非功能性需要 决定系统架构 6 ......
Java基础
Java基础 Java基础篇 JDK 和 JRE 的区别是什么? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了 ......
JAVA运算符详解
JAVA运算字符详解 赋值运算符 符号作用说明 = 赋值 int a = 10; 将10赋值给变量a += 加后赋值 a += b; 将a+b的值给a - = 减后赋值 a -= b; 将a-b的值给a *= 乘后赋值 a *= b; 将a*b的值给a /= 除后赋值 a / =b ; 将a/b的值 ......
Linux基础知识(17)- Kerberos (二) | krb5 API 的 C 程序示例
在 “Linux基础知识(16)- Kerberos (一) | Kerberos 安装配置” 里我们演示了 Kerberos 安装配置和 Kadmin 等命令行工具的用法,本文将演示 krb5 API 的使用方法。 Krb5 API: http://web.mit.edu/kerberos/krb ......
程序员面试金典---15
八皇后 直接上代码: /** * @param {number} n * @return {string[][]} */ var solveNQueens = function(n) { // 创建一个长度为n的一维数组,其元素值为'.',然后再利用map()方法将其转化成一个n * n的二维数组b ......
Qt程序的移植
Qt是跨平台的,当Qt程序需要运行在嵌入式Linux中,需要进行移植 Qt移植分为两个部分 (1)Qt环境的移植; (2)Qt程序的移植 1.Qt环境的移植 Qt是开源的,从官网下载Qt源码,使用交叉编译工具编译成目标平台(arm-linux)的库文件,将编译生成的库文件拷贝到目标设备,并设置环境变 ......
小程序容器技术保障车载业务生态中的应用安全
随着车联网技术的不断发展和普及,车载业务生态的安全问题越来越受到关注。小程序容器技术作为一种有效的安全保障措施,在车载业务生态中发挥着重要的作用。通过隔离技术、安全认证、权限限制和远程管理等手段,小程序容器技术可以保障车载系统和用户数据的安全,有效遏制恶意攻击和滥用,提高车联网的可靠性和安全性。 ......
Java并发(三)----创建线程的三种方式及查看进程线程
一、直接使用 Thread // 创建线程对象 Thread t = new Thread() { public void run() { // 要执行的任务 } }; // 启动线程 t.start(); 例如: // 构造方法的参数是给线程指定名字,推荐 Thread t1 = new Thre ......
程序员如何提升沟通能力
作为程序员,除了技术能力外,良好的人际交往能力也非常重要。以下是一些提升为人处事能力和技巧的建议: 1. 建立良好的沟通和协作能力:与同事和客户进行有效的沟通和协作是成功的关键。练习主动倾听和表达自己的想法,以及接受和给予反馈。 2. 学会合作:在团队中合作是至关重要的,因此学会如何扮演一个合作者的 ......
记录自己每天干了什么,以及日记
4.24 虽说开始做瑞吉外卖了,但是做的基本没多少,也才配置了一下mysql的环境, idea今晚也不知道能不能装上,也才想起来周三有c++考试,要有大步的进展可能需要推迟几天了,背了一点单词,看了点数学网课……其实也没干啥事。开心点的是其实自己大一的目标已经完成了,偏科的英语四级也过了,蓝桥杯目标 ......
docker-compose一键部署java开源项目
这一年干的很多事都是为了降低我的开源项目消息推送平台austin使用门槛。 如果想学Java项目的,强烈推荐我的开源项目消息推送平台Austin(8K stars) ,可以用作毕业设计,可以用作校招,可以看看生产环境是怎么推送消息的。开源项目消息推送平台austin仓库地址: 消息推送平台🔥推送下 ......
java排序算法2(简单选择排序、堆排序)
简单选择排序 不稳定 选择排序在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后以此类推,直到所有元素均排序完毕。 for (int i = 0; i < arr.length; i++) { //记录最小值下标位置 int min=i; for (int j=i+1;j<arr.le ......
Java打印日志接口
###在java开发过程中,为了分析程序异常,或者监控程序运行流程,经常需要用到打印日志。以下为日志接口的具体实现: 点击查看代码 import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; impor ......
Java类实现某个接口后,是否需要实现接口中的所有方法?
1.结论 并不是所有的类实现接口后都必须实现接口的所有方法! 2.特殊情况 当Java抽象类实现某个接口后没必要实现所有的方法。 3.注意点 当Java普通类实现接口后必须实现接口中的所有方法。 4.原因 为什么抽象类不需要实现所有方法? 因为抽象类本身是具有抽象性的,它的方法也大多不需要进行实现, ......
java反序列化(五) JNDI注入
JNDI注入 前置知识 JNDI JNDI (Java Naming and Directory Interface) 是一个应用程序设计的 API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。可以通过字符串来锁定一个对象 JNDI 支持的服务主要有以下几种: RMI (JAVA ......
java执行linux语句
public class CommandUtil { /** * 在指定路径下执行一条命令,不能执行cd之类的命令 * * @param command 要执行的Linux命令 * @param dir 目标路径,在该路径执行上述Linux命令 * @return 命令执行后显示的结果 * @thr ......