
一种简单的ID生成策略: Mysql表生成全局唯一ID的实现
生成全局ID的方法很多, 这里记录下一种简单的方案: 利用mysql的自增id生成全局唯一ID.1. 创建一张只需要两个字段的表:CREATE TABLE `guid` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `stub` char(1) NOT NULL DEFAULT '' COMMENT '桩字段,占坑的', PRIMARY KEY (`id`), UNIQUE KEY `uk_stub` (`stub`) -- 将 stub 设为唯一索...
2024-01-10
java 导入Excel思路及代码示例
导出就是将List转化为Excel(listToExcel)导入就是将Excel转化为List(excelToList)一、思路分析 1、我们要做导入,实际上也就是先文件上传,然后读取文件的数据。 2、我们要有一个导入的模板,因为我们导入的Excel列要和我们的数据字段匹配上,所以我们要给它来一个规定,也就是模板。 3...
2024-01-10
spring boot+mybatis 多数据源切换(实例讲解)
由于公司业务划分了多个数据库,开发一个项目会同事调用多个库,经过学习我们采用了注解+aop的方式实现的1.首先定义一个注解类@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface TargetDataSource { String value();//此处接收的是数据源的名称}2.然后建一个配置类,这个在项目启动时会加载...
2024-01-10
深入理解Java之HashMap源码剖析
一、HashMap概述HashMap基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。值得注意的是HashMap不是线程安全的,如果想要线程安全的H...
2024-01-10
js-tab选项卡
说道tab选项卡,顾名思义,就是切换不同内容分类,想必学过前端的都知道,tab有很多方法可以实现,最近刚跟师傅学了一种,感觉很简便,很实用哦。一、先看一下结果二、可以根据图来布局,首先上面标签和下面内容,需要注意的是点击上面a标签的链接和下面div的id一一对应起来,三、就是最...
2024-01-10
Tomcat 实现WebSocket详细介绍
Tomcat 如何实现WebSocketWebSocket协议属于HTML5标准,越来越多浏览器已经原生支持WebSocket,它能让客户端和服务端实现双向通信。在客户端和服务器端建立一条WebSocket连接后,服务器端消息可直接发送到客户端,从而打破传统的请求响应模式,避免了无意义的请求。比如传统的方式可能会使用AJAX不断请求...
2024-01-10
Java组件commons fileupload实现文件上传功能
Apache提供的commons-fileupload jar包实现文件上传确实很简单,最近要用Servlet/JSP做一个图片上传功能,在网上找了很多资料,大多是基于struts框架介绍的,还有些虽然也介绍common-fileupload的上传,但是那些例子比较老,有些类现在都废弃了。通过研究学习总结,终于完成了这个上传功能,下面与大家分享一...
2024-01-10
使用Post方式提交数据到Tomcat服务器的方法
我在上一篇文章中介绍了 使用Get方式提交数据到Tomcat服务器,这篇将介绍使用Post方式提交数据到服务器,由于Post的方式和Get方式创建Web工程是一模一样的,只用几个地方的代码不同所以,我就直接介绍不同的地方,第一个不同点是,提交方式不同,所以修改LoginServlet.Java中的代码package com.fyt.org; imp...
2024-01-10
论Java Web应用中调优线程池的重要性
不论你是否关注,Java Web应用都或多或少的使用了线程池来处理请求。线程池的实现细节可能会被忽视,但是有关于线程池的使用和调优迟早是需要了解的。本文主要介绍Java线程池的使用和如何正确的配置线程池。单线程我们先从基础开始。无论使用哪种应用服务器或者框架(如Tomcat、Jetty等),他...
2024-01-10
Java 交换两个变量的数值实现方法
一、参数传递方法为解决标题问题,首先介绍参数传递方法。目前各类程序设计语言的参数传递方法主要有三种:1.按值传递2.按引用传递3.按指针传递其中按值传递表示方法(函数)接收的是调用者提供的变量的拷贝,不改变参数的值;按引用传递表示方法(函数)接收的调用者提供的变量地址;...
2024-01-10
发布您的最新基于Eclipse的产品二(图)
图表 17 这样,选择“About”菜单时将显示我们的产品信息。 图表 18 替换闪屏 现在让我们做一个闪屏(Splash),来替换掉project中那个临时的splash.bmp文件。 图表 19 替换完毕,双击rcpapp.product,在打开的编辑器选择第三页的Splash Screen...
2024-01-10
用EclipseME0.5.5创建简单的J2ME程序(图)
一篇文章《如何在Eclipse3.0.1上安装EclipseME 0.5.5版本》,我们已经讲了如何在Eclipse3.0.1上安装Eclipse程序。 今天我们就要用他来创建我们的第一个程序。绝大多数程序教程的第一个程序,都叫做HelloWorld。那么我们就来编一个HelloWorld程序。 1, 文件 2, 新建项目 3, 选择J...
2024-01-10
LOLSnif–另一个基于Ursnif的目标追踪活动
原文:LOLSnif – Tracking Another Ursnif-Based Targeted Campaign 译者:知道创宇404实验室翻译组 工具泄露是网络安全中非常有趣的事件。一方面泄露的工具在被熟知且进行分析后,会对原有的文件造成某种意义的破坏,另一方面其内容将会被传入到较低版本的工具当中。本文将会对Ursnif的新版本进行了详细分析...
2024-01-10
Shiro 权限绕过漏洞分析(CVE--1957)
作者:Spoock博客:https://blog.spoock.com/2020/05/09/cve-2020-1957/本文为作者投稿,Seebug Paper 期待你的分享,凡经采用即有礼品相送! 投稿邮箱:paper@seebug.org环境搭建根据 Spring Boot 整合 Shiro ,两种方式全总结!。我配置的权限如下所示:@BeanShiroFilterFactoryBean shiroFilterFactoryBean() { ShiroFilterFactoryBean bean...
2024-01-10
疑似“Group 123”APT团伙利用HWP软件未公开漏洞的定向攻击分析
作者:360威胁情报中心公众号: 360威胁情报中心背景2018年9月20日,360威胁情报中心在日常样本分析与跟踪过程中发现了一例针对韩国文字处理软件Hancom Office设计的漏洞攻击样本。通过详细分析发现,该样本疑似与APT组织“Group 123”相关,且该HWP样本利用了一个从未公开披露的Hancom Office漏洞来执行...
2024-01-10
mongodb周期性的丢失数据
用nodejs写了一个博客。也经常写一些文章,记一些笔记。可博客总是周期性的丢失数据库数据(数据库里数据都没有了)。。我的数据库使用过程是这样的:用源码安装方式安装,将mongod添加到环境变量,新建了/data/db目录,然后就在bin目录下用nohup ./mongod &启动了数据库。。然后启动nodejs,博客就可以...
2024-01-10

xcode8,添加apple id 总是说错误,该怎么处理呢?
xcode8,添加apple id 总是说错误,该怎么处理呢?4LE30[PQ2P[G]7(%19YD8K6.jpg回答:网络问题:an error connecting。。。连接至Apple服务器发生错误。回答:dns 设置成 8.8.8.8 或者114.114.114.114 试试如果不行 就翻墙登录一下~还不行就重新下载xcode 然后重复以上步骤...
2024-01-10
Apache JServ protocol服务 怎么关闭?
被反馈了一个漏洞,搜索也搜不到,怎么解决?回答:Apache JServ protocol = AJP解决方案:修改tomcat 的service.xml配置文件将 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />这一行注释掉...
2024-01-10
WEB 导出EXCEL 表格 怎么出现选择路径的框
最近做个导出Excel表格的功能,(保存到固定写死的目录是可以的)但怎么才能选择导出保存的路径,就类似这样的:我用的是 POI的jar包文件输出代码: // 输出Excel文件 OutputStream output = null; //FileOutputStream output = null; try { output = response.getOutputStream(); response.reset()...
2024-01-10
