mq.rar springcloud整合rabbit java工程
mq.rar springcloud对接rabbit java工程
RabbitMQ是一种消息中间件,用于处理来自客户端的异步消息。服务端将要发送的消息放入到队列池中。接收端可以根据RabbitMQ配置的转发机制接收服务端发来的消息。
RabbitMQ依据指定的转发规则进行消息的转发、缓冲和持久化操作,主要用在多服务器间或单服务器的子系统间进行通信,是分布式系统标准的配置。
spring-cloud-stream-binder-rabbit
SubscribableChannel documentUrlInput();
mqProcessor.pdfUrlOutput().send(MessageBuilder.withPayload(pdfConvertInfo).build());
@StreamListener(MQConstant.DOCUMENT_URL_INPUT)
java设计模式,单例模式学习示例源码,创建单例,配置文件读取
java设计模式,单例模式学习示例源码,创建单例,配置文件读取
java设计模式,工厂模式(简单工厂、工厂、抽象工厂)示例源码
java设计模式,工厂模式(简单工厂、工厂、抽象工厂)示例源码
//简单工厂
// ICar car = CarSimpleFactory.create(CarSimpleFactory.UPTYPE);
//工厂
AbstractFactory factory = new MidFactory();
ICar car = factory.create();
arithmetic java算法冒泡排序、二叉树、数组、链表、队列学习简单示例
arithmetic java算法冒泡排序、二叉树、数组、链表、队列学习简单示例
private static void mpSoft(String [] data) {
for (int i = 0; i < data.length - 1; i++) {
System.out.println(Arrays.toString(data));
for (int j = 0; j < data.length - 1 - i; j++) {
if (data[j].lastIndexOf("+") > data[j + 1].lastIndexOf("+")) {
String datum = data[j];
data[j] = data[j + 1];
data[j + 1] = datum;
}
}
AliOssServiceImpl java获取阿里STS token AliOSS获取token
AliOssServiceImpl java获取阿里STS token AliOSS获取token
阿里云对象存储OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,可提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性。多种存储类型供选择,全面优化存储成本。
//构建一个阿里云客户端,用于发起请求。
//构建阿里云客户端时需要设置AccessKey ID和AccessKey Secret。
java文件工具类FileUtil
java文件工具类FileUtil
递归获取一个文件夹(及其子文件夹)下所有文件
获取扩展名 (doc/docx/jpg等)
判断是否是图片
判断是否是压缩包
是否是word文档
是否是excel
java BigDecimalUtil 保留两位小数 去掉小数位无效0并转换为String,nullToZero
java BigDecimalUtil 保留两位小数 去掉小数位无效0并转换为String,nullToZero
data.setScale(2, RoundingMode.HALF_UP);
SesService.java 腾讯云邮箱对接示例源码
SesService.java 腾讯云邮箱对接示例源码
// 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,此处还需注意密钥对的保密
// 密钥可前往https://console.cloud.tencent.com/cam/capi网站进行获取
Credential cred = new Credential(secretId, secretKey);
// 实例化一个http选项,可选的,没有特殊需求可以跳过
HttpProfile httpProfile = new HttpProfile();
httpProfile.setEndpoint("ses.tencentcloudapi.com");
// 实例化一个client选项,可选的,没有特殊需求可以跳过
ClientProfile clientProfile = new ClientProfile();
JavaMD5加密工具类
JavaMD5加密工具类
algorithm = MessageDigest.getInstance("MD5");
algorithm.reset();
algorithm.update(s.getBytes("UTF-8"));
byte[] messageDigest = algorithm.digest();
return messageDigest;
WXService Java根据code换取微信小程序openId,accessToken以及微信小程序码二维码
WXService Java根据code换取微信小程序openId,accessToken以及微信小程序码二维码
String param = "appid=" + ydAppId + "&secret=" + ydSecret + "&js_code=" + code + "&grant_type=authorization_code";
// 请求地址
String wxBaseUrl = "https://api.weixin.qq.com/sns/jscode2session";
String wxJsonObjStr = HttpUtils.sendGet(wxBaseUrl, param);
Java根据IP获取地址工具类
Java根据IP获取地址工具类
String rspStr = HttpUtils.doGet(IP_URL, "ip=" + ip + "&json=true", Constants.GBK);
System.out.println("rspStr -- " + rspStr);
if (StringUtils.isEmpty(rspStr)) {
return UNKNOWN;
}
JSONObject obj = JSON.parseObject(rspStr);
String region = obj.getString("pro");
java发送163邮箱工具类
java发送163邮箱工具类
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
//设置邮件会话参数
Properties props = new Properties();
//邮箱的发送服务器地址
props.setProperty("mail.smtp.host", "smtp.163.com");
props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
props.setProperty("mail.smtp.socketFactory.fallback", "false");
//邮箱发送服务器端口,这里设置为4
java阿里云SMS短信工具类
阿里云SMS短信工具类
Client client = createClient();
SendSmsRequest sendSmsRequest = new SendSmsRequest()
.setPhoneNumbers(smsInfo.getPhoneNumber())
.setSignName(smsInfo.getSignName())
.setTemplateCode(smsInfo.getTemplateCode())
.setTemplateParam(JSONObject.toJSONString(smsInfo.getTemplateParam()));
RuntimeOptions runtime = new RuntimeOptions();
try {
// 复制代码运行请自行打印 API 的返回值
SendSmsResponse se
java利用反射,将Object和Map进行互相转换,list和map互相转换
java利用反射,将Object和Map进行互相转换,list和map互相转换
java Map和Object转换,list和map转换
genal-chat,阿童木聊天室开源代码
java局域网聊天程序,genal-chat,阿童木聊天室开源代码。
项目采用全typescript开发,这是为了以后的功能迭代打基础。当然,我本身也是很喜欢typescript的。
群聊/私聊
创建群/加入群聊/退群/模糊搜索群
添加好友/删好友/模糊搜索好友
图片上传/粘贴发送图片/图片预览
更改用户名/头像上传
表情包
消息分页
移动端兼容
在线人数统计
重连提醒
java 随机数 ,解决头、尾数字在四舍五入之后得到的几率其实比中间的数少一半,并不能保证头尾的数字概率与其他数字相同
java 随机数Math.random()头、尾数字在四舍五入之后得到的几率其实比中间的数少一半,并不能保证头尾的数字概率与其他数字相同
max.subtract(min).multiply(BigDecimal.valueOf(Math.random())).add(min).setScale(0, RoundingMode.HALF_UP).intValue();
HttpUtils客户端
java httpclient 请求**
* 向指定 URL 发送GET方法的请求
*
* @param url 发送请求的 URL
* @return 所代表远程资源的响应结果
*/
**
* 向指定 URL 发送POST方法的请求
*
* @param url 发送请求的 URL
* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @return 所代表远程资源的响应结果
*/
jsencrypt.js 带min.js.rar
jsencrypt.js 下载
开源代码jsencrypt,主要功能就是在前端js中,对敏感数据进行RSA加密,同一个数据每次加密的结果,并不一致,但是在服务器端都能够解密出唯一数据。当然,这款jsencrypt也自带前端js解密功能。
util文件夹建一个rsaEncrypt.js文件,里面会引入一个jsencrypt.jc文件。在util里面建一个jsencrypt.jc文件,直接官网下载jsencrypt.jc v-3.0.0-rc版本源码然后需要修改这个文件。
大华sdk主动注册springboot工程,示例源码
最近在做一个项目,是需要对接大华设备sdk,并且使用小程序形式调用sdk,这就需要用到设备功能中的主动注册,将设备注册到我们的服务器上才可以进行设备的接口调用来操作设备。
文档说明可以查看 https://mp.csdn.net/mp_blog/creation/editor/131440166,里面有我写的笔记详细说明。记录对接sdk过程中的心得和经验以及遇到的一些小问题。
项目前端为uniapp,后端采用springboot。这里仅为后端主动注册示例源码。
NetSDK 主动注册主要用于解决诸如公网服务器无法搜索内网设备等网络限制问题,或是设备端IP 不固定的情况(例如,设备处于4G 网络或者Wi-Fi 网络时IP 可能不固定)。同时也有利于监听服务器高效配置设备,实现应用场景的快速实现或恢复。
springboot集成javamail发送qq邮件
在springboot中集成javamail,发送qq邮件,参数采用配置化,可自行改为数据库方式,提供对外接口,支持自定义附件和自定义html,
SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
checkMail(mailRequest);
//邮件发送人
simpleMailMessage.setFrom(sendMailer);
//邮件收件人
simpleMailMessage.setTo(mailRequest.getSendTo().split(","));
//邮件主题
simpleMailMessage.setSubject(mailRequest.getSubject());
//邮件内容
simpleMailMessage.setText(mailRequest.getText());
//邮件发送时间
simpleMailMessage.setSentDate(new Date());
//接收人
private String sendTo;
//邮件主题
private String subject;
//邮件内容
private String text;
//附件路径
private String filePath;
email163.rar java springboot集成163邮箱发送
email163.rar java springboot集成163邮箱发送
final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
//设置邮件会话参数
Properties props = new Properties();
//邮箱的发送服务器地址
props.setProperty("mail.smtp.host", "smtp.163.com");
props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
props.setProperty("mail.smtp.socketFactory.fallback", "false");
WebServiceConfig java springboot利用Apache CXF创建webserice接口配置类
webserviceApache CXF java springboot利用Apache CXF创建webserice接口
Apache CXF 核心架构是以BUS为核心,整合其他组件。
* Bus是CXF的主干, 为共享资源提供一个可配置的场所,作用类似于Spring的ApplicationContext,这些共享资源包括
* WSDl管理器、绑定工厂等。通过对BUS进行扩展,可以方便地容纳自己的资源,或者替换现有的资源。默认Bus实现基于Spring架构,
* 通过依赖注入,在运行时将组件串联起来。BusFactory负责Bus的创建。默认的BusFactory是SpringBusFactory,对应于默认
* 的Bus实现。在构造过程中,SpringBusFactory会搜索META-INF/cxf(包含在 CXF 的jar中)下的所有bean配置文件。
* 根据这些配置文件构建一个ApplicationContext。开发者也可以提供自己的配置文件来定制Bus。
PingYinUtil 拼音工具类java
PingYinUtil 拼音工具类java
将字符串中的中文转化为拼音,其他字符不变
获取汉字串拼音首字母,英文字符不变
获取汉字串拼音,英文字符不变
GsonTools Gson工具类java
GsonTools Gson工具类java
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
DES加密解密java工具类
DES加密解密java工具类
public static final String KEY_ALGORITHM = "DES";
public static final String CIPHER_ALGORITHM = "DES/ECB/PKCS5PADDING";
validKeySpecException, NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException {
Key k = toKey(key);
Cipher cipher = Cipher.getInstance(CIPHER_ALGORITHM, getDecryptProviderInstance());
Hex java十六进制工具类
Hex java十六进制工具类
ReflectUtil java反射工具类
ReflectUtil java反射工具类
RSACoder rsa加密解密java工具类,继承SecurityCoder
RSACoder rsa加密解密java工具类,继承SecurityCoder
RSAUtils rsa加密解密java工具类
RSAUtils rsa加密解密java工具类
AESUtil AES的加密和解密java工具类
AESUtil AES的加密和解密java工具类
aes解密
aes加密
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
Cipher cipher = Cipher.getInstance(ALGORITHMSTR); //"算法/模式/补码方式"
SecretKeySpec skeySpec = new SecretKeySpec(encryptKey.getBytes(), "AES");
IvParameterSpec ivParam = new IvParameterSpec(iv.getBytes()); //使用CBC模式,需要一个向量iv,可增加加密算法的强度
cipher.init(Cipher.ENCRYPT_MODE, skeySpec, ivParam);
return cipher.doFinal(content.getBytes("utf-8"));
FastDFSUtil java连接fastdfs工具类,上传下载删除
FastDFSUtil java连接fastdfs工具类,上传下载删除
TrackerClient tc = new TrackerClient();
ts = tc.getConnection();
ss = tc.getStoreStorage(ts);
StorageClient cs = new StorageClient(ts, ss);
String localFilename="F:\\logs.txt";
String fileExtName="txt";
NameValuePair[] metaList = null;
String[] strings = cs.upload_file(localFilename, fileExtName, metaList);
HadoopService java连接hadoop服务类,可上传、下载、删除
HadoopService java连接hadoop服务类,可上传、下载、删除
Configuration conf = new Configuration();
//配置hadoop集群地址
String fsDefaultFS = "hdfs://192.168.42.137:9000";
conf.set("fs.defaultFS", fsDefaultFS);
/*
windows连接hadoop集群需要有winutils.exe以及hadoop.dll两个工具
(1)winutils.exe
需要在启动类中配置hadoop.home.dir为winutils.exe的上一级bin的父级目录
(2)hadoop.dll
需要放置到C:\Windows\System32中
*/
return FileSystem.get(new URI(fsDefau
java springboot整合activemq工程
java springboot整合activemq工程
#activemq配置
#默认情况下activemq提供的是queue模式 true是可以使用topic,false是仅使用queue模式
spring.jms.pub-sub-domain: true
# 设置连接的activemq服务器
spring.activemq.broker-url=failover:(tcp://10.0.1.227:61616,tcp://10.0.1.228:61616,tcp://10.0.1.229:61616,mqtt://10.0.1.227:1883,mqtt://10.0.1.228:1883,mqtt://10.0.1.229:1883)
#spring.activemq.broker-url=failover:(tcp://127.0.0.1:61616,,mqtt://127.0.0.1:1883)
#结束等待时长
spring.activemq.close-timeout=10s
java rar解压工具类
java rar解压工具类
// 第一个参数是需要解压的压缩包路径,第二个参数参考JdkAPI文档的RandomAccessFile
//r代表以只读的方式打开文本,也就意味着不能用write来操作文件
Base64Utils java工具类
Base64Utils java工具类
JSONUtil java工具类,快速方便读取JSON
JSONUtil java工具类,快速方便读取JSON
SmUtil java实现sm2加密工具类
SmUtil java实现sm2加密工具类
// 获取一条SM2曲线参数
X9ECParameters sm2ECParameters = GMNamedCurves.getByName("sm2p256v1");
// 构造ECC算法参数,曲线方程、椭圆曲线G点、大整数N
ECDomainParameters domainParameters = new ECDomainParameters(sm2ECParameters.getCurve(), sm2ECParameters.getG(), sm2ECParameters.getN());
//提取公钥点
ECPoint pukPoint = sm2ECParameters.getCurve().decodePoint(Hex.decode(publicKey));
// 公钥前面的02或者03表示是压缩公钥,04表示未压缩公钥, 04的时候,可以去掉前面的04
ECPublicKeyParameters publicK
JDBCUtil javaJDBC工具类
* 将JDBC开发流程封装
* <p>
* 一。JDBC流程
* <p>
* 1.加载类文件: 类文件只需要加载到内存一次即可
* 2.建立连接通道
* 3.建立交通工具
* 4.推送命令并得到处理结果
* 5.销毁相关资源
连接通道建立
交通工具创建
推送sql命令并带回处理结果