hao同学的技术博客

  • 首页
  • Java
    • Java
    • JVM教程
    • Java面试
    • Java并发入门
    • Java并发进阶
  • 项目
    • 从零打造项目
  • Python
    • Python
    • Python爬虫
    • 算法
  • Java框架
    • Spring
    • SpringBoot
  • 前端
    • Angular
  • 其他
    • Linux
    • SQL
  • 随笔
Java
Java成神之路
随笔

GraphicsMagick之实践出真知

介绍 GraphicsMagick 是个图片处理库,是从ImageMagick 5.5.2分支出来的,但是现在他变得更稳定和更轻、更快一些 GraphicsMagick 号称图像处理领域的瑞士军刀。 短小精悍的代码却提供了一个鲁棒、高效的工具和库集合,来处理图像的读取、写入和操作,支持超过88种图像格式,包括重要的DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM和TIFF。 通过使用 OpenMP 可是利用多线程进行图片处理,增强了通过扩展 CPU 提高处理能力。GraphicsMagick可以…

2022年9月7日 0条评论 256点热度 0人点赞 hresh 阅读全文
随笔

手把手教你如何利用Java给图片添加文字和图片水印

前言 最近工作上有个需求,动态生成一张图片,具体来说就是基于模版图片动态添加文字和图片(文字内容不同,图片数目不同),其中文字大小不全一样,且对位置有所要求。 本文将剖析多个技术方案来实现水印生成,并最终抉择出最优方案。 技术分析 基于模版图片动态添加文字和图片,需要先调研一下有哪些技术方案,可能添加文字和图片的技术不同。 Graphics2D 利用 JDK 自带的 Graphics2D ,该类扩展 Graphics 类,以提供对几何形状、坐标转换、颜色管理和文本布局更为复杂的控制。它是用于在 Java(tm) 平…

2022年9月5日 0条评论 450点热度 0人点赞 hresh 阅读全文
Java并发进阶

深入理解final关键字

final 关键字在我们学习 Java 基础时都接触过,而且 String 类本身就是一个 final 类,此外,在使用匿名内部类的时候可能会经常用到 final 关键字。那么 final 关键字到底有什么特殊之处,今天我们就来了解一下。 final关键字的基本用法 在 Java 中,final 关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。下面就从这三个方面来了解一下 final 关键字的基本用法。 修饰类 当用 final 修饰一个类时,表明这个类不能被继承,比如说 String 类。final …

2022年8月16日 0条评论 242点热度 1人点赞 hresh 阅读全文
Java并发进阶

深入理解volatile关键字

前言 volatile 这个关键字可能很多朋友都听说过,它有两个重要的特性:保证可见性和禁止指令重排序。但是对于 volatile 的使用以及背后的原理我们一无所知,所以本文将带你好好了解一番。 由于 volatile 关键字是与 Java的内存模型有关的,因此在讲述 volatile 关键之前,我们先来了解一下 Java 内存模型,然后介绍 volatile 关键字的使用,最后详解 volatile 关键字的原理。废话不多说,我们直接进入正文。 volatile的使用 一旦一个共享变量(类的成员变量、类的静态成员…

2022年7月14日 2条评论 1644点热度 1人点赞 hresh 阅读全文
Java并发进阶

Happens-Before规则详解

在《Java并发编程Bug的源头》一节中提到编译优化会带来有序性问题,具体来说就是 JIT 编译器会进行指令重排序(Instruction Reorder)优化。优化措施引发的有序性问题,Java 语言肯定会注意到,所以就引入了 Happens-Before(先行发生) 原则,它是 JMM 最核心的概念,在 JMM 章节中提到了如何保证可见性和有序性,都和该原则有关联。 对应 Java 程序员来说,理解 Happens-before 是理解 JMM 的关键。这个原则非常重要, 它是判断数据是否存在竞争,线程是否安全…

2022年7月6日 0条评论 387点热度 0人点赞 hresh 阅读全文
Java并发进阶

Java并发编程Bug的源头

相信大家都听说过并发编程,面试中也经常会被提问这一知识点,有时候让讲讲自己有没有并发编程的经验,细致地讲一下。结果可想而知,理论知识还可以说一说,但没多少实践经验,更让人头疼的是理论与实践差距极大。在工作中,系统的并发量比较低,借助数据库和类似 Tomcat 这种中间件,我们基本上不用写并发程序。 总之一句话,系统并发量不高的时候,并发问题基本上都被中间件和数据库解决了,或者系统数据量比较庞大,对性能有所要求,此时就需要用到并发编程了。 并发编程是个好东西,但天下没有免费的午餐,凡事都是有代价的,获得高性能的同时,…

2022年7月5日 1条评论 381点热度 0人点赞 hresh 阅读全文
Java并发进阶

Java内存模型(JMM)详解

紧接前文,在了解了计算机的相关概念后,我们正式进入 Java 并发知识的学习。本文主要讲解 Java 内存模型(Java Memory Model,JMM),它是 Java 虚拟机规范中定义的一种模型,用于屏蔽掉各种硬件和操作系统的内存访问差异,以实现让 Java 程序在各种平台下都能达到一致的并发效果,JMM 规范了 Java 虚拟机与计算机内存是如何协同工作的:规定了一个线程如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。 好了,废话不多说,直接进入主题。 主内存与工作内…

2022年6月8日 0条评论 521点热度 2人点赞 hresh 阅读全文
Java并发进阶

关于计算机的一些知识

CPU、内存、I/O设备三者的处理速度差异很大,其中 CPU 处理速度最高,I/O设备速度最差。而一个系统中会同时用到这三者,根据木桶理论(一只水桶能装多少水取决于它最短的那块木板),程序整体的性能取决于最慢的操作——读写 I/O 设备,也就是说单方面提高 CPU 性能是无效的。 为了合理利用 CPU 的高性能,平衡这三者的速度差异,计算机体系结构、操作系统都做出了贡献,主要体现为: CPU 增加了缓存,以均衡与内存的速度差异; 操作系统增加了进程、线程,以分时复用 CPU,进而均衡 CPU 与 I/O 设备的速度…

2022年5月31日 0条评论 497点热度 0人点赞 hresh 阅读全文
Java面试

Java面试准备之SpringCloud

什么是 Spring cloud Spring Cloud就是微服务系统架构的一站式解决方案,在平时我们构建微服务的过程中需要做如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等操作,而 Spring Cloud 为我们提供了一套简易的编程模型,使我们能在 Spring Boot 的基础上轻松地实现微服务项目的构建。 SpringCloud 入门推荐阅读: https://blog.csdn.net/Herishwater/article/details/106292642 Spring Cloud …

2022年5月31日 0条评论 355点热度 0人点赞 hresh 阅读全文
Java面试

Java面试准备之SpringBoot

什么是 Spring Boot? 首先,重要的是要理解 Spring Boot 并不是一个框架,它是一种创建独立应用程序的更简单方法,只需要很少或没有配置(相比于 Spring 来说)。Spring Boot 最好的特性之一是它利用现有的 Spring 项目和第三方项目来开发适合生产的应用程序。 @SpringBootApplication @SpringBootApplication 注解等价于默认属性使用@Configuration,@EnableAutoConfiguration 和 @ComponentSc…

2022年5月31日 0条评论 299点热度 0人点赞 hresh 阅读全文
12345…7

hresh

这是一个专注于IT技术学习交流的个人技术博客网站,包括Java学习、Python爬虫、Web开发实践等领域,深耕Java领域,内容涵盖Java基础、Java并发编程、Java虚拟机、Java面试等核心知识点。

最新 热点 随机
最新 热点 随机
后端必知:遵循Google Java规范并引入checkstyle检查 Spring Security结合Redis实现缓存功能 Spring Security结合JWT实现认证与授权 Spring Security自定义认证逻辑实现图片验证码登录 Spring Security进阶学习 Spring Security入门学习
Java面试准备之并发基础 Java面试准备之Spring框架系列一 你真的了解垃圾回收吗 Spring Security结合Redis实现缓存功能 Python 实现 AES 加密/解密 Java面试准备之网络知识一
分类
  • Angular / 11篇
  • Java / 6篇
  • Java并发入门 / 7篇
  • Java并发进阶 / 7篇
  • Java面试 / 24篇
  • JVM教程 / 25篇
  • Linux / 3篇
  • Python / 13篇
  • Python爬虫 / 17篇
  • Spring / 27篇
  • SpringBoot / 8篇
  • SQL / 6篇
  • 从零打造项目 / 19篇
  • 算法 / 18篇
  • 随笔 / 16篇
最近评论
1 发布于 4 个月前(09月29日) :lol: :twisted: 发发
roydon 发布于 4 个月前(09月27日) 加个友链吗大佬。 我的site:https://roydon.xyz
Javmag 发布于 5 个月前(09月21日) :rolleyes: Theme Kratos Made By Seaton Jiang.
小wu 发布于 5 个月前(09月06日) 宝藏up关注了 :arrow:
罗简单 发布于 7 个月前(07月17日) 您好,我们有一个网站需要爬取数据,参数也加密了,需要您的帮助,付费,请问如何联系到您? 我的vx是...
友链
  • roydon roydon
  • 雨临Lewis的博客 雨临Lewis的博客

COPYRIGHT © 2022 hao同学的技术博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鄂ICP备2022007381号

鄂公网安备 42010302002449号