自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 类之间的关系

这里写自定义目录标题关联成分符号分类代码实例:聚集成分符号分类代码实例泛化成分符号分类代码实例依赖和精化成分符号分类代码实例关联成分1. 关联方向(可选):用黑三角标注2. 关联名(可选)3. 重数(可选,未注明默认为1):※或数字等标示4. 关联角色:类名5. 限定词(可选):属性名 在关联关系末端设置小方框调价限定词可以将普通关联变为限定关联, 从而将一对多或多对多的关系简化为一对一或多对一。 限定词一般选取的是能够唯一确定一个实例对象的属性, 或者说是主键。在类图中放置的位置一般

2021-09-03 20:48:29 545

原创 状态模式理解

package mode.State;public abstract class State { protected int x ; public abstract State setX(int x); public abstract String status(); public State(int x) { super(); this.x = x; } }package mode.State;class StateOK extends State {

2021-09-01 22:01:26 180

原创 策略模式理解

个人感觉跟桥模式的实现特别类似,或者说他就是桥模式的一部分。就是通过创建不同的接口实现类对象来选择具体调用哪一种接口方法的实现。直接上代码吧:package mode.Strategy;public class Client { private Sort sort; public Client(Sort sort) { super(); this.sort = sort; } public void name() { sort.sort(); }

2021-09-01 21:44:57 169

原创 代理模式详解

关于代理模式,其最大的用途是通过客户类通过代理类简介调用委托类的方法实现,主要优点是能保证信息安全。比如数据库或日志访问等操作,我们就可以将所有申请访问数据的请求都交给代理类来处理。这样一来除了代理类其他任何类对象都没机会直接访问数据,极大保证了信息安全。另外一点是可以在符合开闭原则的前提下对目标对象进行功能扩展,就是可以通过代理类添加一些附加功能(非主业务),比如清理缓存、打印日志等。这一点跟装饰模式有点类似(当然本质上是不一样的)但是缺陷在于每个代理类只能针对一项服务,如果有多个服务都需要通过中介调用

2021-09-01 20:21:32 105

原创 装饰模式详解

对于装饰模式而言,核心就是装饰类Decorator,假设接口为impl,提供一个原始抽象方法operation,其实现类为Con,提供operation的原始实现,最初的调用应该是创建一个Con的对象直接调用Con的方法。现在想在原始实现方法基础上新增功能,那么就可以借助Decorator实现。public class Decorator implements Component {// 关联原抽象业务 private Component component; public Decorato

2021-08-31 22:06:40 93

原创 运行web项目提示异常:non-compatible bean definition of same name and class【com.xxx.xxx.XXX】

情景描述:报错提示non-compatible bean definition of same name and class【com.xxx.xxx.XXX】但在代码中并未发现指定的bean有冲突原因一:之前创建了一个接口的实现类,然后后面挪了个位置,但是重新打包的时候,并没有进行clean一下,导致打出来的war里面的class存在了两个。原因二:本身框架中已封装好该指定的实体类,因此另外进行声明会造成冲突,但是直接查询却又查不到该实体类解决一:maven clean一下, project cle

2021-03-17 17:05:01 5840

原创 postman的使用——一些常用的tests脚本

测试response Headers中的某个元素是否存在 tests[“元素Content-Type是否存在”] = postman.getResponseHeader(“Content-Type”);//getResponseHeader()方法会返回header的值;定义一个xxx,获取headers值 var.xxx = postman.getResponseHeader(“key”);将Headers中的值设置为一个环境变量 postman.setEnvironmentVariable(“ke

2021-01-07 12:26:26 1250

原创 postman的使用——通过脚本获取Headers中的value作为变量

在学习本文之前默认读者已经知道变量的作用。之前在使用postman进行接口测试时需要用到登录token进行登录校验。一般操作是我们需要先调用一遍登录接口,拿到token后再将token放置到待测接口的headers里作为参数在请求时一并传入。但是这种方法相对来说操作比较麻烦,而且有时候如果某个接口对token进行了某种更严格的限定,那么每次传入相同的token可能就不太合理。于是我就考虑能不能使用脚本简化这个修改token的过程。但是在网上找了一通之后发现很少有类似的方法。唯一一个还是个付费。。。于是就

2021-01-07 12:23:50 2202 1

原创 Serializable 序列化相关概念和应用场景

Serializable 序列化:将对象状态转换为可保持或传输的格式的过程。————与之相对的是反序列化:将流转换为对象的过程序列化和反序列化的主要目的是进行存储和传输数据序列化:对象——>字节序列反序列化:字节序列——>对象以上主要是用在下列场景中:1、针对需要对数据进行网络传输的场景2、针对需要将对象的状态信息进行持久化保存的场景...

2020-12-15 14:14:39 332

原创 深入解析数据结构中的指针、*和&——只要点进来,你就能理解

定义在讲解这三者区别之前,让我们先明确一下这三者的具体确切的定义:指针:在C语言之父Dennis MacAlistair Ritchie写的《C程序设计语言》种是这样定义指针的——指针是一种保存变量地址的变量。用图的形式来表述可能更清晰:如下图所示,c是一个char类型的变量,p是指向c的指针。图中可见,p中的内容即为c的地址。举个例子,双十一马上又到了,各位观音菩萨们免不了又要一通剁手,当我们下完单之后,快递小哥是怎么把我们的宝贝送到我们手上的呢?换句话说是怎么找到我们的?通过地址,也就是指针(温馨提

2020-12-14 15:59:00 4742 3

原创 浅谈try-catch——为什么要用try-catch&什么时候用try-catch?

本文主要内容如题所述,下面给出解答:首先第一个问题,我们为什么要使用try-catch捕获异常?我们都知道当程序中出现诸如数值越界之类的异常是,系统会自动抛出特定异常,不加处理的话此时的异常是一堆程序员看着都头疼的错误日志,而如果说前端直接将异常信息打印给客户端,用户看到后必然更加头疼。这时就需要我们后端对这些容易出现的异常进行补货并处理,另其返回到终端的数据能狗尽可能直观一目了然。这样一来,如果是用户输入或操作的问题,也能及时察觉并进行修正。另外在日常调试中,使用trycatch也能帮助我们快速定位b

2020-12-14 15:50:21 4241

原创 XMind8使用

一、下载XMindCrack.jar文件 XMindCrack.jar二、找到Xmind安装根目录:【图标右键打开文件位置】1、将XMindCrack.jar文件复制到根目录下;2、在Xmind.ini文件尾部追加“-javaagent:D:/Program Files (x86)/XMind/XMindCrack.jar”(Xmind安装目录)注意红色框部分,每个人安装的路径不一样,所以需要修改。【注意 " / “,直接复制下的是” \ "】三、找到文件hosts追加(文件在C:\Windows

2020-11-17 09:53:49 672

原创 记录一个项目交接时遇到的问题:‘tomcatEmbeddedServletContainerFactory’的bean无法创建

这个问题是我在交接一个使用springboot框架开发的maven项目时遇到的,具体发生时间是一切一切外部资源(仓库、jdk)配置妥当后运行时出现的。具体报错信息如下: . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) '

2020-11-13 14:53:30 1676

原创 数据结构中的.和->的辨析

在数据结构中我们经常会用到p->data,p.data,p->lchild等,这里的.和->分别是什么意思?各自的用法是什么?详解如下:-> 左边是结构体指针,右边是结构体成员,因此p->next 的含义是p指针指向结构体zhi变量的next数据域(一般该数据域存放后继dao结点的地址). 左边是结构体变量名,右边是结构体成员,因此p.next的含义是p结构体变量的next数据域,如:SqList &L;//这里的L是一个变量L.data[1]=1;SqLi

2020-11-03 11:11:04 5720

原创 equals方法与“==”区分整合

equals 方法是 java.lang.Object 类的方法。有两种用法说明:(1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。“==”比较两个变量本身的值,即两个对象在内存中的首地址。“equals()”比较字符串中所包含的内容是否相同。比如:String s1,s2,s3 = "abc", s4

2020-10-26 15:27:26 110

原创 一个容易忽略的数组问题——数组的length该怎么求

写这篇文章,主要是想提醒自己一下,在Java和C语言、C++中的数组长度求法是不一样的。希望诸位如果和我一样遇到三种其中两种语言时不要混淆了。首先,在Java中要求一个数组的长度是可以直接用length属性来获取的int []A = {1,2,3}; int len = A.length;在Java中这种方式就可以直接获取到数组的长度。值得注意的是,在Java中还有一个length()方法。这个方法是针对字符串而言的,只能用来求字符串长度。此外还有一个size()方法,是用来求泛型集合元素个数的。C+

2020-09-27 15:32:58 2466 1

原创 Java对象的对象头到底是什么?

一:对象头HotSpot虚拟机中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。HotSpot虚拟机的对象头(Object Header)包括两部分信息,第一部分用于存储对象自身的运行时数据, 如哈希码(HashCode)、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等等,这部分数据的长度在32位和64位的虚拟机(暂 不考虑开启压缩指针的场景)中分别为32个和64个Bits,官方称它为“Ma..

2020-08-25 15:46:26 3674 1

原创 关于虚拟机中对象访问定位的两种方式的一些思考

前言本文是在周志明老师经典作品《深入理解Java虚拟机》第二章第三节的基础上对句柄和直接指针两种对象访问方式的深入思考,有不准确的地方希望读者不吝赐教。JVM中访问对象的两种方式1.句柄在这里难免要讨论一下所谓的“句柄”究竟是什么?虽然知道大部分读者应该是很熟悉这个概念的,但是本人在此之前只是对这个词耳熟,具体概念却不是很清楚,在这里详细介绍一下,既是和读者探讨,也是给自己作个记录。句柄,句子的柄,我们想一下什么是柄?类比一下勺子,勺子柄的作用是让使用者能很轻松的抓住勺子进行使用,与之类似,句柄也

2020-08-25 15:19:54 1098

原创 pom.xml文件标签详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"> <!--父项目的坐标。如果项目中没有规定某个元素的值,那么

2020-08-12 16:50:05 146

原创 记录idea中带入新的maven项目时出现的依赖爆红问题

在最近的项目中,频繁遇到这样一个问题,以project的形式导入一个新的微服务项目时,会出现所有的依赖全都报错的问题,是所有的依赖。没想明白这个原因,试过所能搜到的解决方式都无效,最后的解决方案是借助一个无关项目,打开一个新的idea窗口,在这个新的窗口中以module形式打开目标项目,在重新导入依赖即可。迄今为止仍未找到具体原因,后续有待探究。另外,在查找解决方案过程中发现阿里云的远程仓库镜像地址变了。这需要注意一下。...

2020-08-11 18:05:46 1173

原创 JDBC工具类(自用)

package com.newtouch.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JDBCUtils {static String url = "jdbc:mysql://ip地址:端口号/数据库名?useUnicode=t

2020-07-28 09:58:52 145

原创 泛型详解(未完待续)

什么是泛型?

2020-07-16 18:09:49 492

原创 cmd常用命令行汇总

1.查端口及对应进程(1)查所有:netstat -ano(2)查指定:netstat -ano|findstr “端口号”2.杀进程taskkill /f /t /im “进程号”3.查ipipconfig

2020-07-14 11:28:18 169

原创 Oracle数据库使用命令行导入导出数据表及数据内容(本地、远程)

一、本机导入导出1、数据库导出命令,导出用户userA下的表结构和数据:exp 用户名/密码@服务名 owner=用户名 file=导出文件指定存储路径 full=y2、数据库导入命令,将userA用户下的表结构和数据导入到用户userB下:imp 用户名/密码@服务名 fromuser=导出用户名 touser=导入用户名 file=导入的文件所在路径 buffer=100000000二、远程服务器上的数据库导入导出(远程操作很可能会出现导入导出数据不全的情况,有条件的情况下最好优先选择在本机

2020-07-14 11:21:46 1687

原创 mybatis中的重要标签及属性

/*1. <properties> <property name="" value="" /></properties>标签的使用可以在标签内部配置连接数据库的信息。也可以通过外部属性引用外部配置文件信息2.使用<typeAliases><!--typeAlias用于配置别名。type属性指定的是实体类全限类名。 alias属性指定别名。当指定了别名就不区分大小写 --><typeAlias type="com.ithe

2020-07-07 14:56:54 228

原创 使用PLSQL远程连接Oracle数据库遇到的一些问题及解决方案

以下是整个连接测试流程,包含此过程中遇到的所有的坑和解决方案,不确定PLSQL远程连接与本地有无Oracle数据库是否相关,因此会在本文中一并录入,网上确实有这样一种说法表示可以不需要本地安装Oracle数据库即可连接,读者可以自行测试,具体生产实践中遇到其他问题请读者视情况而定。1.PLSQL远程连接Oracle数据库的必要操作:(1)首先下载安装(附免安装压缩包下载链接:链接:https://pan.baidu.com/s/1YWb_1xdQK6lnjN55Z5ke9Q提取码:uysu但该版本较

2020-06-30 19:33:15 2022

原创 maven-resources-plugin:2.6:resources (default-resources)报错:具体代码中是package报错

https://blog.csdn.net/qq_27088383/article/details/54585957?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.none

2020-06-29 09:57:38 727

原创 如何将一个Excel文件导入到MySQL数据库中?

首先,将一般的Excel表格导入到MySQL中主要存在以下几个问题:1.数据类型问题:对于一般Excel表格中的数据直接导入到mysql中都是浮点型的,自动带两位小数,但是大多数情况下我们需要的MySQL数据表中的数据都是不带小数点的,varchar类型的,针对这个问题需要对Excel文件类型进行改动,普通Excel表格一般是.xls或.xlsx格式,我们需要将其另存为.csv格式(用于存储纯文本格式的数据——那么如果你数据库中的数字对应的数据类型不是varchar,在选择这种方式的时候可能不会奏效),改为

2020-06-28 16:22:33 832

原创 深入剖析Java的反射机制

一、反射机制的具体概念表述:关于反射:在计算机领域,反射指的是一种能够自我描述以及自我控制的应用。引用维基百科的解释:在计算机学中,反射(英语:reflection)是指计算机程序在运行时(runtime)可以访问、检测和修改它本身状态或行为的一种能力。用比喻来说,反射就是程序在运行的时候能够“观察”并且修改自己的行为。要注意术语“反射”和“内省”(type introspection)的关系。内省(或称“自省”)机制仅指程序在运行时对自身信息(称为元数据)的检测;反射机制不仅包括要能在运行时对程

2020-06-22 16:15:32 148

原创 记一次奇怪的bug——误导入com.sun.org.apache.xpath.internal.operations.String 引起的

应该能明显看到二者有一定区别,实际情况中的具体体现是,引入String类之后,main方法无法启动编译。运行时会报告如下错误提示:错误: 在类 com.jyk.App 中找不到 main 方法, 请将 main 方法定义为:public static void main(String[] args)否则 JavaFX 应用程序类必须扩展javafx.application.Application造成bug的原因:java.lang.String是系统默认导入的,com.sun.org.ap..

2020-06-17 15:13:15 716

原创 为数据库报错2003提供一个思路

如果你连的不是本地数据库,那么看一下是不是没连入内网。

2020-06-12 16:36:29 116

原创 【转】关于Java学习的一些tips

原文链接:https://zhuanlan.zhihu.com/p/27738868前言如何学习我到现在也只有个大致的思路,写出来,做个分享,也为自己接下去一年的学习设个目标。上面说的这些技术,虽说我自己学得也不精;但大体都有所了解。虽然感觉略懂无用,但有一点是很重要的,那就是对整个系统的架构能有所了解。能知道所谓分布式系统的大致实现思路,不至于别人说用个Dubbo、Zookeeper,自己却一无所知,不知道这两货是干啥的。还有最重要的一点,那就是,学这些技术,大多数人的第一步都是先百...

2020-06-03 17:49:47 137

原创 关于实现java后端上传图片接口(微信二维码)的一些记录

@Override public ReturnMsg uploadQRCode(WxQRCodeRes wxQRCodeRes) { Return msg = new Return(); RmsUserextension rmsUserextension = new RmsUserextension(); if (wxQRCodeRes.getQrcodeBase() == null) { // 图像数据为空 retur..

2020-05-27 10:22:37 543

原创 关于.do过滤和.controller过滤的区别辨析

首先明确一点,.do和.controller分别是对后缀为do和controller的类的过滤设置。具体来讲,.controller一般是用来过滤登录的,因为在过滤登录时过滤器会检测请求中是否包含token,因为token是存在session里的,如果有token一般说明他是一个会话期间内的,...

2020-05-26 21:21:04 942

原创 浅谈常见的加密算法及实现(不够详尽,待日后补充)

前言不赘述,直接上干货。加密算法主要分为以下四大类:对称算法:对称加密算法又称共享秘钥加密算法。特点是在对称加密算法中使用的密钥只有一个,发送和接收双方都使用这个密钥对数据进行加密和解密,这就要求加密和解密爽放实现都必须知道加密的密钥。非对称算法:又称公开密钥加密算法,它需要两个密钥,一个是公开密钥,简称公钥,另一个是私有密钥,简称私钥。注意:在非对称算法中,如果使用公钥对数据进行加密,则只有用对应的私钥才能解密;相对的如果用私钥对数据进行加密,则只有用对应的私钥才能够解密。散列算法:又称摘要算

2020-05-22 16:14:52 454

原创 对于轮播图接口的一些思考和实践

其实归根结底还是对数据库的查找。如果是全栈大佬请移步其他教程,该文章仅针对后端开发轮播图接口而言。不要把这个问题想的太复杂,写这个接口之初在网上搜遍了教程,绞尽脑汁想思路。后来发现其实非常简单(想法可能不成熟,个人推测后期应该还有要添加的代码或者处理,但整体上大差不差),无非就是创建一个表,里面存入几条关键字段:id(图片id,必要),info(图片描述,不必要),path(图片路径,必要),url(跳转的目标地址,视情况而定)。有了这个表之后,插入数据巴拉巴拉的,然后写一个查询语句,全部查询也好,按id

2020-05-20 16:51:24 562 1

原创 使用HttpClientUtil工具类调用第三方接口

先附上测试可用的HttpClientUtil工具类:package com.newtouch.product.transfer.utils;import java.io.IOException;import java.net.URI;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.apache.http.NameValuePair;import org.apache.htt

2020-05-14 17:14:37 1280

原创 关于idea中运行maven项目报错显示找不到包或符号的问题——终极方案

首先声明,请务必确保你在使用这种方法之前已经尝试过网上可见的所有方法。这两天报了如题目所述的这么个问题,遍寻其法而不可得,但是在搜寻解决方案的过程中发现大多数爆出这个问题的都是2020版本的idea,因此才想会不会是该版本不稳定的原因,果然在重装了2017版之后,问题排除。提供一个思路,当你试遍所有的解决方案都无法解决一个问题的时候,可能就需要从客观上来找原因了。另附2017idea安装包...

2020-05-14 11:00:57 893

原创 关于equals方法重写需要注意的一些问题(待更新)

我们向一个没有重复对象的集合中添加元素时,集合中存放的往往是对象,我们需要先判断集合中是否存在已知对象,这样就必须重写equals方法。怎样重写equals()方法?  重写equals()方法看起来非常简单,但是有许多改写的方式会导致错误,并且后果非常严重。要想正确改写equals()方法,你必须要遵守它的通用约定。下面是约定的内容,来自java.lang.Object的规范:e

2020-05-12 16:28:41 325

原创 关于控制层映射测试时出现的404无法获取页面问题的一些原因及解决方案

测试时经常出现的页面访问不到的问题原因及解决思路报错大概是这样子:{“timestamp”: “2020-05-12T06:16:45.675+0000”,“status”: 404,“error”: “Not Found”,“message”: “No message available”,“path”: “/security/v1.0/deleteNum”}原因有这么几个:(以下都是在确保开发者能肯定存在这么个映射的基础上来讨论的)1、拼写错误,这个就不谈了,多检查几遍或者直接将映

2020-05-12 15:58:39 3925 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除