
程序
文章平均质量分 54
苍穹帝
这个作者很懒,什么都没留下…
展开
-
CentOS 安装部署RocketMQ
CentOS 安装部署RocketMQ原创 2025-03-07 15:13:29 · 651 阅读 · 0 评论 -
使用Prometheus对微服务性能自定义指标监控
利用HTTP的拦截器添加Prometheus的监控指标,首先创建一个拦截器CustomInterceptor 实现HandlerInterceptor接口,然后重写里面的 前置处理、后置处理;//耗时//api调用次数。//汇总率//这里使用的时SpringUtil获取Bean,没有用@Autowired注解,Autowired会因为加载时机问题导致拿不到;SpringUtil.getBean网上实现有很多,可以自行搜索;@Override//记录接口开始调用的时间。原创 2024-10-25 10:26:53 · 1041 阅读 · 1 评论 -
java多线程-线程池与FutureTask
java多线程-线程池与FutureTask原创 2022-02-27 23:20:35 · 520 阅读 · 0 评论 -
java多线程并发系列--基础知识点(笔试、面试必备)
java多线程并发系列原创 2022-02-27 23:07:51 · 320 阅读 · 0 评论 -
java策略模式+工厂模式+模板模式
java策略模式+工厂模式+模板模式原创 2022-02-12 18:38:41 · 3381 阅读 · 0 评论 -
JDK动态代理
JDK动态代理主要涉及两个类:java.lang.reflect.Proxy和java.lang.reflect.InvocationHandler,我们仍然通过案例来学习Proxy 类中使用频率最高的方法是:newProxyInstance() ,这个方法主要用来生成一个代理对象。 public static Object newProxyInstance(ClassLoader loader, Cla..原创 2021-09-10 16:32:55 · 177 阅读 · 0 评论 -
java策略模式
简介策略模式(Strategy Pattern)属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。其主要目的是通过定义相似的算法,替换if else 语句写法,并且可以随时相互替换。策略模式主要由这三个角色组成,环境角色(Context)、抽象策略角色(Strategy)和具体策略角色(ConcreteStrategy)。环境角色(Context):持有一个策略类的引用,提供原创 2021-08-14 17:55:16 · 249 阅读 · 0 评论 -
Idea 创建maven父子工程
1、Idea 创建maven父工程:1、创建新project,选择maven,勾选Create from archetype,选择-site或者-quickstart下一步,输入名字,路径。2、创建好后,简单设置:编码为UTF-8,编译为java8,自动引入等。3、pom修改:<packaging>pom</packaging>问题:创建后,POM文件可能会报错:maven-project-info-reports-plugin解决方原创 2021-03-19 13:35:04 · 847 阅读 · 0 评论 -
SpringBoot集成JWT实现token验证
Jwt全称是:json web token。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证token的正确性,只要正确即通过验证。优点简洁: 可以通过URL、POST参数或者在HTTP header发送,因为数据量小,传输速度也很快; 自包含:负载中可以包含用户所需要的信息,避免了多次查询数据库; 因为Token是以JSON加密的形式保存在客户端的,所以JWT是跨语言的,原则上任何web形式都支持; 不需要在服务端保存会话信息,特别适用于分布式微服务。原创 2020-12-24 23:15:41 · 26902 阅读 · 8 评论 -
Springboot 整合RabbitMq,消息手动确认及持久化
该篇文章内容较多,包括有rabbitMq相关的一些简单理论介绍,provider消息推送实例,consumer消息消费实例,Direct、Topic、Fanout的使用,消息回调、手动确认等。 (但是关于rabbitMq的安装,我的是在虚拟机上用docker安装的)在安装完rabbitMq后,输入http://ip:15672/,是可以看到一个简单后台管理界面的。(用户名、密码默认是guest、guest)首先先介绍一个简单的一个消息推送到接收的流程,提供一个简单的图:黄色的圈圈就是我.原创 2020-12-13 15:05:44 · 2394 阅读 · 1 评论 -
SSM(maven)项目程序从eclipse导入idea后报错的问题
一、导入后运行Tomcat报错:idea 出现Can't load AMD 64-bit .dll on a IA 32-bit platform错误解决:更换Tomcat到64位高版本二、打包后的文件中没有mapper中的xml文件,各种配置文件(xml)也没有解决:在pom.xml的build下补上一段<resources> <resource> <directory>src/main/java</directory>原创 2020-08-25 13:06:25 · 640 阅读 · 0 评论 -
springboot整合redis 使用注解@Cacheable、@CachePut、@CacheEvict
@Cacheable:可以标记在一个方法上,也可以标记在一个类上。当标记在一个方法上时表示该方法是支持缓存的,当标记在一个类上时则表示该类所有的方法都是支持缓存的。对于一个支持缓存的方法,Spring会在其被调用后将其返回值缓存起来,以保证下次利用同样的参数来执行该方法时可以直接从缓存中获取结果,而不需要再次执行该方法。Spring在缓存方法的返回值时是以键值对进行缓存的,值就是方法的返回结果,至于键的话,Spring又支持两种策略,默认策略和自定义策略,这个稍后会进行说明。需要注意的是当一个支持缓存的方法原创 2020-08-13 11:20:56 · 1243 阅读 · 0 评论 -
Intellij IDEA 通过数据库表逆向生成带注释的实体类文件详细步骤
1、连接数据库:2、连接好了后,如上图所示,可以看到自己的数据库和表,选择一个表右键,选择说Generate POJOs.groovy,然后在弹出窗口选择需要生成的文件夹所在即可。3、要求不多的话,这样就可以了。这个重点是 没有注释,自己在网上找了些资料,修改了一份 Generate POJOs.groovy,是带有注释的,代码如下:import com.intellij.database.model.DasTableimport com.intellij.database.mo原创 2020-08-11 14:12:25 · 490 阅读 · 0 评论 -
springboot 返回以base64字符串格式的文件流
springboot接口,返回文件字节流,以base64格式字符串@GetMapping("/getFileBase64")public String getFileBase64() throws IOException { byte[] bytes=null; String base64String=null; //InputStream inputStream=...原创 2020-04-15 14:28:01 · 3665 阅读 · 0 评论 -
idea 误删除.iml文件后
简单说明IDEA中的.iml文件是项目标识文件,缺少了这个文件,IDEA就无法识别项目。跟Eclipse的.project文件性质是一样的。并且这些文件不同的设备上的内容也会有差异,所以我们在管理项目的时候,.project和.iml文件都需要忽略掉。生成iml文件 方法一(建议):刷新一下Maven Project就会自动生成.iml文件。点击下图红框标记的按钮即可 ...原创 2020-04-15 10:21:43 · 14284 阅读 · 1 评论 -
Delphi 调用Oracle中包(package)中的过程
一、利用AdoQuery1procedure TForm1.Button4Click(Sender: TObject);begin AdoQuery1.Close ; AdoQuery1.Parameters.Clear ; AdoQuery1.SQL.Clear ; AdoQuery1.SQL.Add('{call PKG_JCCTEST1.GetSu原创 2020-03-11 11:34:49 · 319 阅读 · 0 评论 -
IDEA 快捷键不起作用 例如:返回上一步、下一步:Ctrl+Alt+左箭头 Ctrl+Alt+右箭头
win10系统中,IDEA 快捷键不起作用,例如:返回上一步、下一步:Ctrl+Alt+左箭头 Ctrl+Alt+右箭头:多数情况是和系统快捷键冲突了。解决方法:在桌面右键-图形选项-快捷键-禁用。这样多数情况就能解决了,若还不行,可能就和其他软件快捷键冲突了。终极大招:更改idea快捷键。...原创 2020-03-11 11:32:43 · 8849 阅读 · 0 评论 -
springboot springcloud常见报错问题:
1、SpringBoot 在整合其资源的时候经常会遇到could not autowired. No beans of ‘xxxx’ type解决方法:在包DAO中 增加@Component(value = "deptDao")package com.sky.dao;import java.util.List;import com.sky.api.entities.Dept;i...原创 2020-03-02 23:03:22 · 2833 阅读 · 0 评论 -
SpringBoot使用maven进行install或者package失败
错误信息:Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.069 s <<< FAILURE! - in XXX.XXXApplicationTestscontextLoads(XXX.XXXApplicationTests) Time elapsed: 0.002 s <<...原创 2020-03-02 14:41:37 · 946 阅读 · 0 评论 -
Idea 上传代码到github
第一步:安装Git,注册GitHub账号注册地址:https://github.com/安装成功后,git --version查看git版本第二步,使用IDEA创建一个项目第三步,在IDEA中配置好Git、GitHub(1)在IEDA左上角File → Settings → Version Control → Git,选择Git的路径,点击Test,看看是否成功。(2)在...原创 2020-03-02 13:13:19 · 196 阅读 · 0 评论 -
IntelliJ IDEA初步使用
用久了eclips,今天用于IntelliJ IDEA吧,是不太习惯,还不太会用,初步总结下。1、安装maven,IntelliJ IDEA中设置,在File--Setings中找到maven,设置maven路径2、 新建项目后,在项目中右键找不package,不能新建package,解决方法:右键–>new –> Mark Directory As –> Sources...原创 2019-10-22 16:50:53 · 202 阅读 · 0 评论 -
eclipse下配置 jsp Servlet
eclipse下配置 jsp Servlet需要工具如下:tomcat 7下载地址:http://tomcat.apache.org/32-bit/64-bit Windows Service Installer (pgp,md5)(安装版,无需配置,合适初学)Eclipse3.6 IDE for Java EE Developers(不一定需要3.转载 2015-04-03 10:13:48 · 821 阅读 · 0 评论 -
使用Delphi调用条形码控件BarTender打印标签
1. 要实现的条形码功能最近一个项目需要在扫描条码后按固定的格式打印。条形码打印控件客户习惯使用的是BarTender,使用Delphi调用BarTender来完成打印条码标签功能。此功能的重点在于:a) 使用BarTender格式打印b) 格式中有需要变动的部分2. 条形码标签设计a) 新建一个空白标签b转载 2016-03-16 10:39:24 · 6306 阅读 · 0 评论 -
delphi bpl插件系统开发(转)
半路出家的delphier一如我,对于win32api式的调用有着近乎厌恶的抵触情绪,我很早以前看c++的教程时看到lptrXXXXX的变量就头大,以至于到现在都不会用c++,都不曾写成功过那怕一个helloworld程序,所以对于dll式的导出函数后面加stdcall使用右到左的参数调用方式,总觉得没有delphi的美感.再加上看到了许多bpl可以导出类,而dll很麻烦的文章,更是坚定了我的方向转载 2016-04-12 14:39:53 · 2599 阅读 · 0 评论 -
Delphi exe + bpl 简述
例:exe+Base.bpl+Function.bpl+A.bplA.bpl要继承Base.bpl,操作步骤:1、在A.bpl中的Requires中加热Base.dcp2、在A.bpl中新建窗口,窗口中引入Base单元,窗口名称改为从TBase继承3、右击窗口,View as Text,将首行object改为inherited这样新建的窗口就可以看的从Base继承了。原创 2016-04-13 15:11:11 · 1381 阅读 · 0 评论 -
Delphi 打印 TPrinter
打印 打印对于许多 Windows 程序员来说是十分棘手的问题。 Delphi 简化了打印时用户所必须了解的大部分内容。用户可以很轻松地写出简单的打印程序来输出文本和位图化了的图像。对于更为复杂的打印,仅需了解几个要领和技术,用户就可以实现任何类型的自定义打印。当了解了这些后,打印也就不那么困难了。 Delphi 的TPrinter对象封装了 W转载 2015-09-02 16:02:22 · 1862 阅读 · 1 评论 -
Delphi SendMessage PostMessage 原理和区别
今天用实例解释一下SendMessage PostMessage 原理和区别:向按钮(Button)发送单击:SendMessage: SendMessage(Button1.Handle, WM_LBUTTONDOWN, 0, 0); SendMessage(Button1.Handle, WM_LBUTTONUP, 0, 0);PostMessage:原创 2015-08-26 11:07:51 · 10870 阅读 · 0 评论 -
eclipse tomcat中修改端口后,eclipse中调试时还是默认端口8080,报错
1、Window----Preferences中:2、选择add,选择Tomcat路径,Next就可以。原创 2015-04-03 11:54:45 · 2616 阅读 · 0 评论 -
Tomcat服务器不能打开http://localhost:8080安装测试页面
在TOMCAT服务器默认安装后,默认的端口是8080,出现不能找到http://localhost:8080的问题。如果遇到这个问题首先要确保JAVA(JDK)的正确安装和配置。如果JDK安装没有问题,还是在TOMCAT启动后不能打开http://localhost:8080,这时候就要查看TOMCAT安装目录下的/logs目录中的日志文件查看提示信息,根据信息排除故障。l转载 2015-04-02 14:26:25 · 2717 阅读 · 0 评论 -
关于Class.forName(className).newInstance()介绍
Class.forName 介绍Class.forName(xxx.xx.xx) 返回的是一个类首先你要明白在java里面任何class都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。 至于什么时候用,你可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过转载 2015-04-01 17:03:39 · 574 阅读 · 0 评论 -
java 连接SQL2008(查询、插入、调用存储过程)
import java.sql.*;import java.util.*;public class SQL{ private Connection conn; private String connStr, sqlStr; private String useName, passWord; private PreparedStatement原创 2015-04-01 16:51:03 · 1916 阅读 · 0 评论 -
eclipse 无法导入 import javax.servlet.http.HttpServlet
在eclipse中,编写servlet时,不能导入 HttpServlet 解决方法为:在build path中将 servlet-api.jar 导入即可。(servlet-api.jar在tomcat中的lib目录下)原创 2015-04-03 14:25:15 · 13481 阅读 · 0 评论 -
Delphi FastReport 打印条码
新建delphi过程,放入控件ADOQuery1,ADODataSource1,frxReport1,frxDesigner1(用于运行时设计报表),frxDBDataset1,frxBarCodeObject1。ADOQuery1,ADODataSource1连接数据库。frxDBDataset1的DataSource连接ADODataSource1。双击frxReport1进行原创 2017-01-16 14:00:52 · 4723 阅读 · 0 评论 -
MyEclipse2015 SSH对于java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I错误解决
在网上查了很多,对于报错 java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I,主要 是里面的Structs 1.3 (structs 2)和Hibernate3.2(或更高版本)中的JAR包里antlr2.7.2 与 antlr2.7.6 冲突,只要删除Structs1.3中的低版本的antlr2.7.2就可以了。解决原创 2016-06-21 13:49:25 · 460 阅读 · 0 评论 -
Create table(access环境下)自动编号类型的写法
create table sm_huawen(id autoincrement(1,1) primary key,peij_huawen varchar(100))或create table sm_huawen(id autoincrement,peij_huawen varchar(100), primary key (id))其中在access中,autoincrement为自动编原创 2013-01-06 14:15:16 · 1544 阅读 · 0 评论 -
C# .net 汉字:字符串截取、补齐
在代码中,一个汉字length=1,但是占用2个字符。若想截取或者补齐的话,字符串中包含汉字取length是不一定准确的,虽然大多数情况下没有问题。如下代码可以解决问题,已验证。private string cutSubstring(string str, int length){ if (str == null || str.Length == 0 || length &...原创 2019-05-14 14:07:16 · 1699 阅读 · 0 评论 -
java Spring Boot 整合使用Swagger2构建强大的RESTful API文档
项目结构图:1、在pom.xml中加入Swagger2的依赖 <!-- 加入Swagger2的依赖 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox...原创 2019-02-26 17:20:55 · 212 阅读 · 0 评论 -
java SSM 批量插入数据,报错:SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, Pos
SSM 批量插入数据,报错:SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]Unable to translate SQLException with Error code '933', will now try the fallback tra...原创 2018-10-08 11:00:15 · 765 阅读 · 0 评论 -
Delphi XE MD5加密
需要要用System.Hash,若不行还得引用IdHashMessageDigest, IdGlobal, IdHash(一般不用)var TMPMD5: string; //需要加密的信息 md5: THashMD5; //加密后的信息TMPMD5 := UpperCase(md5.GetHashString(TMPStr));原创 2017-10-24 17:13:38 · 3550 阅读 · 0 评论 -
Delphi 调用Oracle中包(package)中的过程
一 利用adoquery返回数据集的.(过程参数1/2位传入参数,参数3为传出参数,游标类型)procedure TForm1.Button4Click(Sender: TObject);begin AdoQuery1.Close ; AdoQuery1.Parameters.Clear ; AdoQuery1.SQL.Clear ; AdoQuery1.S原创 2017-09-20 18:19:28 · 472 阅读 · 0 评论