- 博客(106)
- 资源 (1)
- 收藏
- 关注
原创 网页端扫码通过公众号实现微信授权登录
2.先调起微信授权页面,获取code。(如果用户同意授权,页面将跳转至 redirect_uri/?用如下连接生成二维码,微信扫码可以调起授权页面。
2023-05-28 16:55:23
1037
原创 docker遇到Cannot connect to the Docker daemon at unix:///var/run/docker.sock问题的解决方案
docker执行 docker ps 命令时报错的解决方案
2023-02-18 10:37:15
4391
1
原创 springboot通过controller,dao,service,serviceImpl的基类快速实现各个实体类的增删改查分页等操作
springboot通过controller,dao,service,serviceImpl的基类快速实现各个实体类的增删改查分页等操作
2023-01-12 17:40:45
1820
原创 服务器编写一个startup.sh可执行文件,方便应用部署
编写一个可执行的startup.sh文件。如下:#!/bin/shkill -9 `lsof -ti:8081`nohup java -jar xxxxx.jar --spring.profiles.active=prod &
2022-05-01 18:42:30
642
原创 https通过nginx反向代理到api接口的端口以及vue的前端项目的路由代理配置
nginx配置https协议以及场景反向代理的处理。1.https通过nginx反向代理到api接口的端口: server { listen 443 ssl; server_name guoyou.store; ssl on; root html; index index.html index.htm; ssl_certificate cer/1_guoyou.store_bundle.crt; ssl_certificate_key ce
2022-04-30 09:00:00
1558
原创 application.yml多环境配置
1.默认配置application.ymlspring: profiles: active: dev #active: prod2.开发环境配置application-dev.ymlspring: config: activate: on-profile: - dev3.生产环境配置application-prod.ymlspring: config: activate: on-profile:
2022-04-29 14:48:52
942
原创 mybatis-plus selectById 无效的问题处理
如果发现在mybatis-plus的selectById的方法 无效。需要在实体类中给主键加上 @TableId注释。如下:@Datapublic class Plan extends BaseEntity { @TableId private Integer planid; private String bannerimg; }
2022-04-24 10:36:01
2117
1
原创 springboot 本地项目上传图片到本地,并通过http访问图片
1.在application.yml配置springboot的静态资源的访问路径:spring: # 配置静态资源路径 web: resources: static-locations: file:${project.upload-url} servlet: multipart: max-request-size: 50MB max-file-size: 50MBproject: upload-url: D:/uploadFile
2022-04-22 10:57:48
1322
1
原创 uniapp开发小程序,编译时报错Cannot read property ‘forceUpdate‘ of undefined的解决方案
1.这个报错,主要是没有在uniapp的开发平台为这个应用注册一个appid。2.登录uniapp开发平台:https://dev.dcloud.net.cn/,注册成为开发者。并创建一个应用,此应用的名称要与本地的项目的名称一致。3.重现获取uniapp的应用标识(appid)4.在HbuildX开发工具里面,为项目的manifest.json文件配置上小程序的appId。(需要自己注册的小程序账号的appId,小程序开发工具分配的appId不行)5.重现运行编译小程序便可解决。...
2021-12-21 16:41:44
20238
原创 windows系统安装vue的devtools插件
1.在github上,下载代码:git clone https://github.com/vuejs/devtools.git2.把persistent改为true3.在devtools目录下,安装包yarn,在构建yarn run build。4.window系统下会报错,如下:5.解决方案:在E:\resource\devtools\packages\shell-chrome\package.json文件中,把rm -rf 命令替换为 rimraf 命令,如下:6.再重新构建:
2021-11-18 16:47:36
489
1
原创 mybatis-plus的多租户功能实现
1.创建一个数据表(包含租户ID字段–tenant_id)CREATE TABLE `t_sys_user` ( `user_id` bigint(50) NOT NULL AUTO_INCREMENT COMMENT '用户ID', `user_name` varchar(30) NOT NULL COMMENT '用户名', `user_password` varchar(128) NOT NULL COMMENT '用户密码', `salt` varchar(64) DEFAULT
2021-11-04 11:21:45
4159
3
原创 mysql常用语句补充篇(持续更新)
1.重置某个字段的默认值:ALTER TABLE t_sys_user ALTER COLUMN creater_time DROP DEFAULT;ALTER TABLE t_sys_user ALTER COLUMN creater_time SET DEFAULT CURRENT_TIMESTAMP;2.重置自增字段的值:ALTER TABLE t_sys_user AUTO_INCREMENT = 36;
2021-11-03 15:15:08
105
原创 express+http-proxy-middleware实现多环境多模块接口的代理
npm:http-proxy-middleware// javascriptconst express = require('express');const { createProxyMiddleware } = require('http-proxy-middleware');const app = express();app.use('/api', createProxyMiddleware({ target: 'http://www.example.org', changeOrigi
2021-08-18 07:29:21
646
原创 JavaScript常用功能代码块汇集
1.web下载export default function download(fileName: string, url: string) { const a = document.createElement('a'); /// 创建a标签 const e = document.createEvent('MouseEvents'); /// 创建鼠标事件对象 e.initEvent('click', false, false); /// 初始化事件对象 a.href = url; a
2021-07-28 15:23:37
123
原创 antdesign的table使用useState来赋值给dataSource不生效的问题解决方案
正确做法:const list = […dataSource];需要解构dataSource,才有效果。直接赋值const list = dataSource;是不会更新dataSource的。 const [dataSource, setDataSource] = useState<any>([]); const addHandler = () => { const list = [...dataSource]; list.push({ name:
2021-07-12 16:28:14
2936
原创 vue自定义组件使用$attrs和$listeners,正确传递属性和v-model的值
/*@Description:@Author: hyh@Date: 2021-07-11 18:46:00@LastEditTime: 2021-07-11 18:46:00@LastEditors: hyh*/ export default {inheritAttrs: true,props: {value: String},data() {return {list: []}},methods: {},computed: {},watch:
2021-07-11 22:24:17
808
原创 Error in nextTick: “InvalidCharacterError: Failed to execute ‘setAttribute‘ on ‘Element‘: ‘,‘ is not
记录vue中一次报错:Error in nextTick: “InvalidCharacterError: Failed to execute ‘setAttribute’ on ‘Element’: ‘,’ is not a valid attribute name.”问题所在:是因为xxx.vue页面文件中的template的某个元素标签上多了一个‘,’符号,导致vue无法解释属性所造成的。解决方案是:找到对应的页面,把这个多了‘,’符号元素标签找出来,并把‘,’符号去掉就可以解决...
2021-06-29 15:20:53
3623
原创 mybatis的XML映射器和动态 SQL
1.XML 映射器sql映射文件的顶级元素:select,insert,update,delete,sql,resultMap,cache,cache-ref。1.select元素:<selectid="getUser" //命名空间的对应的方法名称parameterType="int" //传入的参数类的名称resultType="User" //返回结果的类名称resultMap="userMap"//对外部的resultMap的命名引用flushCache="fals
2021-06-29 10:51:06
229
1
原创 mysql常用语句汇总
1.连接数据库:连接本地数据库:mysql -u root -p连接远程数据库:mysql -h 192.169.22.199 -u root -p退出数据库:exit2.创建数据库:create database payment;使用 mysqladmin 创建数据库mysqladmin -u root -p create abc_db;3.显示所有数据库:show databases;4.删除数据库:drop database payment;使用 mysqladmin
2021-06-25 16:25:33
1584
2
原创 springboot整合shiro+mybatis和shiro认证和授权过程的源码流程详解以及全面认识shiro
1.引入依赖: <!--引入shiro依赖包--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring</artifactId> <version>1.4.0</version> </dependency>2.shiro架构图:...
2021-06-23 17:03:45
286
1
原创 springboot整合log4j2并且通过aop实现日志的打印和收集
1.引入依赖:<!--引入面向切面依赖包--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><!-- log4j2 --><dependency><groupId>org.springfr
2021-06-22 11:42:33
999
1
原创 mysql自动处理创建日期和更新日期
1.创建数据表时,通过mysql内部的处理方法,可以自动根据insert和update语句来填充创建时间和更新时间,如下:CREATE TABLE `t_sys_test` (`id` INTEGER (20) NOT NULL AUTO_INCREMENT,`name` VARCHAR (10) DEFAULT NULL,`age` VARCHAR (3) DEFAULT NULL,`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAM
2021-06-21 13:48:40
820
原创 捋一捋RedisTemplate
1.RedisTemplate类所在的包路径:org.springframework.data.redis.core.RedisTemplate2.redisTemplate序列化,需要序列化四个地方,keySerializer, valueSerializer,hashKeySerializer,hashValueSerializer: @Nullable private RedisSerializer keySerializer = null; @Nullable p
2021-06-13 18:23:01
592
原创 springboot整合redis以及redis序列化处理
1.springboot是怎样自动配置redis的?1.1.在spring-boot-autoconfigure的包中, org/springframework/boot/spring-boot-autoconfigure/2.5.0/spring-boot-autoconfigure-2.5.0.jar!/META-INF/spring.factories。找到redis的自动配置类:按Ctrl+鼠标点击进去,如下:说明:这里就是springboot自动配置的redisTemplate和str
2021-06-13 17:42:07
776
原创 Do not use built-in or reserved HTML elements as component id
vue里面如果报此错误,肯定是组件名与html的标签某个标签的命名一样,才报此错。所以需要排查组件名,改成非html的标签的名称。
2021-06-11 22:11:48
376
2
原创 springboot如何快速查看自动配置的类和application.yml的配置属性
1.找到springboot的自动配置包的spring.factories文件。路径:org/springframework/boot/spring-boot-autoconfigure/2.1.9.RELEASE/spring-boot-autoconfigure-2.1.9.RELEASE.jar!/META-INF/spring.factories2.找数据源的自动配置路径,按住Ctrl+鼠标点击。进入到数据源的自动配置类。如下:3.进去后可以看到@EnableConfigurationPr
2021-06-10 17:53:15
2677
原创 线程Thread,Runable,Callable与异步@Async
1.线程流程图说明:自定义的线程是由方法start()启动一个线程,然后执行run()方法,过程中可以通过sleep()方法进入睡眠延迟,通过interrupt()方法进行中断当前线程,并且在异常方法中return跳出当前线程,如果不return跳出,线程还会继续执行run()方法中的程序。获取当前线程名称:Thread.currentThread().getName()。2.自定义一个线程的依赖结构图,可以看得出自定义的线程,都是线程对象Thread的子类,而Thread实现了Runbable的r
2021-06-10 16:06:54
1687
原创 jwt生成token和验证token以及获取playload的数据,实现token拦截
jwt实现流程:1.添加依赖: <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.2.0</version></dependency>2.编写一个jwt的工具类package com.springboot.jwt.common;import com.
2021-06-09 19:50:53
11177
1
原创 springboot+security在前后端分离中使用会话session管理时,前端与后端需要注意的withCredentials设置
1.如果security的配置中使用了sessionManagement()会话管理,如下:2.则前端的axios需要开启withCredentials为true的设置。如果不设置或者设置为false,登录成功后,其他接口会报“还没登录”方面的错误(302的错误)。3.如果后端不配置allowCredentials(true)。接口就会报错。如下:Access to XMLHttpRequest at 'http://localhost:8080/login' from origin 'http:
2021-06-09 16:18:22
1055
原创 sql的count()函数,返回结果为long类型,不是Integer类型
sql的count()函数,返回结果为long类型,不是Integer类型
2021-06-09 15:51:06
4536
原创 切面,过滤器,拦截器的实现
1.实现一个切面:1,通过@Aspect注释来声明一个切面。2,通过@Component注释把切面注入到容器中。3,通过@Around("execution(* com.springboot.filterinterceptoraspect.controller.TestController.*(..))")把切面通知的表达式绑定到某个类的方法4,通过ProceedingJoinPoint连接点,获取方法的相关信息,如:命名,参数,返回值。1.1.AspectHandler.java自定义一个切面
2021-06-09 11:30:02
581
2
原创 IntelliJ IDEA 保存时, 自动导入包设置
1.单个包导入,快捷键:Alt+Enter;2.Ctrl+S保存时,自动导入相关的依赖类。如下配置IDEA工具:把这两项勾选上,保存退出设置。在编码时,就会自动提示对应的类和保存时,自动把未导入的类引入。...
2021-06-09 09:28:44
734
原创 springboot中使用validation-api进行参数验证
1.在pom.xml文件引入依赖:<dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>2.0.1.Final</version></dependency>2.内部注释对象:@AssertFalse:用于boolean字段,该字段只能为t
2021-06-08 15:48:43
1446
1
原创 kotlin编译报错问题和解决方案
IDEA 编译springboot项目报错:Error:Kotlin: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.解决方案:重新编译项目,如下:
2021-06-08 10:26:36
19043
8
原创 spring security默认用户名和密码以及在配置文件配置一个账号和密码
1. spring security默认用户名和密码spring security默认用户名:userspring security默认密码:在控制台打印出来,如下:Using generated security password: 1dfdgki3-q234-76hj-6h7l-1re87f546r6462.spring security在yml文件配置用户名和密码spring: security: user: name: nba password:
2021-06-08 09:58:47
13732
4
原创 springboot整合security实现权限控制
1.建表,五张表,如下:1.1.用户表CREATE TABLE `t_sys_user` ( `user_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID', `user_name` varchar(30) NOT NULL COMMENT '用户名', `user_password` varchar(128) NOT NULL COMMENT '用户密码', `salt` varchar(64) DEFAULT NULL COMM
2021-06-07 21:17:14
1917
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人