java 设计模式之State(状态模式)
java 设计模式之State(状态模式)在状态模式中,一个类的行为基于它的状态的改变而改变。状态模式归属于行为型模式。在下面的实例中,我们创建了一个接口State,定义了一个操作方法,两个实现类StartState和StopState。另外,创建了一个上下文类Context,这个类关联到State类。UML类图如下所示://状...
2024-01-10java用split分割字符串的一个有趣现象
下面有段代码:String str="1#2#3";String[] strs=str.split("#");System.out.println(strs.length); ok,上面这段代码最终输出结果是2,这没有问题,但是如果换成下面的写法呢,请看:String str="##";String[] strs=str.split("#");System.out.println(strs.length);结果输出是0,如果再换一种写法呢,请看:String str="1##";String[]...
2024-01-10Java FineReport报表工具导出EXCEL的四种方式
在实际的应用中会经常需要将数据导出成excel,导出的方式除原样导出还有分页导出、分页分sheet导出和大数据量导出。对于excel2003版,限制了每个sheet的最大行数和列数,大数据量导出时会默认时分多个sheet,而excel2007不会出现这样的问题。这些导出方式在JAVA程序中分别有不同的接口来实现:1、 原样...
2024-01-10java实现折半排序算法
折半插入排序(binary insertion sort)是对插入排序算法的一种改进,由于排序算法过程中,就是不断的依次将元素插入前面已排好序的序列中。由于前半部分为已排好序的数列,这样我们不用按顺序依次寻找插入点,可以采用折半查找的方法来加快寻找插入点的速度。public static void halfSort(int[] array) { ...
2024-01-10Java 反序列化系列 ysoserial Jdk7u21
作者:天融信阿尔法实验室 原文链接:https://mp.weixin.qq.com/s/qlg3IzyIc79GABSSUyt-OQ 1. Jdk7U21漏洞简介谈到java的反序列化,就绕不开一个经典的漏洞,在ysoserial 的payloads目录下 有一个jdk7u21,以往的反序列化Gadget都是需要借助第三方库才可以成功执行,但是jdk7u21的Gadget执行过程中所用到的所有类都存在在JDK...
2024-01-10Analysis of ES File Explorer Security Vulnerability(CVE-2019-6447)
Author: 0x7F@Knownsec 404 TeamChinese Version: https://paper.seebug.org/831/0x00 PrefaceES File Explorer is a file manager application on Android, which supports functions such as skimming through and managing files. It has over 100 million installations, ...
2024-01-10数据分析与可视化:谁是安全圈的吃鸡第一人
作者:Omegogogo来源:Freebuf0×00 前言放假和小伙伴们打了几把PUBG,大半年没碰,居然也意外地躺着吃了次鸡。吃鸡这个游戏果然得4个认识的人打(dai)战(dai)术(wo)才更有趣。由于身边搞安全的人比较多,之前也会和一些安全圈的大佬一起玩,经常会有些认识或不认识的黑阔大佬开着高科技带着躺鸡。当...
2024-01-10C++ bind作为函数对象的问题
此时是不是可以看成传递给bind的string实参,可以隐式的看成两份,一份用于表示empty的实参,一份用于表示执行empty的对象???回答:string::empty 本身没有参数。(除了隐含的 this)bind 之后,生成一个函数对象,这个函数对象调用时只有一个参数(string),就是用于调用 empty() 的对象。...
2024-01-10VS Code如何禁止左侧菜单资源自动聚焦?
当我在右侧点击某个文件的tab时,左侧会自动定位到该文件所在位置,这点特别烦,尤其在项目目录很长的时候,怎么设置可以让它禁止自动定位啊?回答:如图,首选项里直接搜“自动显示”就能找到了。...
2024-01-10ios如何跳转到京东app的活动页
对于淘宝,用如下url就可以跳转NSURL *taobaoUrl = [NSURL URLWithString:[NSString stringWithFormat:@"taobao://item.taobao.com/item.htm?id=%@", book_id]];用类似方法无法跳转至京东,当然可以拼接商品的id后用如下方法跳转,但是活动页没有商品id怎么跳转呢openapp.jdmobile://virtual?params=%7B%22sourceValue%22:%220_productDet...
2024-01-10iOS11 适配 self.navigationItem.titleView = self.searchBar 导致的BUG
self.navigationItem.titleView = self.searchBar; https://zhuanlan.zhihu.com/p/... 会出现导航栏高度的问题。用下面的方法解决之后衍生出新的一个问题测试机版本。ios 11.0.if(@available(iOS 11.0, *)) { [[_searchBar.heightAnchor constraintEqualToConstant:44] setActive:YES]; } A界面push到B界面的时候。A界面的...
2024-01-10关于Layer层问题,为什么 Debug View Hierarchy 下不是整个填充视图?
我自定义了一个BWLabel,主要实现画三条边框,重写了draw方法- (void)drawRect:(CGRect)rect {CGRect frame = self.frame;UIBezierPath *linePath = [UIBezierPath bezierPath];[linePath moveToPoint:CGPointMake(0, 0)];[linePath addLineToPoint:CGPointMake(frame.size.width, 0)];[linePath addL...
2024-01-10go语言中关于接口类型的疑惑
下面是从《Go语言从入门到进阶实战》一书中摘的代码片段:logger.go中有三个LogWriter,它们有什么区别?第12的LogWriter是不是接口的方法列表的切片?第16行的LogWriter,表示是接口还是结构体实例,因为在main.go中传入的是结构体实例,这个没搞明白,比较疑惑,请帮忙解答下,谢谢!!!1.logger.go2.consol...
2024-01-10go mod 机制到底如何运作的
1.go mod 允许在$GOPATH路径外 建立文件夹 go mod init 模块名称 譬如 github.com/walkmiao/testgomod那么将会在此目录下生成go.mod文件。随后如果添加一个文件并写入代码提交到远程仓库。第一个问题想问的是 这里的模块名称与远程仓库名称是否必须要一致?这里我不知道这个模块名称有什么用。2.然后我又新建一...
2024-01-10如何在同一个输入框中实现用户名或Email登录呢?
如两图,用户表中由username和email字段,当页面登录时,如何实现用用户名或邮箱登录功能呢?望求懂的解答.回答:亲,我的思路是:通过正则判断如果是xxx@xxx.xxx,就是邮箱登录,否则是username登录。相应的,如果邮箱登录,你就调用查询验证邮箱的方法;如果是用户名登录,就调用查询验证用户名的方...
2024-01-10远程docker如何管理上intellij idea
最近用inellij idea开发项目准备放到阿里云上的docker系统的时候,网上看可以配置idea关联docker,但是没这方面资料,有没有哪位这么搞过的回答:第一需要使用 http 的方式启动 docker。在 idea 配置 docker然后写 dockerfile ,...
2024-01-10java中使用FtpClient连接服务器getReplyCode()返回530,但是使用SSH工具连接是正常的。
问题描述java中使用FtpClient连接服务器getReplyCode()返回530,但是使用SSH工具连接是正常的。问题出现的环境背景及自己尝试过哪些方法手中有一个FTP服务器IP和账号密码,一模一样的账号密码使用SSH工具(端口:22)可以登陆,但是在java中调用apache.commons.net.ftp.FTPClient的FtpClient方法,端口用的21,通过源...
2024-01-10在java开发中为什么这个synchronized锁不住那三个线程?
public class Demo10_5 { public static void main(String[] args) { // TODO Auto-generated method stub//定义三个售票窗口 TicketWindow tw=new TicketWindow(); //使用三个线程同时启动 Thread t1=new Thread(tw); Thread t2=new Thread(tw); ...
2024-01-10