
java
长春小霸王
1、蜘蛛信息,技术副总经理
2、
java( springboot、springcloud(Eureka、Ribbon、Feign、Hystrix、Zuul、TX-LCN、OAuth2))、c#+devexpress、net(MVC、core3、微服务(Consul、Ocelot、CAP))、前端(vue、uni-app)、halcon视觉、数据库(mysql、mssql、redis、MongoDB、sqlite)、RabbitMQ
展开
-
HashMap如何解决哈希冲突?
开放定址法也称线性探测法,就是从发生冲突的那个位置开始,按照一定次序从Hash表找到一个空闲位置然后把发生冲突的元素存入到这个位置,而在java中,ThreadLocal就用到了线性探测法来解决Hash冲突原创 2022-10-03 21:29:05 · 1189 阅读 · 0 评论 -
Spring的三级缓存解决循环依赖
第一级缓存:也叫单例池,存放已经经历了完整生命周期的Bean对象。第二级缓存:存放早期暴露出来的Bean对象,实例化以后,就把对象放到这个Map中。(Bean可能只经过实例化,属性还未填充)。第三级缓存:存放早期暴露的Bean的工厂原创 2022-10-03 21:13:14 · 1174 阅读 · 0 评论 -
JPA报错:Method threw ‘org.hibernate.LazyInitializationException‘ exception. Cannot evaluate
SpringBoot JPA使用getOne方法报错:Method threw 'org.hibernate.LazyInitializationException' exception. Cannot evaluate 报错原因:系统中,每次初始化一个实体的关联就会创建一个临时的session来加载,请求的session是被立即关闭的,也就是在读取了基本属性后,session 已经close了,再进行 lazy loaiding 就会有异常。 解决方式:1、放弃使用懒加载,懒加载的二次读取的.原创 2022-04-15 20:10:55 · 3050 阅读 · 0 评论 -
数字签名、数字证书的原理以及证书的获得java版
首先要了解什么叫对称加密和非对称加密,消息摘要这些知识。1. 非对称加密在通信双方,如果使用非对称加密,一般遵从这样的原则:公钥加密,私钥解密。同时,一般一个密钥加密,另一个密钥就可以解密。因为公钥是公开的,如果用来解密,那么就很容易被不必要的人解密消息。因此,私钥也可以认为是个人身份的证明。如果通信双方需要互发消息,那么应该建立两套非对称加密的机制(即两对公私钥密钥对),发消息的一方使用对方的公钥进行加密,接收消息的一方使用自己的私钥解密。2.消息摘要消息摘要可以将消息哈希转换成一原创 2022-04-04 09:03:05 · 1157 阅读 · 0 评论 -
java微信退款
package com.jbossjf.bootproject.common;import org.apache.commons.codec.digest.DigestUtils;import org.apache.commons.io.IOUtils;import org.apache.http.HttpEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.原创 2022-04-03 16:19:31 · 1118 阅读 · 0 评论 -
java对接快递100追踪物流信息
1、官网地址快递100API开放平台_快递100快递单号查询API接口_快递100API_快递电子面单接口_寄快递接口2、从官网下载java示例代码3、调用 @CrossOrigin @ResponseBody @RequestMapping(value = "/API/GetOrderLogistics", method = RequestMethod.POST, produces = "application/json;charset=UTF-8") pub原创 2022-04-01 19:33:04 · 1950 阅读 · 0 评论 -
uniapp+java小程序支付
1、前端<template> <view class="app"> <view class="price-box"> <text>支付金额</text> <text class="price">¥{{money}}</text> </view> <view class="pay-type-list"> <view class="type-item b-b原创 2022-03-28 18:36:57 · 5276 阅读 · 0 评论 -
uniapp动态绑定echarts
1、前端<template> <view style="display: flex;flex-direction: column;height: 100%;width: 100%;align-items: center;"> <view style="position: fixed;width: 100%;height: 100%;background-color:#808080;opacity: 0.5;display: flex;justify-conte原创 2022-03-14 18:17:22 · 1239 阅读 · 0 评论 -
公众号扫描二维码(前端uniapp、后端java)
1、前端<template> <view style="display: flex;flex-direction: column;height: 100%;width: 100%;text-align: center;"> <view style="position: fixed;width: 100%;height: 100%;background-color: #808080;opacity: 0.5;display: flex;justify-conte原创 2022-03-14 03:05:09 · 542 阅读 · 0 评论 -
java公众号订单查询
1、基本配置package com.jbossjf.bootproject.common.weixin;public class Configure { private static String appID = "2222b78a36297d4444"; private static String secret = "3333ce6787950b8e98d6371b7777777"; //商户号 private static String mch_id = "7771978999原创 2022-03-13 12:58:51 · 391 阅读 · 0 评论 -
java公众号获取用户信息
package com.jbossjf.bootproject.weixin.gongzhonghao;import com.google.gson.Gson;import com.google.gson.reflect.TypeToken;import com.jbossjf.bootproject.weixin.WeChatData;import com.jbossjf.bootproject.weixin.WeChatUrlData;import org.apache.http.Http.原创 2022-03-11 20:06:47 · 1919 阅读 · 0 评论 -
springboot动态表名查询
1、按日期生成的表2、导入maven依赖<?xml version="1.0" encoding="UTF-8"?><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.0 http://maven.原创 2022-03-11 16:23:45 · 1665 阅读 · 0 评论 -
Map<String, String> 遍历的四种方法
Map<String, String> map = new HashMap<String, String>(); map.put("key1", "value1"); map.put("key2", "value2"); map.put("key3", "value3"); //第一种:普遍使用,二次取值 System.out.println("通过Map.keySet遍历key和value:"); for (String key : map.ke...原创 2022-03-09 22:08:50 · 5515 阅读 · 0 评论 -
IDEA 设置启动端口号
第一步 点击菜单栏 Run --> Edit Configuration第二步 在Run/Debug Configurations窗口中设置Configuration 下 VM options的参数值为-Dserver.port=8081原创 2022-03-09 16:23:55 · 9524 阅读 · 3 评论 -
Parameter ‘**‘ not found. Available parameters are [array]
1、源代码 <select id="findByids" resultMap="Product_ProductType"> select * from Product where id in <foreach item="id" index="index" collection="ids" open="(" separator="," close=")"> #{id} </foreach> </select>2、修改后 &l原创 2022-01-02 13:47:20 · 354 阅读 · 0 评论 -
SpringBoot接收前端参数json格式的五种方式
import java.util.List;import java.util.Map;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframewor.原创 2021-12-23 08:13:36 · 5582 阅读 · 0 评论 -
springboot项目实现批量新增功能
1、mapper.xml<insert id="insertBatch" > insert into hm_authorization (ID,ROLE_CODE,RES_TYPE_CODE,RES_CODE) values <foreach collection="list" item="item" index="index" separator=","> (#{item.id},#{item.roleCode},#{item.resTy.原创 2021-12-21 22:31:28 · 1206 阅读 · 0 评论 -
TX-LCN分布式事物框架
1、下载地址https://gitee.com/devojiang/tx-lcn/tree/5.0.2.RELEASE/2、导入到IDEA3、在配置文件application.properties里 修改mysql数据库密码4、资源文件下tx-manager.sql mysql数据库5、安装Redis3.26、运行txlcn-tm默认密码是codingapi,支持修改(通常改配置文件即可),主要修改application.properties...原创 2021-12-18 22:45:36 · 1004 阅读 · 0 评论 -
vue传递json数据给springboot
1、前端export function DelProduct(data) { return request({ url: baseURL+'/basefile/Product/delProduct/', //contentType: 'application/x-www-form-urlencoded;charset=utf-8', dataType:'json', contentType:'application/json;charset=UTF-8',原创 2021-12-10 02:03:58 · 1255 阅读 · 0 评论 -
Failed to read HTTP message: org.springframework.http.converter.HttpMessageNotReadableException: Re
required 默认是true ,改成@RequestBody(required = false)原创 2021-12-09 20:05:11 · 620 阅读 · 0 评论 -
vue访问springboot跨域问题
1、vue端在vue.config.js加入devServer: {//关键proxy proxy:{ ["/dev-api"]:{ target:'http://localhost:9527', changeOrigin:true, pathRewrite: { ['^' + ...原创 2021-12-08 18:17:39 · 923 阅读 · 0 评论 -
springboot mybatis xml 判断、like、分页
<select id="findByPage" resultType="Product" parameterType="String"> select * from Product WHERE 1 =1 <if test="name != null and name != ''"> and Name like '%${name}%' </if> <if test="pageStart != null and pageStar..原创 2021-12-07 22:48:18 · 705 阅读 · 0 评论 -
application.yml备份2021-12-6
server: port: 8002mybatis: config-location: classpath:mybatis/mybatis.cfg.xml #mybatis所在路径 type-aliases-package: com.atguigu.springcloud.entities #entity别名类 mapper-locations: - classpath:mybatis/mapper/**/*.xml #mapper映射文件feign: hystrix:.原创 2021-12-06 21:17:01 · 108 阅读 · 0 评论 -
Parameter ‘loginname‘ not found. Available parameters are [arg1, arg0, param
改写mapper层public List<Product> findByPage(@Param("name")String name, @Param("pageStart")String pageStart,@Param("pageEnd") String pageEnd);加入了@Param原创 2021-12-06 21:12:21 · 194 阅读 · 0 评论 -
SPRING BOOT CONTROLLER 获取GET请求问号后的参数
占位符的方式和GET参数的方式对比如下 // 访问方式http://localhost:8082/admin/555555 @RequestMapping(value = "/{id}", method = RequestMethod.GET) public Admin getAccountById(@PathVariable("id") String id) { return adminService.findAdminById(id); } // 访原创 2021-12-06 21:09:51 · 1144 阅读 · 0 评论 -
Lombok mybatis 多对一、一对多mapper.xml配置文件
1、多对一配置文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.atguigu.springcloud.dao.ProductDao"> <select id=原创 2021-12-04 21:13:10 · 595 阅读 · 0 评论 -
SpringCloud之security的用法
导入依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-security</artifactId> </dependency>使用随机密码认证登录1、application.yml文件中,加入以下配置: security:原创 2021-12-01 21:33:03 · 701 阅读 · 0 评论 -
IDEA里@Autowired注入Dao时,报错Could not autowire,但编译运行正常的解决方法
先声明一下,个人建议使用方法3或4方法1:降低Autowired检测的级别通过设置检测级别,可以让其检测的级别由error改成warning或其它可以忽略的级别。这样好像是大多数人使用的方法,但我感觉这有点治标不治本,还会影响到其他注入的警告。万一其他地方注入真的有报错也会被影响,所以不建议采用,但是比较方便。方法2:加上@SuppressWarnings(“all”)注解跟方法一类似,作用是忽略它的报错,好处是不会影响其他地方。但是使用起来很麻烦,每个注入都要加上这个...原创 2021-12-01 20:48:07 · 2754 阅读 · 2 评论 -
lombok在idea中安装以及使用
在Java编程时,写完字段后,需要一个一个去写getter和setter方法。在使用Idea编程时,可以按住ALT+INSERT键,让IDE自动生成getter, setter, toString等方法,如下图: 然而,当一个类的字段特别多时,整个文件看起来将非常不简洁。所幸IDEA提供了一款lombok插件,可以在代码阶段,通过添加注解的形式,省去手写getter, setter的麻烦。安装和使用步骤1.插件安装 打开Idea, 左上角菜单选择 ”File --> Setti原创 2021-12-01 20:26:54 · 1331 阅读 · 0 评论 -
如何将域名映射到本地IP
1、打开目录C:\Windows\System32\drivers\etc2、用记事本打开hosts文件3、映射自定义域名(IP与域名中间为空格)原创 2021-11-27 15:51:09 · 2207 阅读 · 0 评论 -
springboot+springcloud客户端pom配置
<?xml version="1.0" encoding="UTF-8"?><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.0 http://maven.apache.org/xsd/maven-4.0.0.原创 2021-11-15 01:24:43 · 391 阅读 · 0 评论 -
java.lang.NoClassDefFoundError: org/springframework/cloud/context/named/NamedContextFactory$Specific
spring cloud pom.xml里添加<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-context</artifactId> <version>2.1.0.RELEASE</version></dependency>原创 2021-11-15 00:03:45 · 1571 阅读 · 0 评论 -
SpringBoot项目部署到外部Tomcat的相关配置
在开发阶段我们推荐使用内嵌的tomcat进行开发,因为这样会方便很多,但是到生成环境中,需要将项目部署到外部Tomcat中运行,此时需要一些额外的配置:1.pom.xml调整1.1 打包方式修改<packaging>jar</packaging>变更为<packaging>war</packaging>1.2 将spring-boot-starter-tomcat的范围设置为provided scope设置为provided,原创 2021-11-04 19:56:22 · 724 阅读 · 0 评论 -
对于maven中pom.xml依赖报红问题
在写maven项目的时候,导入的依赖报红问题解决办法,像下图标注位置是红色,依赖包也无法正常导入解决1.按下图操作刷新之后等一下就可以了原创 2021-11-04 13:37:42 · 3213 阅读 · 5 评论 -
使用IntelliJ IDEA配置Tomcat
一、下载Tomcat1、进入官网http://tomcat.apache.org/,选择download,下载所需Tomcat版本。此处我们选择下载最新版本Tomcat 9。注意有zip和exe两种格式的,zip(64-bit Windows zip(pgp,md5,sha1))是免安装版的,exe(32-bit/64-bit Windows Service installer(pgp,md5,sha1))是安装版。同时观察自己的电脑是64位系统还是32位系统。此处选择下载zip版;原创 2021-11-04 13:07:49 · 4649 阅读 · 0 评论 -
IDEA配置jdk1.8
1 project structure2 setting原创 2021-11-04 13:05:46 · 482 阅读 · 0 评论 -
IDEA常用快捷键汇总
动作 快捷键 说明 Class… Ctrl+N 查找类文件 File… Ctrl+Shift+N 查找文件 Line… Ctrl+G 定位到文件某一行 Back Alt+向左箭头 返回至上次光标位置 ...原创 2021-10-29 18:18:37 · 242 阅读 · 0 评论 -
Spring Cloud原理详解
概述毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。实际上,Spring Cloud是一个全家桶式的技术栈,包含了很多组件。本文先从其最核心的几个组件入手,来剖析一下其底层的工作原理。也就是Eureka(尤里卡)注册客户端、Ribbon(瑞本)负载均衡、Feign(飞鹰)原创 2021-10-18 18:50:35 · 186 阅读 · 0 评论 -
java面试100道经典题
Java是一个支持并发、基于类和面向对象的计算机编程语言。下面列出了面向对象软件开发的优点:代码开发模块化,更易维护和修改。代码复用。增强代码的可靠性和灵活性。增加代码的可理解性。面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象。下面的章节我们会逐个分析这些特性。封装封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Java当中,有3种修饰符:public,private和protected。每一种修饰符给其他的位于同一个包或者不同包下面原创 2021-10-16 19:19:43 · 169 阅读 · 0 评论 -
一级缓存和二级缓存
V: jbossjf一级缓存:就是Session级别的缓存。一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中。如果短时间内这个session(一定要同一个session)又做了同一个操作,那么hibernate直接从一级缓存中拿,而不会再去连数据库,取数据。它是内置的事务范围的缓存,不能被卸载。二级缓存:就是SessionFactory级别的缓存。顾名思义,就是查询的时候会把查询结果缓存到二级缓存中。如果同一个sessionFactory创建的某个session执行了相同的操作..原创 2021-10-09 12:03:36 · 471 阅读 · 0 评论