![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 74
丶Xylon
这个作者很懒,什么都没留下…
展开
-
Java类中serialversionuid的作用是什么?举个例子说明
serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常,即是InvalidCastException。具体的序列化过程是这样的:序列化操作的时候系统会把当前类的serialVersionUID写转载 2021-08-19 17:57:23 · 348 阅读 · 0 评论 -
基于SpringBoot集成Zookeeper实例
一、开发环境IDE:IDEA操作系统:MacZookeeper版本:3.6.3Java版本:JDK1.8原创 2021-06-03 19:17:24 · 2867 阅读 · 2 评论 -
通俗易懂讲布隆过滤器
不知道从什么时候开始,本来默默无闻的布隆过滤器一下子名声大燥,在面试中面试官问到怎么避免缓存穿透,你的第一反应可能就是布隆过滤器,缓存穿透=布隆过滤器成了标配,但具体什么是布隆过滤器,怎么使用布隆过滤器不是很清楚,那今天我们就来把他说清楚,讲明白缓存穿透大家看下这幅图,用户可能进行了一次条件错误的查询,这时候redis是不存在的,按照常规流程就是去数据库找了,可是这是一次错误的条件查询,数据库当然也不会存在,也不会往redis里面写值,返回给用户一个空,这样的操作一次两次还好,可是次数多了还.转载 2021-05-20 14:57:32 · 295 阅读 · 0 评论 -
Serializable接口的意义和用法
import java.io.Serializable;public class Admin implements Serializable {}百度上是这么讲的:Serializable接口是启用其序列化功能的接口。实现java.io.Serializable 接口的类是可序列化的。没有实现此接口的类将不能使它们的任意状态被序列化或逆序列化。这个介绍非常的不接地气,于是我与去看了几篇博客,有一个小姐姐的博客引起了我的注意,她是这样理解的:序列化的过程,就是一个“freez...转载 2021-05-13 15:36:27 · 163 阅读 · 0 评论 -
Java发送HTTP请求的工具类
一个用于发送HTTP请求的工具类,支持携带参数的GET、POST、DELETE等方法工具类OkHttpUtils:import okhttp3.*;import okhttp3.Request.Builder;import org.apache.commons.lang3.StringUtils;import java.io.IOException;import java.util.HashMap;import java.util.Map;import java.util.conc.原创 2021-05-10 17:44:31 · 2955 阅读 · 0 评论 -
读取JSON格式配置文件的工具类
一个工具类,用于读取json格式的配置文件config.json文件示例:{ "配置文件说明": "可更改的配置文件", "businessMapBrowser": { "系统1": [ "www.example.com:80" ], "系统2": [ "www.example.com:80" ], "系统3": [ "www.example.com:80" ], "系统4": [ "www..原创 2021-04-07 19:16:11 · 440 阅读 · 0 评论 -
VO对象:用更加优雅的方式来传递数据
在后端开发中,常用Json格式与前端进行复杂数据的交互JSON(JavaScript Object Notation) 是一种轻量级的基于文本的数据交换格式。它采用完全独立于语言的文本格式,易于读写同时也易于机器解析和生成(网络传输速率),因此使JSON成为理想的数据交换语言。——Java中Json格式总结例如:{ "id": 1, "name": "终端", "value": [ 420, -305 ], "no原创 2021-03-22 19:13:32 · 3429 阅读 · 2 评论 -
Java的“泛型”特性
使用Java的小伙伴,对于Java的一些高级特性一定再熟悉不过了,例如集合、反射、泛型、注解等等,这些可以说我们在平时开发中是经常使用到的,尤其是集合,基本是只要写代码没有用不到的,今天我们先来谈谈泛型。1. 定义在了解一个事物之前,我们必定要先知道他的定义,所以我们就从定义开始,去一步一步揭开泛型的神秘面纱。# 泛型(generics) 他是 JDK5 中引入的一个新特性,泛型提供了编译时类型安全监测机制,该机制允许我们在编译时检测到非法的类型数据结构。泛型的本质就是参数化类型,也就是..转载 2021-03-03 16:42:38 · 207 阅读 · 1 评论 -
Java内存模型(JMM)线程间的可见性
概念层面的可见性什么是线程间的可见性?一个线程对共享变量值的修改,能够及时的被其他线程看到。什么是共享变量?如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量。什么是java内存模型?(Java Memory Model,简称JMM)JMM描述了java程序中各种变量(线程共享变量)的访问规则,以及在JVM中将变量存储到内存和从内存中读取出变量这样的底层细节。规则1:1>所有的变量都存储在主内存中2>每个线程都有自己独立的工作内存,里面保存该转载 2021-02-25 17:35:47 · 292 阅读 · 0 评论 -
java开发学习路线
既然想做Java开发工程师,那第一步必不可少的就是Java语言一、编程基础1.java语言:java基本语法,面向对象,接口,容器,异常,泛型,注解,反射,I/O,jvmjava高级:并发,线程池,锁,并发容器2.数据库:SQL语句书写,SQL语句优化,索引,左右查询,视图,锁3.设计模式:单例,工厂,代理,策略4.计算机网络:DNS,HTTP,HTTPS协议,TCP,UDP协议------------------分割线-------------.转载 2021-02-18 16:39:25 · 197 阅读 · 0 评论 -
SpringBoot常用注解与区别
挂个pb同学的友链 :https://www.cnblogs.com/wpbing/p/14370208.html@RestController和@Controller的区别@RestController = @ResponseBody + @Controller如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Ret转载 2021-02-04 16:02:09 · 800 阅读 · 0 评论 -
Mybatis plus强大的条件构造器QueryWrapper条件构造器基础方法解释
官网解释:https://mp.baomidou.com/guide/wrapper.html#abstractwrapper一、条件构造器关系介绍介绍 :上图绿色框为抽象类abstract 蓝色框为正常class类,可new对象 黄色箭头指向为父子类关系,箭头指向为父类wapper介绍 :Wrapper : 条件构造抽象类,最顶端父类,抽象类中提供4个方法西面贴源码展示 AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件...转载 2021-01-29 16:50:50 · 748 阅读 · 0 评论 -
JUnit单元测试的方法 void类型
较为大型的项目有多个功能接口,使用JUnit可以在编译器中对某个独立接口进行测试,模仿数据输入和输出等操作示例:待测试service接口public interface SoftwareInfoService extends IService<SoftwareInfo> { List<SoftwareVo> listSofywareInfo(int pageIndex, int pageSize);}在项目test-java-项目名文件夹下新建test类原创 2021-01-27 18:12:37 · 1956 阅读 · 0 评论 -
SpringBoot+Mybatis实现数据库多联表增删改查及分页实例
完整源码下载:https://pan.baidu.com/s/1lZQ9AKjMBEcA6Hcgga830w提取码: xwys前篇SpringBoot+JPA实现数据库增删改查及分页实例这次用Mybatis重构,之后工作中大概用的比较多相比Jpa和JdbcTemplate复杂一些,多了几个配置文件,数据库查询方式也是更像HTML风格,实体类服务层dao接口倒是简化了很多,只用写一个了开发环境:IDE:IDEA开发框架:SpringBoot、MavenJDK版本:1.8数据..原创 2021-01-26 18:58:28 · 5553 阅读 · 4 评论 -
SpringBoot+JdbcTemplate实现数据库多联表增删改查及分页实例
完整源码下载:https://pan.baidu.com/s/1lZQ9AKjMBEcA6Hcgga830w提取码: xwys前篇SpringBoot+JPA实现数据库增删改查及分页实例然后用JdbcTemplate重构一下,不同的地方主要是数据库查询的接口部分,基本结构还是大致相似的开发环境:IDE:IDEA开发框架:SpringBoot、MavenJDK版本:1.8数据库:MySql 5.7.28调试软件:Postman安装与使用数据库结构用户表结构:id 名..原创 2021-01-26 18:32:41 · 1624 阅读 · 0 评论 -
Java 常用注解教程
java开发常用注解系列文章,分享给大家Spring Core Annotations@Autowired、@Bean、@Qualifier、@Required、@Value、@DependsOn、@Lazy、@Lookup、@Primary、@Scope、@Profile、@Import、@ImportResource、@PropertySource、@PropertySources等注解讲解Spring 核心常用注解解析Spring Web Annotations@Re...转载 2021-01-22 10:06:24 · 100 阅读 · 0 评论 -
SpringBoot+JPA实现数据库增删改查及分页实例
完整源码下载https://pan.baidu.com/s/1ScplcqfVUX__AqxokPJevw 提取码: vn82开发环境:IDE:IDEA开发框架:SpringBoot、MavenJDK版本:1.8数据库:MySql 5.7.28调试软件:Postman安装与使用项目结构:新建项目:打开IDEA->File->New->Project,选择Spring Initializr然后修改Group名称,Type选择Maven,Ja..原创 2021-01-21 19:10:51 · 482 阅读 · 1 评论 -
@PathVariable使用
介绍:@PathVariable 映射 URL 绑定的占位符带占位符的URL是Spring3.0新增的功能,该功能在SpringMVC 向REST目标挺进发展过程中具有里程碑的意义 通过@PathVariable可以将URL中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable(“xxx“) 绑定到操作方法的入参中。 主要是根据请求方法进行类的区别例子://@PathVariable可以用来映射URL中的占位...转载 2021-01-21 11:25:49 · 363 阅读 · 0 评论 -
JPA @Id 和 @GeneratedValue 注解详解
@Id:@Id 标注用于声明一个实体类的属性映射为数据库的主键列。该属性通常置于属性声明语句之前,可与声明语句同行,也可写在单独行上。@Id标注也可置于属性的getter方法之前。@GeneratedValue:@GeneratedValue 用于标注主键的生成策略,通过strategy 属性指定。默认情况下,JPA 自动选择一个最适合底层数据库的主键生成策略:SqlServer对应identity,MySQL 对应 auto increment。在javax.persistence.G...转载 2021-01-19 15:21:02 · 1064 阅读 · 0 评论 -
jsp连接oracle数据库实现简单的增删改查(附源码)
Oracel的期末作业,写一个简单的web页面连接oracle数据库实现增删改查完整源码链接:https://pan.baidu.com/s/1f2TfFt-5NFNspYM43J2muA提取码: mfdh开发环境:编译器:Eclipse数据库:Oracle数据库管理器:Navicat效果展示:文件目录:功能:添加:添加新的学生信息,包括学号、...原创 2019-12-29 00:57:01 · 3179 阅读 · 0 评论 -
Java判断两个字符串是否相等
1、java中字符串的比较是==比较引用,equals 比较值so我们经常习惯性的写上if(str1==str2),这种写法在java中可能会带来问题例1: String a="abc"; String b="abc",那么a==b将返回true。因为在java中字符串的值是不可改变的,相同的字符串在内存中只会存一份,所以a和b指向的是同一个对象;例2:String a=new ...转载 2019-07-20 15:43:36 · 1105 阅读 · 0 评论