java
文章平均质量分 60
java_prinln
这个作者很懒,什么都没留下…
展开
-
使用IDEA进行Java代码调试
BUG调试原创 2024-04-12 15:37:28 · 166 阅读 · 0 评论 -
Java多态 和 Python多态
Java多态和Python多态ava中的多态跟Python中的多态是有区别的。java中的多态定义:多态存在的三个必要条件一、要有继承;二、要有重写;三、父类引用指向子类对象java 多态演示public class Test { public static void main(String[] args) { show(new Cat()); // 以 Cat 对象调用 show 方法 show(new Dog()); // 以 Dog 对象调用 sh原创 2022-03-18 23:48:56 · 907 阅读 · 0 评论 -
Python面向对象和Java 面向对象的区别
Java和Python面向对象的不同点一. 创建对象(1)Java 中是直接创建一个类文件,一般来说一个文件就是对应着一个类 。public class 类名 {。。。} 然后再这个类里写成员属性和方法。(2) python 中class 类名 。。。 写方法。二. 构造Java 中public 类名() { 这就是无参构造 }public 类名() { 这是有参构造 }Python 中def __init(self, 参数列表): 这个相当原创 2022-03-18 21:35:06 · 3291 阅读 · 0 评论 -
微服务前序(版本控制)
从2.2.x和H版开始说起Springboot版本选择git源码地址 :springboot2.xSpringBoot2.0新特性官网通过上面官网发现,Boot官方强烈建议你升级到2.X以上版本官网看Boot版本springboot(截至2019.10.26)springboot(截至2020.2.15)Springcloud版本选择git源码地址官网官网看Cloud版本SpringCloud的版本关系 Spring Cloud 采用了英国伦敦地铁站的名称来命名,并原创 2022-02-16 14:32:57 · 611 阅读 · 0 评论 -
Java(十一) 网络编程
网络编程第一章 网络编程入门1.1软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。1.2 网络通信协议**网络通信协议:**通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信原创 2022-02-10 16:06:15 · 86 阅读 · 0 评论 -
Java(十) 缓冲流、转换流、序列化流
【缓冲流、转换流、序列化流】第一章 缓冲流昨天学习了基本的一些流,作为IO流的入门,今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士一样,相当于是对基本流对象的一种增强。1.1 概述缓冲流,也叫高效流,是对4个基本的FileXxx 流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputS原创 2022-02-10 15:40:31 · 87 阅读 · 0 评论 -
Java(九)【字节流、字符流】
字节流、字符流第一章 IO概述1.1 什么是IO生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入流,流出内存的输出流。Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操原创 2022-02-10 15:32:34 · 91 阅读 · 0 评论 -
Java(八) 【File类、递归】
File类、递归第一章 File类1.1 概述java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。public File(File parent, Str原创 2022-02-10 15:18:05 · 161 阅读 · 0 评论 -
Java(七) 等待与唤醒案例、线程池、Lambda表达式
线程池、Lambda表达式第一章 等待唤醒机制1.1 线程间通信概念:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行, 那么多线程之间需要一些协调通信,以此来帮我们达到原创 2022-02-10 15:03:06 · 119 阅读 · 0 评论 -
Java(六) 线程、同步
【线程、同步】第一章 线程1.1 多线程原理多线程程序的执行流程。代码如下:自定义线程类:public class MyThread extends Thread{ /** 利用继承中的特点 * 将线程名称传递 进行设置 */ public MyThread(String name){ super(name); }/** 重写run方法 * 定义线程要执行的代码 */ public void run(){ for (int i = 0; i < 20; i++) { /原创 2022-02-10 14:47:23 · 97 阅读 · 0 评论 -
Java(五) 异常和线程
【异常、线程】异常、线程教学目标第一章 异常1.1 异常概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是:异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不原创 2022-02-08 23:45:54 · 135 阅读 · 0 评论 -
Java(四)Map
【Map】第一章 Map集合1.1 概述现实生活中,我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图。Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。Map中的集原创 2022-02-08 22:52:03 · 81 阅读 · 0 评论 -
Java(三) 复习List、Set、数据结构、Collections
【List、Set、数据结构、Collections】主要内容数据结构List集合Set集合Collections第一章 数据结构2.1 数据结构有什么用?当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类的。好用吗?好用,这就是数据结构的用处,只不过你在不知不觉中使用了。现实世界的存储,我们使用的工具和建模。每种数据结构有自己的优点和缺点,想想如果Google的数据用的是数组的存储,我们还能方便地查询到所需要的数据吗?而原创 2022-02-08 14:02:41 · 87 阅读 · 0 评论 -
Java(二) 复习 Collection、泛型
【Collection、泛型】主要内容 Collection集合 迭代器 增强for 泛型第一章 Collection集合1.1 集合概述在前面基础班我们已经学习过并使用过集合ArrayList ,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象原创 2022-02-08 13:24:32 · 123 阅读 · 0 评论 -
Java(一) 复习 Object、常用API
day01【Object类、常用API】Object类的特点重写Object类的toString方法重写Object类的equals方法使用日期类输出当前日期使用将日期格式化为字符串的方法使用将字符串转换成日期的方法使用System类的数组复制方法使用System类获取当前毫秒时刻值使用StringBuilder类可以解决的问题使用StringBuilder进行字符串拼接操作说出8种基本类型对应的包装类名称说出自动装箱、自动拆箱的概念将字符串转换为对应的基本类型将基本类型转换为原创 2022-02-08 13:16:42 · 104 阅读 · 0 评论 -
Spring 5笔记
Spring 两个核心部分IOC 控制 反转 :把创建对象过程交给 Spring 管理AOP 面向切面,不修改源码进行功能的增强事务管理 API 的管理 Jdbc template入门案例 :下载 Spring 5 的Java 包IOC 容器(1) IOC 底层原理(2) IOC 接口 BeanFactory(3) IOC 操作 Bean 管理 (基于XML)(4)IOC 操作 Bean 管理 (基于注解的操作 )IOC 控制反转把 对象创建和 对象之间的调用原创 2022-02-08 11:46:41 · 179 阅读 · 0 评论 -
Redis(二)
Redis 场景设计应用String存储1.Key 的设计注意事项一般以业务功能模块:比如购物车key: cart:001,表示1号用户的购物车 简短,明了以主,节约内存2.简单字符缓存set key value get key 3. 结构体或对象存储a) set user value // value 为xml 或Json 格式 b) mset user:1:name deer user:1:age 18c) mget user1:name user:1:ag原创 2021-12-29 10:06:57 · 374 阅读 · 0 评论 -
孤尽班第十三次课-系统健壮性设计
孤尽班第十三次课-系统健壮性设计代码评审什么样的是烂代码(人的视角)1. 维护者脏话的频率高2. 维护者脏话的类型丰富3. 存在打架斗殴的可能性4. 面向离职编程什么是烂代码(代码视角)1. 不遵守代码规约2. 代码像迷宫3. 代码流程脚踩西瓜皮4. 代码的执行效率低5. 10行代码15 个bug代码的恶性循环1. 业务催的紧直接写代码2. 到处灭火 更是没有时间CodeRevew3. 没时间填坑,却不断挖坑星级程序员1. 写出计算机可以理解的代码 2. 写出来自原创 2021-11-25 09:32:04 · 194 阅读 · 0 评论 -
孤尽班第十二次课-Redis分布式锁
孤尽班第十二次课-Redis分布式锁分布式锁简介在同一个JVM 内部,大家往往采用synchronized 或者Lock 的方式来解决多线程间的安全问题,但是在分布式架构下,在JVM 之间,那么就需要一种更佳高校的锁机制,来处理这种跨JVM 进程之间的线程安全问题,解决方案就是: 使用分布式锁。Redis 分布式锁分析Redis 分布式锁原理Redis 分布式锁机制,主要借助setnx 和 expire 两个命令完成。 1. setnx 当key 不存在,将key 设置为value, 存原创 2021-11-22 10:40:04 · 664 阅读 · 0 评论 -
Spring框架
Spring框架优点1. Spring 是一个开源免费的框架(容器)2. spring 是一个轻量级的。非入侵的框架3. 控制反转(IOC) 面向切面编程(AOP)4. 支持事务的处理,对框架的整合 ### 总结一句话Spring就是一个轻量级的控制反转(IOC) 和AOP 面向切面编程(AOP)的框架....原创 2021-11-21 22:08:01 · 515 阅读 · 1 评论 -
孤尽班第十一次课-用户系统实现JWT
孤尽班第十一次课-用户系统实现JWTJWTJson web token (JWT), 是为了在⽹络应⽤环境间传递声明⽽执⾏的⼀种基于JSON的开放标准((RFC 7519).定义了⼀种简洁的,⾃包含的⽅法⽤于通信双⽅之间以JSON对象的形式安全的传递信息。因为数 字签名的存在,这些信息是可信的,JWT可以使⽤HMAC算法或者是RSA的公私秘钥对进⾏签名。1.1 什么是JWT 1.1.1 JWT组成 1.1.2 Header头部 头部包含了两部分,token 类型和 采用的加密算法原创 2021-11-21 11:10:09 · 760 阅读 · 0 评论 -
孤尽班第十次课程-单元测试与系统安全规约
孤尽班第十次课程-单元测试与系统安全规约单元测试规约单元测试的AIR 与 原则R:可重复性 I : 独立性A: 自动化性 单元测试的BCDE 原则B: Border 边界测试 C: Corret 正确的输入, 并得到预期的结果E: Error 证明程序有错D: Design 与设计文档相结合常见单元测试框架介绍系统安全规约实践越权访问漏洞防范措施1. 前后端同时对用户输入信息进行校验,双重验证机制2. 调用功能前,验证用户是否有权限,调用相关功能3.原创 2021-11-17 22:32:34 · 3142 阅读 · 0 评论 -
孤尽班第九次课-- OAuth2
孤尽班第九次课-- OAuth2Oauth2.0 和 1.0 的区别OAuth2.0 有四种授权模式 OAuth1.0 有一种授权模式 OAuth2 授权模式1. 授权码模式 最完整和严谨的授权模式,第三方平台登录都是此模式 安全性最高2. 简化模式 省略授权码阶,客户端是静态页面采用此模式3. 密码模式 把 用户名密码告诉客户端,对客户高度信任,比如客户单和认证服务器是同一公司 4. 客户端模式 直接以客户端名义申请令牌,很少用 为什么要用OAuth2Cookie sessi原创 2021-11-14 11:07:34 · 864 阅读 · 0 评论 -
孤尽班第八次课-集合与并发编程
孤尽班第八次课-集合与并发编程原创 2021-11-13 16:35:16 · 544 阅读 · 0 评论 -
孤尽班第六次课
孤尽班第六次课可能颠覆你认知的一节课编码规约编码规约的缘起1. 熵增定律: 只要我们没有外力干预代码规范 2. 我们的代码总有一天无可救药 3.代码规范不一致=》 代码生产力损耗4.帕金森琐碎定理 : 在一些不是核心的小事上浪费时间 5. 编码规约存在的意义(1) 减少代码的维护成本(2)改善可读性(3)提高团队开发的合作效率(4)锻炼出更加严谨的思维 (5) 身心愉快代码格式与命名1. 命名风格与代码格式-- 两个要求 命名体现代码元素特征(1)抽象类型名 使用 A原创 2021-11-08 14:43:01 · 73 阅读 · 0 评论 -
孤尽班第五次上课
孤尽班第五次上课关于技术选型 1. SOA 因为单体巨石无法灵活扩展 ,且部署困难自上而下, 从运维侧视角出发。,更多聚焦可维护性,兼顾可扩展性,从前后端分离切入。 2. 微服务 因为SOA 服务粒度太粗,难以有扩展,微服务应运而生。自上而下,从产品视角出发,更多聚焦可可扩展性,兼顾可维护性数据访问层选型数据库连接池选型常用的中间件选型中间j件选型远程通讯框架选型常用通讯开源框架的综合对比网关层选型网关的技术选型...原创 2021-11-06 15:49:23 · 208 阅读 · 0 评论 -
孤尽班第四天
孤尽班第四课孤尽聊作业1 . 用例图用例图关注什么:关注用户角色有哪些关注用户行为有哪些 【这深入浅出,精辟啊】2. 类图类图在关注什么:模型的抽象模型的属性和行为模型之间的关系3. 时序图类图在关注什么:有那些对象参与了协作随着时间的推进系统在做什么4. 状态图状态图在关注什么关注系统有多少个状态,这些状态将会定义为系统的枚举状态触发的条件5. 活动图活动图在关注什么活动图是UML 家族的 出身的血统高贵流程图是野路子活动图在流原创 2021-11-03 20:47:06 · 118 阅读 · 0 评论 -
孤尽班Java 异常处理文档
Java 异常处理文档引言异常处理是一个系统最重要的环节,当一个项目变得很大的时候,异常处理和日志系统能让你快速定位到问题。异常信息表格设计DROP TABLE IF EXISTS `sys_exception_info`;/*!40101 SET @saved_cs_client = @@character_set_client */;/*!40101 SET character_set_client = utf8 */;CREATE TABLE `sys_exception_inf原创 2021-11-01 15:15:32 · 138 阅读 · 0 评论 -
孤尽班第一周总结
孤尽班第一周总结清幽显云山,虚静出内功原创 2021-11-01 11:47:26 · 56 阅读 · 0 评论 -
孤尽班第三次课
孤尽班第三次课Java 的异常机制道路千万条 ,安全第一条日志不规范 ,排查两行泪try catch finally生成异常 捕获异常 抛出异常(throw) 声明异常(throws)异常抛出与捕获的原则非必要不使用异常使用描述性消息抛出异常力所能及的异常一定要处理异常或略要有理有据...原创 2021-11-01 10:02:30 · 66 阅读 · 0 评论 -
孤尽班第二次课
孤尽班第二次课数据库设计的规范表 字段 命名必须使用小写字母 或者数字禁止出现数字开头禁止两个下划线中间只出现数字不使用建表强制规约数据类型– 小数类型为 decimal货币数量使用最小货币单位, 数据类型为bigint字符串长度几乎相等 使用char定长的数据类型为char 能节约空间注意 长10 存5 有5 个空格varchar 长度不要超过 5000建表推荐规约表的名称最好遵循 业务名称表饿 作用库名于应用名称尽量一致如果修改字段含义或字段表示原创 2021-10-30 16:55:48 · 70 阅读 · 0 评论 -
孤尽班第一天
孤进T31 第一天PMF 市场产品契合度KISS 原则类图的设计关系原创 2021-10-28 11:08:03 · 115 阅读 · 0 评论 -
往redi数据库中存储hash 出现的低级错误i
报错信息如下redis.clients.jedis.exceptions.JedisDataException: ERR wrong number of arguments for 'hmset' command哈哈 低级错误啊总结 :在使用redis的java客户端驱动包的时候,如果使用hmset的时候,传递的hashmap对象是一个长度为0的对象的话,会报这个错误。...原创 2021-09-19 20:18:23 · 183 阅读 · 0 评论 -
Idea 创建Spring工程
Idea 创建Spring工程1.2. 3. 5 添加jar 包原创 2021-09-11 23:21:05 · 75 阅读 · 0 评论 -
使用IDEA+Gradle构建Spring5源码并调试(二)
使用IDEA+Gradle构建Spring5源码并调试(二)一、编译源码1、下载源码https://github.com/spring-projects/spring-framework/tree/v5.2.8.RELEASE2、安装gradle并且配置环境变量Gardle变量配置参考文章:https://www.jb51.net/article/140691.htm3、替换配置文件gardle为本地文件、修改编码格式gradle-wrapper.properties文件修改配置为自己本原创 2021-09-09 14:11:49 · 245 阅读 · 0 评论 -
使用IDEA+Gradle构建Spring5源码并调试(一)
使用IDEA+Gradle构建Spring5源码并调试(一)1.Idea kotlin插件安装2. gradle安装配置gradle环境变量新增GRADLE_HOME3.下载源码 到该地址下载源码https://github.com/spring-projects/spring-framework/tree/v5.2.8.RELEASE4. 解压修改 settings.gradle文件repositories { gradlePluginPortal() maven {原创 2021-09-09 13:53:50 · 137 阅读 · 0 评论 -
Mavan Setting.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?><!--Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownershi原创 2021-08-12 16:50:09 · 117 阅读 · 0 评论 -
SSL安全证书的绑定
SSL安全证书的绑定1 . 先购买证书 ,各大云服务平台都有啊2, 本博文绑定SSL 安全证书绑定的是单域名。3 . 根据SSL 安全证书的开发文档, 比如 Nginx 或者 其他 服务器 按要求进行配置4 大坑当绑定后 前端向后端请求的时候 用https://...原创 2021-08-11 18:00:35 · 528 阅读 · 0 评论 -
Java 数组类型数据
JAVA 数组类型数据public class Demo01Array{ public static void main()(String[] args){ // 创建一个数组,里面可以放300 个int类型的数据 int arrayA = new int[300]; // 创建一个数组,能存放 10 个double 类型的数据 double[] arrayB = new double[10]; // 创建一个数组,存放5个字符串 S原创 2020-12-19 20:20:59 · 137 阅读 · 1 评论 -
Spring boot 与Web 开发 学习笔记草稿
Spring boot 与Web 开发 学习笔记使用 Spring Boot创建Spring Boot 应用,选中我们需要的模块Spring Boot 已经默认将这些场景配置好啦只需要在配置文件中 指定少量的配置则项目就可以运行起来。3) 自己编写业务代码;自动配置原理?这个场景 Spring Boot 帮我们配置了 什么 , 怎么进行配置的,能不能修改? 能修改那些配置?能不能扩展 ??xxxAutoConfiguration: 帮我们给容器中自动配置组件xxxProperties原创 2020-12-15 10:15:45 · 125 阅读 · 0 评论