自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 springboot项目实现微信扫码支付

准备工作:1)注册微信支付商户号2)准备好 appid (appid) partner(商户号) partnerkey(商户秘钥)notifyurl(回调地址)话不多说,直接上代码,我这个抽成了工具类,可以直接把我代码复制过去,然后修改appid,partner,partnerkey这三个值就OK了。先到你的pom文件引入依赖 <dependency> <groupId>com.github.wxpay</groupId>

2020-06-28 16:02:58 2144 18

原创 前端是layUI,发请求时后端拿不到请求头信息,但是用post请求就可以正常拿到token

前端是layUI,发请求时后端拿不到请求头信息,但是用post请求就可以正常拿到tokenspringboot,postMan请求可以拿到请求头信息,但是前端对接时拿不到headers中的token值,原因是post请求是一个复杂的请求,会请求两次-------------》请注意分析原因复杂请求时会先发送一个OPTIONS请求,来测试服务器是否支持本次请求,这个请求时不带数据的,请求成功后才会发送真实的请求。所以前面那个只发送key的问题是要确认服务器支不支持接收这个headers。所以每次获取不到

2020-05-21 14:14:43 1423

原创 防止SQL注入-参数过滤排除部分

防止SQL注入-有很多种方法,这里记录一个参数过滤器。基本方式:代码层防止sql注入攻击的最佳方案就是sql预编译确认每种数据的类型,比如是数字,数据库则必须使用int类型来存规定数据长度,能在一定程度上防止sql注入严格限制数据库权限,能最大程度减少sql注入的危害避免直接响应一些sql异常信息,sql发生异常后,自定义异常进行响应过滤参数中含有的一些数据库关键词过滤器:@Componentpublic class SqlInjectionFilter implements Fil

2022-03-19 11:16:46 2280

原创 java 关于Object对象转成自定义对象

java 关于Object对象转成自定义对象 List<QrCodeProjectAndSonEntity> list = new Gson().fromJson(new Gson().toJson(projectList),new TypeToken< List<QrCodeProjectAndSonEntity> >(){}.getType());

2021-10-30 10:43:55 385

原创 JAVA实现简单数据采集

采集 FALSH,文本都可以的。采集流程大概就是:1:先登录,2 :查看源代码3:找到下载地址下载现在我们来实现一个自动侦测到网页源代码的程序。代码展示: /** * 方法实现说明 自动侦测到网页源代码 * @author 金刚 * @date 2021/3/30 14:40 */public static String getWebContent(String domain){ System.out.prin

2021-03-31 10:10:19 1805

原创 SVN的安装和使用手册

@TOC下载`TortoiseSVN官网下载址: https://www.visualsvn.com/visualsvn/download/tortoisesvn/

2020-12-31 14:44:34 109 1

原创 springboot单服务项目上线阿里云详细流程

第一步肯定是先买服务器实例好服务器之后先去开发需要访问的端口我这里重点说明服务器环境搭建1. 准备环境先下载 跟你本地一样的jdk, mysql 或其他的环境环境下载地址jdk链接:https://pan.baidu.com/s/1ybBthhR10OZl4LZo6zZI-A提取码:4js2mysql链接:https://pan.baidu.com/s/1s0lwaChS5aY-DSybhXH8Ww提取码:4cdmredis链接:https://pan.baidu.com/s/1Z

2020-12-26 15:36:53 285

原创 springboot项目实现人脸对比工具类

我把这个装成工具类,方便后面项目重用可直接复制话不多说,直接搞maven<dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-facebody</artifactId> <version>1.0.8</version> </dependency>工具类package com.yxg

2020-12-18 17:12:27 262 1

原创 springboot项目实现人脸对比

话不多说,直接撸。。。这边我选用阿里云的maven 依赖 <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-facebody</artifactId> <version>1.0.8</version> </dependency>接口展示: @ApiOperation(value = "

2020-12-18 17:03:59 623 1

原创 mysql 中根据经纬度计算附近距离

直接上代码sql 语句SELECT *, ROUND( 6378.138 * 2 * ASIN( SQRT( POW( SIN( ( 当前纬度 * PI() / 180 - latitude * PI() / 180 ) / 2

2020-12-12 16:18:43 390 1

原创 SpringBoot 获取当前登录用户IP

public static String getIpAddr(HttpServletRequest request) {String ipAddress = null;try {ipAddress = request.getHeader(“x-forwarded-for”);if (ipAddress == null || ipAddress.length() == 0 || “unknown”.equalsIgnoreCase(ipAddress)) {ipAddress = request.g

2020-12-05 15:02:51 551 2

原创 API解密加密数据报 javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can

在处理API接口的加密数据解密的过程中报javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can下面看我对比代码修改之前的修改之后

2020-12-04 11:50:38 582

原创 MYSQL表常用操作

1、展示一张已经存在的表的建表语句show create table (目标表格)2、将表引擎改为innodbaalter table t_starmcn engine=innodb;3、修改表名alter table old_name rename [to] new_name;4、修改表中字段的数据类型alter table table_name modify 属性名 数据类型;5、修改表中字段的数据类型alter table table_name modify 属性名 数据类型;6、

2020-12-02 09:40:39 329

原创 数据结构:数组和链表的区别

数组和链表是两种基本的数据结构,他们在内存存储上的表现不一样,所以也有各自的特点一、数组的特点1.在内存中,数组是一块连续的区域2.数组需要预留空间在使用前需要提前申请所占内存的大小,这样不知道需要多大的空间,就预先申请可能会浪费内存空间,即数组空间利用率低ps:数组的空间在编译阶段就需要进行确定,所以需要提前给出数组空间的大小(在运行阶段是不允许改变的)3.在数组起始位置处,插入数据和删除数据效率低。插入数据时,待插入位置的的元素和它后面的所有元素都需要向后搬移删除数据时,待删除位置后面的

2020-12-01 15:55:15 651

原创 解决bash: mysql: command not found 的方法

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:ln -s /usr/local/mysql/bin/mysql /usr/bin如果执行提示ln: failed to create symbolic link

2020-11-19 12:29:23 303

原创 org.springframework.context.ApplicationContextException: Failed to start bean ‘documentationPluginsB

org.springframework.context.ApplicationContextException: Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is com.google.common.util.concurrent.UncheckedExecutionException: java.lang.RuntimeException: com.xx.xxx.in.swagger.model.wit

2020-11-05 14:42:06 2199

原创 JSON字符串转换为Map

利用阿里巴巴封装的FastJSON来转换json字符串的。例如下:package com.zkn.newlearn.json; import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import java.util.Map; /** * JSON字符串自动转换 */public class JsonToMapTest01 { public static void main(String[

2020-11-03 09:29:59 2740

原创 mysql查询前一天的数据

在mysql数据库中,常常会遇到统计当天的内容。例如,在user表中,日期字段为:log_time统计当天sql语句为:select * from user where date(log_time) = curdate();curdate()表示当天日期统计前一天如果表示前一天的数据,则不能使用curdate()-1,因为当日期为月初时,curdate()-1 日期就不是上一个月的月末日期。例如:今天是8月1日,理论上curdate()-1为7月31日,但是curdate()-1得到不是7月

2020-10-30 17:41:26 4985 1

原创 springBoot项目实现支付宝扫码支付(完整篇)

准备工作,让老板准备好支付宝的商户号,支付宝私钥,支付宝公钥。说明:注意重点 一点要看支付宝扫码支付跟微信扫码支付是不一样的,微信我们是调用微信那边,微信给我们返回二维码链接,然后前端生成二维码的,支付宝是不一样,是跳转到支付自己的扫码页面的。请看下面操作导入maven仓库<dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</art

2020-10-22 17:37:43 3014 2

原创 springboot项目导出excel表格案例

项目中需求是将订单详情导出excel话不多说,直接看流程1 .引用依赖<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency>2.实现业务 pub

2020-10-21 14:31:29 310

原创 JAVA中遍历字符串中字符的三种方法

public static void main(String[] args) { String str = "keep walking!!!"; //方法一 char[] charArray = str.toCharArray(); for (char i:charArray){ System.out.println(i); } // 方法二 for (int i = 0

2020-10-21 11:45:23 224

原创 获取微信扫码支付回调数据

// 测试微信回调数据 @RequestMapping(value = "/wechatNotifyUrl") public String wechatNotifyUrl(HttpServletRequest httpServletRequest){ System.out.println("开始回调=========="); try { InputStream inputStream = httpServletRequest.getI.

2020-10-15 09:36:50 527

原创 jpa实现update操作 字段有值就更新,没值就用原来的

/***复杂JPA操作 使用@Query()自定义sql语句 根据业务id UId去更新整个实体* 删除和更新操作,需要@Modifying和@Transactional注解的支持** 更新操作中 如果某个字段为null则不更新,否则更新【注意符号和空格位置】** @param huaYangArea 传入实体,分别取实体字段进行set* @return 更新操作返回sql作用条数*/@Modifying @Transactional @Query(value =

2020-10-09 16:00:47 1419

原创 springboot项目实现QQ登录功能

QQ登录跟微信登录其实是一样的可以查看 springboot项目实现微信扫码登录准备工作: 准备好HTTP请求工具: 下面这个是已经封装好的工具类,可以直接复制package com.cg.cg_project.util;import org.apache.http.Consts;import org.apache.http.HttpEntity;import org.apache.http.NameValuePair;import org.apache.http.client.Client

2020-10-09 13:08:11 427 1

原创 springboot项目实现微信扫码登录

扫码登录功能说明:后端只需要将前端传来的CODE 发送到微信那边,然后获取相关信息,根据业务需求处理即可,这里我做简单的登录过程。准备工作:准备好HTTP请求工具: 下面这个是已经封装好的工具类,可以直接复制package com.cg.cg_project.util;import org.apache.http.Consts;import org.apache.http.HttpEntity;import org.apache.http.NameValuePair;import org.

2020-10-09 12:21:43 444

原创 阿里云OSS设置跨域访问

OSS 提供 HTML5 协议中的跨域资源共享 CORS 设置,帮助您实现跨域访问。当 OSS 收到一个跨域请求(或者 OPTIONS 请求)时,会读取存储空间对应的 CORS 规则,然后进行相应的权限检查。OSS 会依次检查每一条规则,使用第一条匹配的规则来允许请求并返回对应的 header。如果所有规则都匹配失败,则不附加任何 CORS 相关的 header。操作步骤1 .进入 OSS 管理控制台 界面。2.在左侧存储空间列表中,单击目标存储空间名称,打开该存储空间概览页面。3.在概览下面找到基

2020-10-08 10:30:19 1196

原创 SpringBoot里面创建导出Excel的接口

首先加入Excel的依赖,本例中我们用apache的poi:<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version></dependency>后台导出Excel的Controller接口代码:import org.apache.poi.h

2020-10-08 09:24:17 284

原创 springdatajpa分页报错,导致无法启动

springdatajpa分页报错,导致无法启动报错如下[ERROR] 2020-09-22 12:28:30 Application run failedorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'secondController': Unsatisfied dependency expressed through field 'secondSell

2020-09-22 12:34:01 446

原创 HashMap 为什么线程不安全?

我们都知道HashMap是线程不安全的,在多线程环境中不建议使用,但是其线程不安全主要体现在什么地方呢,本文将对该问题进行解密。在jdk1.8中对HashMap做了很多优化,这里先分析在jdk1.7中的问题,相信大家都知道在jdk1.7多线程环境下HashMap容易出现死循环,这里我们先用代码来模拟出现死循环的情况:public class HashMapTest { public static void main(String[] args) { HashMapThread

2020-09-22 09:30:52 681

原创 Springboot 快速了解 事务回滚@Transactional

事务控制一般在一些比较重要的业务都需要考虑。进入正题,关于事务Transactional 的要点以及使用方式:@Transactional1.需要将使用事务注解的方法设置为public;2.如果没有在注解后做异常配置,只会对手动抛出的 throw new RuntimeException() 起作用;3.若想对其余异常起作用,则需做类似配置 @Transactional(rollbackFor= Exception.class) ;4.手动回滚,在使用注解后,在需要执行事务回滚的地方,Tran

2020-09-19 12:11:20 128

原创 Exception in thread “main“ java.lang.IllegalArgumentException: Cannot instantiate interface org.spri

异常描述 :在导入依赖后运行起来就报这个错原因是:很多初次搭建maven项目的时候,会经常报没这个jar包,找不到那个类的错误,这是因为maven虽然有在管理jar包,但没有下载到本地仓库中,所以报错,这个时候就可以如上所述进行reimport。异常信息Exception in thread "main" java.lang.IllegalArgumentException: Cannot instantiate interface org.springframework.context.Applic

2020-09-14 16:28:55 9516 2

原创 怎么识别是手机发来的请求还是电脑发来的

1. 首先定义一个工具类,增加一个方法判断请求是否来自手机:package util;/** * @Description: 识别来源手机或电脑请求工具类 * @Aouthor:jin gang * @Date:2020/9/12 11:08 */public class StringUtil { // 定义移动端请求的所有可能类型 private final static String[] agent = {"Android","iPhone","iPod","Windo

2020-09-12 14:39:21 660

原创 springBoot项目中怎么简化实体类

@Data 这个注解可以省去大量的get 和set方法使用步骤1. 导入依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> </dependency>

2020-08-27 12:24:07 251

原创 Error processing condition on org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguratio

1、问题说明:在启动 springboot的 main函数 是时候,报错,说获取不到DataSource 等一些列错误;报错信息若下:Error processing condition on org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$PooledDataSourceConfigurationCaused by: java.lang.IllegalStateException: Failed to

2020-08-06 20:01:03 1390

原创 微信支付回调的notify_url返回的是什么?

调起支付后微信回调返回的数据<xml><appid><![CDATA[c372c943bd8b]]></appid><bank_type><![CDATA[CCB_DEBIT]]></bank_type><cash_fee><![CDATA[1]]></cash_fee><fee_type><![CDATA[CNY]]></fee_type><i

2020-08-05 14:51:43 1403

原创 Java实现批量导入Excel表格数据到数据库中

先引入Apache poi的依赖<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.1</version> </dependency> <dependency>

2020-08-05 09:51:31 1704 1

原创 RedisTemplate常用集合使用说明-boundHashOps

有兴趣的伙伴可以直接去 redis官网了解更多api首先要定义一个BoundHashOperationsBoundHashOperations<String, String, Object> boundHashOperations = redisTemplate.boundHashOps("aaa");1、put(HK key, HV value)新增元素到指定键中boundHashOperations.put("ww","i");boundHashOperations.pu

2020-08-03 11:42:42 14576

原创 如何遍历map集合

Map集合是基于java核心类——java.util中的;Map集合用于储存元素对,Map储存的是一对键值(key和value),是通过key映射到它的valuevalues() : 是获取集合中的所有的值----没有键,没有对应关系。KeySet() : 将Map中所有的键存入到set集合中。因为set具备迭代器。所有可以迭代方式取出所有的键,再根据get方法。获取每一个键对应的值。 迭代后只能通过get()取key 。entrySet():是返回此映射中包含的映射关系的 Set 视图。 Map.

2020-08-03 11:14:59 296

原创 微信支付获取回调的结果

支付完成支付我们的notify_url指定我们一个接口,用来做支付之后的回调,根据回调返回的信息去修改相对应的订单状态,我这里只说明了获取回调结果,具体订单怎么操作就看需求了话不多说,上代码 // 微信回调 @RequestMapping(value = "/wechatNotifyUrl") public Result wechatNotifyUrl(HttpServletRequest httpServletRequest){ Result result ;

2020-08-03 10:26:59 801

原创 一台电脑怎么安装两个或者多个MYSQL

主要保证MYSQL的注册信息不一致,一台电脑是可以装多个MYSQL数据库的具体操作如下首先找到注册表win+R---->regedit---->HKEY_LOCAL_MACHINE---->SYSTEM---->CurrentControlSet---->Services---->MySQL计算机\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL找到imagepath修改数据字段这个是我的默认的注册表

2020-08-01 11:09:30 1945 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除