- 博客(436)
- 资源 (8)
- 收藏
- 关注

原创 值得收藏的开源项目
本片文章记录平时开发遇到个人觉得值得收藏的项目1、网页视频播放器中的王牌git地址:https://gitee.com/niandeng/ckplayer官网:https://www.ckplayer.com/manual/2、Spring Boot 的支付服务:支付宝,微信,银联详细代码案例git地址:https://gitee.com/52itstyle/spring-boot-pay3、springboot-bucket SpringBoot 全家桶 —— 本项目对目前Web.
2020-10-27 12:16:50
1290

原创 Springboot创建项目(idea版本)
一:概述由于springboot项目,不管是java工程还是web工程都可以直接以jar方式运行,所以推荐创建jar工程,这里创建jar工程项目为例。二:两种方式创建springboot项目1.第一种方式手动在idea中new一个新的项目。选择maven工程完成的结构如图......
2019-06-10 12:54:52
102221
5

原创 springboot整合ssm详细讲解
SSM是企业中广泛应用的框架。大家再熟练地使用SSM进行业务逻辑开发的时候,也被它大量的xml配置困扰。今天快速优雅的使用SpringBoot实现简易的SSM工程。废话不多说,come on开发工具idea1.创建一个web工程,pom.xml中加入如下配置:<parent> <groupId>org.springframework.boot&l...
2018-11-07 10:49:58
32132
14

原创 eclipse篇2:如何连接mysql数据库
第二步如图再eclipse中建立一个项目.new---folder---文件名(我起名jdbc,随便起,无所谓)//写上登陆数据库系统的用户名(安装数据库时候设置的用户名)privateStringjdbcName="com.mysql.jdbc.Driver";//写上登陆数据库系统的密码。要连接数据库必须要下载数据库驱动,可以取网上下载对应版本的数据库驱动(当然如果过不想下载。System.out.println("连接成功");//连接数据库要使用的量。//公共的连接数据库方法。...
2018-04-27 16:37:31
49775
24
原创 Java反序列化漏洞揭秘:从原理到攻击实战
摘要:Java反序列化漏洞分析与案例 Java反序列化漏洞已成为重大安全隐患,典型案例如Apache Commons Collections、Spring RMI、Jackson和fastjson等框架漏洞。漏洞原理在于攻击者可重写readObject()方法,在反序列化过程中注入恶意代码。示例演示了通过Runtime.exec()执行系统命令,以及Spring框架中利用RMI服务绑定恶意类的攻击场景。这类漏洞影响范围广泛,因其涉及第三方库的深度调用链,修复需严格校验反序列化入口并升级安全版本。
2025-09-02 23:43:45
687
原创 高效数据传输的秘密武器:Protobuf
Protobuf(Protocol Buffers)是Google开发的高效二进制数据交换格式,相比JSON和XML具有更小数据量、更快解析速度和跨语言支持等优势。文章介绍了Protobuf的基本概念、语法规则(如.proto文件定义)、编译方法及Java应用示例。通过定义结构化消息类型并生成对应代码,Protobuf可实现高效序列化/反序列化,特别适合微服务等需要高性能数据传输的场景。
2025-09-02 23:41:27
741
原创 Java代码耗时统计的5种方法
本文介绍了多种Java代码耗时统计的方法。针对AOP无法满足自定义代码段耗时统计的需求,提供了五种解决方案:1)使用System.currentTimeMillis()或nanoTime()基础API;2)利用Java8的Instant.now()和Duration计算;3)Spring框架的StopWatch工具;4)Apache Commons的StopWatch;5)基于Java8函数式接口的封装方案(TraceHolder)。其中最后一种方法通过Supplier和IntConsumer接口实现了灵活
2025-09-02 23:29:18
231
原创 高效对象属性复制工具
本文介绍了Java中常用对象属性复制工具及其优缺点。主要内容包括:1. Apache BeanUtils和Spring BeanUtils的使用方法及性能差异,Spring性能更优;2. 工具使用中的常见问题:类型不匹配、浅拷贝、属性名不一致、null覆盖等;3. Hutool、Cglib BeanCopier等其他工具的特点;4. MapStruct编译期生成代码的高性能优势;5. 性能测试对比及工具选择建议:简单属性用set/get,多属性推荐Spring BeanUtils或Cglib BeanCop
2025-09-02 22:56:11
921
原创 java中的VO、DAO、BO、PO、DO、DTO
数据对象:xxxDO,xxx即为数据表名数据传输对象:xxxDTO,xxx为业务领域相关的名称。展示对象:xxxVO,xxx一般为网页名称。POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。
2025-08-30 21:09:33
620
原创 java序列化和反序列化
计算机中最基本的存储单位是字节 Byte, 任何数据最终都会被编码成字节序列,1byte=8bit, 一个字节等于八位,每一位都是用0 和 1 组成。在内存中,数据就是以 0 和 1 组成的二进制形式存储的,而字节数据在传输(如网络传输)或读写(如文件操作、数据库操作)时,通常以 "流"(的形式处理(即按顺序逐个字节传输 / 读写),这个流称为二进制流 (注: IO 支持的数据格式就是字节数组)。我们平时写程序的时侯,如果要把运行中的 java 对象保存到数据库、文件或者通过网络传输,就需要把这些对象转
2025-08-17 17:59:20
810
原创 springboot接口请求参数校验
参数校验可以防止无效或错误的数据进入系统。通过校验前端输入的参数,可以确保数据的完整性,避免因为缺少必要的信息而导致程序错误或异常。例如,对于密码字段,可以通过校验规则要求用户输入至少8个字符、包含字母和数字等,以增加密码的强度,提高系统的安全性。通过及时地反馈错误信息,用户可以更快地发现和纠正输入错误,提升用户体验。特别是在前后端接口联调时,前端传参错误很快能得到异常提示,就大大提升了联调效率。
2025-08-13 22:36:49
885
原创 javaswing json格式化工具
本文展示了一个用Java Swing开发的JSON可视化工具GUI界面。该工具提供多种JSON处理功能:格式化、验证、压缩、清空、复制结果、加载示例数据以及生成树形视图。界面分为输入区和输出区,输出区支持文本和树形两种视图模式。通过ObjectMapper处理JSON数据,实现了自动格式化和状态提示功能。整个界面采用BorderLayout布局,包含顶部按钮区、中部文本区和底部状态栏,为用户提供友好的JSON处理体验。
2025-08-13 22:16:12
281
原创 jdk安装
安装到如下步骤,是另外安装一个jre,因为jdk包含jre所以上面安装的时候已经安装了jre,此时关闭界面也行,但是为了保证有些编程工具配置jre问题,这里可以单独安装jre,比如这里安装到和jdk同目录下。将下载好的jdk压缩包jdk-8u151-linux-x64.tar.gz上传到opt目录下(安装软件一般安装在opt,根据自己习惯),上传软件这里使用的而是xftp,完成之后直接解压。win10中在环境变量中找到path--新建输入%JAVA_HOME%\bin--确定。wq 即可保存 如图。
2025-02-20 10:56:20
701
原创 阿里巴巴java 开发手册1.7
《Java 开发手册》是 Java 社区爱好者的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断完善,整理成册后,众多社区开发者踊跃参与打磨完善,系统化地整理成册,当前的最新版本是黄山版。现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编程知识点,其它维度的知识点也会影响到软件的最终交付质量。
2024-04-18 10:58:32
3263
原创 nodejs下载安装
原来的淘宝镜像 registry.npm.taobao.org 已替换为 registry.npmmirror.com ,当点击 registry.npm.taobao.org 会默认跳转到 registry.npmmirror.com。此处说明下:新版的Node.js已自带npm,安装Node.js时会一起安装,npm的作用就是对Node.js依赖的包进行管理,也可以理解为用来安装/卸载Node.js需要装的东西。如果你是选择.msi格式安装的时候,他默认是会为你配置环境变量的。
2024-01-18 00:22:11
1411
原创 langchain入门及两种模型的使用
LangChain是一个基于语言模型开发应用程序的框架官网中文官网Langchain基于文档数据的问答聊天机器人代理python langchain中有六大核心模块,分别是模型输入输出 ( Model I/O ):与语言模型进行接口对于模型,LangChain中可以使用不同类型的模型LLMs大型语言模型(LLMs)是将文本字符串作为输入,并返回文本字符串作为输出。聊天模型聊天模型将聊天消息列表作为输入,并返回聊天消息。检索:与特定于应用程序的数据进行接口管道:构建调用序列。
2023-12-05 16:59:05
3975
原创 Arkts web组件的使用
访问在线网页时您需要在module.json5文件中申明网络访问权限:ohos.permission.INTERNET。加载网页效果无法在预览器中查看,需要在模拟器或者真机中展示项目。Web组件的使用非常简单,只需要ArkTS文件中创建一个。组件,传入两个参数就可以了。指定引用的网页路径,为组件的控制器,通过。
2023-11-27 21:01:55
1837
1
原创 Arkts http数据请求
使用Arkts功能需要申请ohos.permission.INTERNET权限。即在module.json5文件中申明网络访问权限:ohos.permission.INTERNET。Arkts http数据请求功能主要由http模块提供。取消订阅HTTP Response Header 事件。(可选)处理HTTP响应头和HTTP网络请求的返回结果。订阅HTTP Response Header 事件。根据URL地址,发起HTTP网络请求。根据URL地址,发起HTTP网络请求。(可选)订阅HTTP响应头。
2023-11-27 20:55:20
2764
1
原创 ArkTs变量类型、数据类型基础语法
ArkTS是华为自研的开发语言。它在TypeScript(简称TS)的基础上,匹配ArkUI框架,扩展了声明式UI、状态管理等相应的能力,让开发者以更简洁、更自然的方式开发跨端应用。
2023-11-25 15:38:12
6195
1
原创 HarmonyOS简述及开发环境搭建
HarmonyOS是一款面向万物互联时代的、全新的分布式操作系统。有三大系统特性,分别是:硬件互助,资源共享;一次开发,多端部署;统一OS,弹性部署。
2023-11-25 11:59:15
3551
转载 Springboot中使用Actuator监控项目
在企业应用中除了要了解Spring Boot业务的单元测试、集成测试等功能使用外,在上线之后还需要对线上应用的各项指标(比如,CPU利用率、内存利用率、数据库连接是否正常、用户请求数据等)进行监控和运维。在传统项目中,这些监控和运维往往需要借助其他第三方的工具实现,而在Spring Boot中提供了spring-boot-actuator模块,对于小型项目够用了,可以通过http、jmx、ssh、telnet等形式来监控和管理生产环境。
2023-11-24 17:01:11
6814
原创 python 数据类型之集合
集合(set)是一个 无序 、可变、不允许数据重复的容器。集合中的元素不会重复,并且可以进行交集、并集、差集等常见的集合操作。可以使用大括号 { } 创建集合,元素之间用逗号 , 分隔, 或者也可以使用 set() 函数创建集合。无序,无法通过索引取值。可变,可以添加和删除元素。v1.add(55)不允许数据重复。v1.add(22)注意:定义空集合时,只能使用v = set(),不能使用v={}(这样是定义一个空字典)。
2023-11-23 16:27:11
768
原创 python变量、常量、数据类型
变量是存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符等。
2023-11-23 16:07:20
399
原创 python数据类型之字典、元组
字典是 有序(3.6+以前无序)键不重复且 元素只能是键值对的可变的个容器。键不重复,重复则会被覆盖如下定义一个字典# 使用大括号 {} 来创建空字典# 使用内建函数 dict() 创建字典:# 创建有值得字典info = {"age": 12,"name": "测试","hobby": ['篮球', '足球'],True: 5,12: 10# 打印字典。
2023-11-23 15:54:49
370
原创 python 数据类型之列表
列表(list),是一个有序且可变的容器,在里面可以存放多个不同类型的元素不可变类型:字符串、布尔、整型(已最小,内部数据无法进行修改)可变类型:列表(内部数据元素可以修改)
2023-11-23 15:25:18
1671
转载 标准库、第三方库和外部工具
人生苦短,我用python,Python 生态,向来以各种类库齐全而闻名,这也是这门语言如此受欢迎的重要原因Python内置函数:Python自带的内置函数。函数无需导入,直接使用。例如要计算-3.2的绝对值,直接使用abs函数,方法是abs(-3.2)Python标准库:Python自带的标准库。Python标准库无需安装,只需要先通过import方法导入便可使用其中的方法。例如导入string模块,然后使用其中的find方法:第三方库:Python的第三方库。
2023-11-22 12:19:34
253
原创 LangChain安装和入门案例
大语言模型(LLM)是指使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义。大语言模型可以处理多种自然语言任务,如文本分类、问答、对话等,是通向人工智能的一条重要途径。
2023-11-03 17:33:44
2914
原创 Jupyter Notebook交互式开源笔记本工具
Jupyter Notebook一个交互式的开源笔记本工具,可以用于编写、运行、和共享代码、文本、图形等内容。如下文本、代码、图形支持多种编程语言,包括python、R和Julia等,可以走一个web浏览器中进行使用Jupyter Notebook一个很重要的特点就是可以交互式的运行代码。即用户可以选择性的执行某个代码单元格,而不是从头到尾运行整个程序,这种交互式的特性使得Jupyter Notebook非常适合数据分析、机器学习和可视化等任务。
2023-11-03 13:14:24
1309
原创 python操作mysql
这篇主要介绍开发中常用的PyMySQL 使用PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2 中则使用 mysqldb。
2023-10-30 17:14:53
4057
原创 python反射
反射,提供了一种更加灵活的方式让你可以实现去 对象 中操作成员(以字符串的形式去对象中进行成员的操作)。正常面向对象使用,如下创建一个类然后创建一个对象,通过对象调用成员反射使用Python中提供了4个内置函数来支持反射:getattr,去对象中获取成员v1 = getattr(对象,"成员名称")v2 = getattr(对象,"成员名称", 不存在时的默认值)setattr,去对象中设置成员setattr(对象,"成员名称",值)hasattr,对象中是否包含成员。
2023-10-20 11:03:25
157
原创 python异常处理
在程序运行过程中,总会遇到各种各样的错误。有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的。有的错误是用户输入造成的,比如让用户输入email地址,结果得到一个空字符串,这种错误可以通过检查用户输入来做相应的处理。
2023-10-20 10:43:02
828
原创 python进制和编码
print(data) # b'\xe6\xad\xa6\xe6\xb2\x9b\xe9\xbd\x90' utf8,中文3个字节。目前最广泛的编码为:utf-8,他可以表示所有的字符且存储或网络传输也不会浪费资源(对码位进行压缩了)。注意:一般中文都使用第三个模板(3个字节),这也就是平时大家说中文在utf-8中会占3个字节的原因了。包含所有文字和二进制的对应关系,全球应用最为广泛的一种编码(站在巨人的肩膀上功成名就)。"B" 对应的unicode码位为 0042,那么他应该选择的一个模板。
2023-10-19 17:08:42
289
原创 python语句
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else注意不要少写了冒号。当然上面的判断是很粗略的,完全可以用elif是else if的缩写,完全可以有多个elif,所以if。
2023-10-19 16:46:05
109
原创 python安装、输入输出、注释、中文编码、编码规范等基础语法
Python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。现在,全世界差不多有600多种编程语言,但流行的编程语言也就那么20来种。如果你听说过TIOBE排行榜,你就能知道编程语言的大致流行程度。
2023-10-19 11:27:37
320
原创 python实现分词器
在Python中实现分词有很多方法,具体取决于你的应用场景和数据。下面我会介绍一种常用的分词库——jieba。如果你的数据是英文,你也可以使用nltk库。
2023-10-13 15:41:08
1211
原创 Springboot对MVC、tomcat扩展配置
Springboot在web层的开发基本都是采用Springmvc框架技术,但是Springmvc中的某些配置在boot是没有的,我们就应该根据自己的需求进行对mvc扩展配置。
2023-09-29 11:48:04
772
原创 Springboot中Aop的使用
Order(100):AOP 切面执行顺序, @Before 数值越小越先执行,@After 和 @AfterReturning 数值越大越先执行。@Pointcut:定义一个切入点,可以是一个规则表达式,比如下例中某个 package 下的所有函数,也可以是一个注解等。@Around:在切入点前后切入内容,并自己控制何时执行切入点自身的内容。相比较于拦截器,Spring 的aop则功能更强大,封装的更细致,需要单独引用 jar包。@Before:在切入点开始处切入内容。
2023-09-29 11:43:03
226
java小数处理工具类
2023-12-25
java和mysql数据库学生信息管理系统
2022-07-10
java图书管理系统,文件读写实现
2022-07-10
java+mysql数据库公益管理系统
2022-07-10
java数组实现的图书馆系统.rar
2022-07-10
java+mysql数据库学生信息管理系统.rar
2022-07-10
java+mysql数据库学生信息管理系统.rar
2022-07-10
java学生信息管理系统
2022-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人