java技术圈 为您找到相关结果 15

git submodule以及被忽略的.gitignore

###引言: 不积跬步,无以至千里;不积小流,无以成江海。原本自以为对git相关的东西以及原理已经有了不错的认识和理解,然而当碰到一个小小的problem才发现自己掌握得并没有自己想象的那么好,好记性不如烂笔头,于是决定把自己对.gitignore以及submodule的部分理解简单记录下来,由于个人能力有限,如有不当之处,欢迎指正。 ###git submodule git submodule在项目中虽一直在使用(用于维护自有公共类库),不过对此知之甚少,于是抽空做一个小小的总结。可运行git submodule –help获取帮助doc。 目地:多项目维护共用公共类库starjazz 步骤: ####在项目中初始化submodule 1. 在即将引用的项目中初始化此git submodu...阅读全文

博文 2019-04-04 09:54:22 www.allocmem.com

mybatis中用tinyint保存Boolean类型_xue317378914的专栏

一、boolean类型 MYSQL保存BOOLEAN值时用1代表TRUE,0代表FALSE,boolean在MySQL里的类型为tinyint(1), MySQL里有四个常量:true,false,TRUE,FALSE,它们分别代表1,0,1,0, mysql> select true,false,TRUE,FALSE; +------+-------+------+-------+ | TRUE | FALSE | TRUE | FALSE | +------+-------+------+-------+ | 1 | 0 | 1 | 0 | +------+-------+------+-------+ 可以如下插入boolean值:insert into [xxxx(xx)] valu...阅读全文

博文 2020-10-16 15:00:47 CSDN博客

Mybatis详解系列(五)--Mybatis Generator和全注解风格的MyBatis3DynamicSql - 子月生

简介 Mybatis Generator (MBG) 是 Mybatis 官方提供的代码生成器,通过它可以在项目中自动生成简单的 CRUD 方法,甚至“无所不能”的高级条件查询(MyBatis3DynamicSql,有了它根本不需要 Mybatis Plus),让我们避免了进行数据库交互时需要手动创建对象和配置 Mybatis 映射等基础工作。 另外,MBG 有很好地扩展性,它提供了大量的接口和插件用来给我们自定义生成的代码应该是什么样子,例如我们可以自定义注释、代码格式化、添加 toString 方法等。本文将讲解如何使用这些接口。 本文内容大致如下,由于篇幅较长,可选择阅读: 如何使用 MBG 生成代码; 详解 MBG 的配置,将配置使用自定义注释生成器、实体类中添加 toString/...阅读全文

博文 2021-03-02 08:57:32 博客园

理解Java中的弱引用(Weak Reference) - absfree

本篇文章尝试从What、Why、How这三个角度来探索Java中的弱引用,理解Java中弱引用的定义、基本使用场景和使用方法。由于个人水平有限,叙述中难免存在不准确或是不清晰的地方,希望大家可以指出,谢谢大家:) 1. What——什么是弱引用? Java中的弱引用具体指的是java.lang.ref.WeakReference类,我们首先来看一下官方文档对它做的说明: 弱引用对象的存在不会阻止它所指向的对象变被垃圾回收器回收。弱引用最常见的用途是实现规范映射(canonicalizing mappings,比如哈希表)。 假设垃圾收集器在某个时间点决定一个对象是弱可达的(weakly reachable)(也就是说当前指向它的全都是弱引用),这时垃圾收集器会清除所有指向该对象的弱引用...阅读全文

博文 2021-04-27 05:57:37 博客园

访问者模式

Python 代码: # Visitor Pattern with Python Code from abc import abstractmethod,ABCMeta # 定义一个表示元素(Element)的接口 class ComputerPart(metaclass=ABCMeta): @abstractmethod def accept(self, inComputerPartVisitor): pass #创建阔爱站了ComputerPart的实体类 class Keyboard(ComputerPart): def accept(self, inComputerPartVisitor): inComputerPartVisitor.visitKeyboard(self) clas...阅读全文

博文 2020-08-08 15:12:58 菜鸟教程

迈向高级的Java面试突围课【网盘下载无密】

download:迈向高级的Java面试突围课本课采用大厂多轮面试形式贯穿主线,内容涵盖Java中高级面试的必考点、高频点、加薪点。同时融合讲师多年阿里字节考官经验,通过真实模拟不同面试场景,将面试每个环节和应对心得逐一讲解,助你突破自身瓶颈,超常发挥,顺利通过大厂面试。技术要求Java Web1年以上实际开发经验环境参数环境参数:JDK1.8、SpringBoot2.x 开发工具:Intelij IDEA20世纪90年代,硬件范畴出现了单片式核算机系统,这种价格低廉的系统一出现就当即引起了主动控制范畴人员的留神,由于运用它能够大起伏行进消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。Sun公司为了抢占市场先机,在1991年景立了一个称为Green的项目小组,帕特里克、詹姆...阅读全文

博文 2021-01-16 21:03:24 jmterorh

JVM自定义类加载器在代码扩展性的实践

作者:vivo互联网服务器团队-Wang Fei一、背景名单管理系统是手机上各个模块将需要管控的应用配置到文件中,然后下发到手机上进行应用管控的系统,比如各个应用的耗电量管控;各个模块的管控应用文件考虑到安全问题,有自己的不同的加密方式,按照以往的经验,我们可以利用模板方法+工厂模式来根据模块的类型来获取到不同的加密方法。代码类层次结构示意如下:获取不同加密方法的类结构图利用工厂模式和模板方法模式,在有新的加密方法时,我们可以通过添加新的handler来满足"对修改关闭,对扩展开放"的原则,但是这种方式不可避免的需要修改代码和需要重新发版本和上线。那么有没有更好的方式能够去解决这个问题,这里就是我们今天要重点讲的主题。二、类加载的时机 一个类型从被加载到虚拟机内存中开始,到卸载出内存为止,它...阅读全文

博文 2023-04-12 07:21:32 mp.weixin.qq.com

JVM自定义类加载器在代码扩展性的实践

导语 类加载器算是 JVM 的核心技术,也是比较难懂的知识,因此当然也就是成为了 java 面试中不可少内容,JVM自定义类加载器在代码扩展性在现实中也是我们经常遇到的问题,本次介绍的是VIVO技术团队在类加载器上的实践! 一、背景 名单管理系统是手机上各个模块将需要管控的应用配置到文件中,然后下发到手机上进行应用管控的系统,比如各个应用的耗电量管控;各个模块的管控应用文件考虑到安全问题,有自己的不同的加密方式,按照以往的经验,我们可以利用模板方法+工厂模式来根据模块的类型来获取到不同的加密方法。代码类层次结构示意如下: 获取不同加密方法的类结构图 利用工厂模式和模板方法模式,在有新的加密方法时,我们可以通过添加新的handler来满足"对修改关闭,对扩展开放"的原则,但是这种方式不可避免的...阅读全文

博文 2023-04-12 07:23:09 HeapDump性能社区

Java集合浅学(二)了解集合的框架体系结构及常用实现类,从入门到精通!

### 前言 通过Java基础的学习,我们掌握了主要的Java语言基本的语法,同时了解学习了Java语言的核心-面向对象编程思想。 从集合框架开始,也就是进入了java这些基础知识及面向对象思想进入实际应用编码的过程,通过jdk中集合这部分代码的阅读学习,就能发现这一点。 本计划在这篇中把框架体系和一些集合的常用方法一起编写。仔细考虑之后,本着不让突出重点,结构清晰的思路,所以把框架体系单独拉出来,为让各位看官对java的集合框架有个清晰的认识,最起码记住常用的几种常用实现类! 好的,我们进入正题。 ### 集合的框架体系结构 可以在很多书籍或者教程中看到,JAVAEE进阶知识的学习,JDK中提供了满足各种需求的API,主要是让我们去学习和了解它提供的各种API,在使用这些API之前,我们往...阅读全文

博文 2023-10-30 10:38:22 YDYXCODE

MyBatis实战指南(二):工作原理与基础使用详解

MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。那么,它是如何工作的呢?又如何进行基础的使用呢?本文将带你了解MyBatis的工作原理及基础使用。 ## 一、MyBatis的工作原理 ### 1.1 MyBatis的工作原理 工作原理图示: ![image.png](http://static.itsharecircle.com/240111/fb3da40016d1dcdc2b11db5767113d68.png) **1、读取MyBatis配置文件** mybatis-config.xml为MyBatis的全局配置文件,配置了MyBatis的运行环境等信息,例如数据库连接信息。 **2、加载映射文件(SQL映射文件,一般是XXXMapper.xml)** ...阅读全文

博文 2024-01-11 14:49:32 YDYXCODE

MyBatis-Plus 效能提升秘籍:掌握这些注解,事半功倍!

MyBatis-Plus是一个功能强大的MyBatis扩展插件,它提供了许多便捷的注解,让我们在开发过程中能够更加高效地完成数据库操作,本文将带你一一了解这些注解,并通过实例来展示它们的魅力。 ## 一、@Tablename注解 这个注解用于指定实体类对应的数据库表名。如果你的表名和实体类名不一致,就需要用到它: ``` @TableName("user_info") public class UserInfo { // 类的属性和方法 } ``` 在上述代码中,即使实体类名为UserInfo,但通过@TableName注解,我们知道它对应数据库中的"user_info"表。 ## 二、@Tableld注解 每个数据库表都有主键,@TableId注解用于标识实体类中的主键属性。通常与@Tab...阅读全文

博文 2024-02-29 14:43:52 YDYXCODE

Content type 'application/json;charset=UTF-8' not supported异常的解决过程 - 背着泰山找黄河

首先说一下当时的场景,其实就是一个很简单的添加操作,后台传递的值是json格式的,如下图 ,后台对应的实体类, @Data @EqualsAndHashCode(callSuper = false) public class Route implements Serializable { private static final long serialVersionUID = 1L; /** * id */ private String id; /** * 设备id */ private String deviceId; /** * 路由地址 */ private String destNetwork; /** * 下一跳 */ private String nextHop; /** * 路...阅读全文

博文 2024-05-22 11:28:55 博客园

C++大厂面试真题宝典 精选100道

C++大厂面试真题宝典 精选100道 好课大家一起分享——C++大厂面试真题宝典 精选100道,附课程源码下载。 C和C++的区别 C是面向过程的语言,而C++是面向对象的语言。 C和C++动态管理内存的方法不一样,C是使用malloc/free函数,而C++除此之外还使用new/delete关键字。 C++的类是C里没有的,但是C中的struct是可以在C++中正常使用的,并且C++对struct进行了进一步的扩展,使得struct在C++中可以和class有一样的作用。而唯一和class不同的地方在于struct成员默认访问修饰符是public,而class默认的是private。 C++支持重载,而C语言不支持。 C++有引用,C没有。 C++全部变量的默认链接属性是外链接,而C是内链...阅读全文

博文 2024-03-07 19:02:42 xiaoshuai8888

理解 Java类加载器与Agent字节码插桩中的类加载问题

引言在 Java 编程中,理解类加载器的机制对开发复杂的应用和工具非常重要,尤其是在涉及 Java Agent 这样高级技术时更是如此。在本文中,我们将深入探讨 Java 类加载器的工作机制,并通过一个实际的 Java Agent 示例来展现如何解决类加载的问题。类加载器概述Java 的类加载器是负责将类文件加载到 JVM 中的组件。类加载器的工作分为三个主要的过程:加载、链接和初始化。类加载器通常按以下层次结构工作:引导类加载器(Bootstrap ClassLoader):JVM 自带的类加载器,用于加载核心类库如 java.lang.*。扩展类加载器(Extension ClassLoader):加载扩展目录中的类库应用类加载器(App ClassLoader):加载应用的类路径中的类...阅读全文

博文 2024-06-22 00:09:04 zhidiantech

一款自动生成单元测试的 IDEA 插件,开发效率提升 70% 以上!_idea savebatch

今天来介绍一款工具Squaretest,它是一款自动生成单元测试的插件,为什么会用到它? 主要因为最近公司上了代码质量管控的指标,会考评各个项目的单元测试覆盖率,以及sonar扫描出来的各种问题,很多老项目老代码,或者着急交付的项目,单元测试严重缺失,覆盖率只有5%不到。 所以几个小伙伴这几天就在疯狂的堆单元测试,3个人堆了2天才堆到30%,于是我也来上手帮忙写了两个,写到第二个的时候就发现,这个活不应该是人干的,要去看原来的代码,然后根据逻辑写各种Mock,感觉是有迹可循的东西,所以就查了下,发现果然有插件帮我们来干这个事情,那么解下来就来看看。 另外,更多 IDEA 好用的插件全部整理好了,微信搜索Java技术栈,在后台发送:工具,可以在线阅读。 我使用的是idea,我们先来下载一下插件...阅读全文

博文 2024-08-02 18:16:46 CSDN博客