自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java中的Stream和Optional

java stream optional

2022-10-09 15:22:29 309 1

原创 jar运行在docker中

jar运行在docker中

2022-09-21 16:40:17 996

原创 java异步线程池同时请求多个接口数据

java异步线程池同时请求多个接口数据一、适合的使用场景复杂的网页爬虫,如要同时请求多个不同网页的数据,并且需要执行不同的数据处理,这个是非常合适的,执行线程传递的参数到最后callback是会附带一起反馈,你可以根据请求时的附带的类型参数进行判断。 复杂的首页数据,同时需要请求不同数据库的不同接口。二、优势解决了多线程中复杂的线程堵塞问题,因为有future,它已经给你做了所有的事。三、实现1. ExecutorServicejava线程池类申明方式:ExecutorService exc

2022-02-22 09:39:29 3275

原创 简单的根据parentId生成树

简单的根据parentId生成树 @Test public void findAll() { Map<Integer, Tree> all = treeMapper.findAll(); for (Tree t : all.values()){ if (t.getParentId()!=null){ all.get(t.getParentId()).getChild().add(t);

2022-02-14 10:04:24 518

原创 下载自定义的xml

public void getTopoXml(HttpServletRequest request, HttpServletResponse response, String id) { TopoInfoDto dto = getTopoInfo(id); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null;

2021-11-25 11:42:07 93

原创 kafka

1、启动 zk使用 kafka-server-start.sh 启动 kafka 服务:bin/kafka-server-start.sh config/server.properties2、启动Kafka 服务使用 kafka-server-start.sh 启动 kafka 服务:bin/kafka-server-start.sh config/server.properties3、创建 topic使用 kafka-topics.sh 创建单分区单副本的 topic test:bi

2021-11-09 17:13:15 60

原创 二叉树遍历

二叉树遍历package com.example.mybatis.binarytree.demo;import java.util.ArrayList;import java.util.List;/** 前序遍历:ABDEGCF 中序遍历:DBGEACF 后序遍历:DGEBFCA * 第一层:A 第二层:B、C 第三层:D、E、F 第四层:G * A * B C * D E F * G */

2021-10-18 15:38:11 65

原创 mybatis中collection中的ofType=“String“时

mybatis中collection中的ofType="String"时DTO:package com.example.mybatis.entity;import java.util.List;/** * 统计部门下的员工名称(只查询出员工名称) */public class ListString { // 部门id private int deptId; // 员工名称集合 private List<String> empNames;

2021-10-18 15:34:23 2437

原创 下载任意类型文件

下载任意类型文件package com.example.jpame.controller;import lombok.SneakyThrows;import org.springframework.http.HttpHeaders;import org.springframework.http.HttpRequest;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web

2021-09-29 10:59:11 195

原创 springSecurity

public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Autowired private MyUserDetailsService userDetailsService; /** * 指定加密方式 */ @Bean public PasswordEncoder passwordEncoder(){ // 使用BCrypt加密密码

2021-09-26 14:00:07 55

原创 springboot单元测试

@RunWith(SpringRunner.class) // 等价于使用 @RunWith(SpringJUnit4ClassRunner.class)// WebApplication.class为主启动类@SpringBootTest(classes = { WebApplication.class })public class CustomerTest {

2021-08-16 14:40:11 48

原创 使用validation校验

使用validation校验加入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency>controller:import com.example.dx0.pojo.Persion;import org

2021-07-10 12:45:22 108

原创 sql注入与防止

sql注入与防止何为sql注入如何防止sql注入何为sql注入@RestControllerpublic class Controller { @Autowired SqlInject sqlInject; @RequestMapping("/user/{userId}") public void courseList(@PathVarable ("userId") String studentId){ List<Course&

2021-05-28 20:08:41 166

原创 springMVC小记

springMVC小记SpringMVC 中重要组件spring容器和springMVC容器的关系跳转方式传参自定义拦截器拦截器栈SpringMVC 运行原理SpringMVC 对 Date 类型转换SpringMVC 中重要组件DispatcherServlet: 前端控制器,接收所有请求(如果配置/不包含 jsp)HandlerMapping: 解析请求格式的.判断希望要执行哪个具体的方法.HandlerAdapter: 负责调用具体的方法.ViewResovler:视图解析器.解析结果

2021-05-27 17:44:06 109 1

原创 pringboot后端解决跨域问题

pringboot后端解决跨域问题目录结构:只需要编写一个类,实现WebMvcConfigurer接口中的addCorsMappings方法即可:import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.CorsRegistry;import org.springframework.web.servlet.config.a

2021-05-27 16:04:10 92

原创 Spring小记

Spring小记从IOC容器获取bean复杂类型注入一个接口有多个实现类,如何自动装配AOPJdbc Tempalte从IOC容器获取beanClassPathXmlApplicationContext(从类路径获取文件) 和 FileSystemXmlApplicationContext(从系统磁盘径获取文件)。方式一(ClassPathXmlApplicationContext(从类路径获取文件)方式):实体类:public class Person { private String

2021-05-27 15:40:51 98 1

原创 发送QQ邮件

发送QQ邮件package com.zyg.jas.common.tool.util;import com.sun.mail.util.MailSSLSocketFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.mail.SimpleMailMessage;import org.springframework.mail.javamail.JavaMail

2021-04-23 14:30:31 115

原创 java对excel经行读写

java对excel经行读写package com.common.tool.util;import org.apache.poi.hssf.usermodel.*;import org.apache.poi.hssf.util.HSSFColor;import org.apache.poi.poifs.filesystem.POIFSFileSystem;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.userm

2021-04-14 17:26:02 75

原创 Mybatis批量删除

Mybatis批量删除注意foreach中的collection,数组是array、list集合是list、数组:// void deleteClassBatchById(int[] idList); <delete id="deleteClassBatchById" parameterType="int"> DELETE FROM classes WHERE Id in <foreach collection="array" item="id" o

2021-04-09 15:32:23 93

原创 mysql表的修改

为字段添加check:ALTER table committee add CHECK(c_grade IN('大一','大二','大三','大四'));

2021-03-28 16:45:52 43

原创 格林威治时间(Tue Jan 01 00:00:00 CST 2019)[ Date ]转化 为 [ 2019-01-01 10:10:10 ]

格林威治时间(Tue Jan 01 00:00:00 CST 2019)[ Date ]转化 为 [ 2019-01-01 10:10:10 ] String date = "Thu Sep 10 00:00:00 CST 2020"; SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",Locale.US); Date d=sdf.parse(date); sdf

2021-03-28 13:55:02 347

原创 redis缓存清除策略 、获取dumb.rdb或者***.aof文件的位置

redis缓存清除策略获取dumb.rdb或者***.aof文件的位置

2021-03-09 21:05:53 124

原创 window中使用jedis连接虚拟机中的redis

window中使用jedis连接虚拟机中的redis一 、首先linux中的redis要设置密码1.第一种方式 (当前这种linux配置redis密码的方法是一种临时的,如果redis重启之后密码就会失效,所以这种方式不能使用)2.第二种方式 (永久方式)需要永久配置密码的话就去redis.conf的配置文件中找到requirepass这个参数,如下配置:修改redis.conf配置文件# requirepass foobaredrequirepass 123456 #指定密码12345

2021-03-09 20:58:02 218

原创 linux安装redis

1.下载redis压缩包:2.解压,解压后进入解压目录,执行命令:make3.执行make时可能报错,应为系统没有安装gcc。执行下列命令安装gccsudo apt-get install build-essential4.安装完成后,cd / 进入根目录执行 gcc -v 查看是否安装成功,成功显示//信息的最后显示gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) 5.再次进入redis目录中,执行make命令即可make执行

2021-03-07 15:47:22 40

原创 maven笔记

maven生命周期:编译:compile(生成.clasa)清理:clean(清理已编译好的class文件)测试:test(该命令会将test目录中的源码进行编译)安装:install(含部署)(打包并部署到本地存库)POM-Maven坐标groupId:组织标识(包名)artifactId:项目名称version:项目的当前版本Scope:用来控制依赖和编译、测试、运行的classpath的关系&nbsp compile:默认编译依赖范围。对于编译、测试、运行三种

2021-03-06 11:04:58 43

原创 java中的泛型(E)

java中的泛型(E)泛型:就是一种不确定的数据类型。比如:ArrayList E就是泛型。 这种不确定的数据类型需要在使用这个类的时候才能够确定出来。泛型可以省略,如果省略,默认泛型是Object类型。泛型的好处:1. 省略了强转的代码。2. 可以把运行时的问题提前到编译时期。如:myGenericity.javapublic class myGenericity<E> { private E i; public void set(E j) { this.i = j;

2021-03-04 17:10:02 849 2

原创 java面试题

一.java基础String和StringBuffer的区别?String对象是不可变对象,每次操作String都会建立新的对象来保存新的值。是一个可变对象,当对它进行修改的时候不会像String那样重新建立对象。Int和Integer的区别?Integer是int的包装类,int则是java的一种基本数据类型Integer的默认值是null,int的默认值是0数组Array和列表ArrayList的区别?什么时候使用Array而不是ArrayList?Array数组在存放的时候

2021-03-01 16:33:03 84

原创 vueCli3中使用代理,点击页面的刷新按钮时报错

vueCli3中使用代理,点击页面的刷新按钮时报错点击刷新变成下面这种情况解决方式:publicPath: 将其值改为 publicPath: ‘/’(去掉/前的.)module.exports = { publicPath: './', devServer: { proxy: { '/cresource': { // 资料下载使用 target: 'http://localhost:8081', // 要

2021-02-23 16:55:05 228

原创 datetime类型保存的时间比实际时间少8小时

datetime类型保存的时间比实际时间少8小时解决方法:实体类中:// 主要是配置timezone="Asia/Shanghai"@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="Asia/Shanghai")//后台的时间 格式化 发送到前台 @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//接受前台的时间格式 传到后台的格式 private Timestamp publishDa

2021-02-23 15:52:48 480

原创 静态代码块、非静态代码块、构造函数执行顺序

静态代码块、非静态代码块、构造函数执行顺序/** * 类的实例化顺序,静态代码块、非静态代码块、构造函数、 * @author MING */class Person { static String name = "父类静态属性"; String addr = "父类非静态属性"; static int m=1; static { m=2; System.out.println(name); System.out.println("父类静态块"); } { Sys

2021-02-22 21:50:12 45

原创 elementUI表单验证

elementUI表单验证注意:el-form中要有::model=" " :rules=" "el-form-item要有:prop如果点击提交时也启动验证:el-form中要有 ref=""<template> <div> <div class="manage_tip"> <span class="title">表单在提交的时候进行验证</span>

2021-02-20 11:38:21 94

原创 a标签实现文件下载

a标签实现文件下载<button @click="downloadByUrl()"></button> downloadByUrl(){ const a = document.createElement('a'); // 创建a标签 let url = http://localhost:8080/image/f1.doc a.setAttribute('download',url)

2021-02-07 16:53:58 1367

原创 @RequestBody、@RequestParam、@PathVariable

@RequestBody、@RequestParam、@PathVariable1.RequestParam后端接收 @RequestMapping(value = "/saveResource",method = RequestMethod.POST) @ResponseBody public String saveResourceHandler(@RequestParam("resourceFile")MultipartFile multipartFile,@RequestPar

2021-02-04 11:03:53 72

原创 vue中登录验证

vue中登录验证sessionStorage和router.beforeEach结合使用1.点击登录按钮后设置sessionStorage的值,如<!--从后端返回这个登录的对象,如果不为null,设置sessionStorage的值为100--> axios.post('http://localhost:8080/jas/mport/sys/login',formDate).then(function (resp) { if (resp.data !=null &&a

2021-01-28 21:29:31 560

原创 ssm中使用slf4g

ssm中使用slf4g加入依赖 <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.2</version> </dependency> <dependency> <grou

2021-01-22 18:42:14 286

原创 启动web项目(maven)

启动web项目(maven)步骤6点击进去这个样子点击步骤8后界面最后别忘了点击apply和ok按钮,然后就可以启动项目了。

2021-01-16 21:12:16 467

原创 路由容器讲解

路由容器讲解this.$router.push()是如何知道将某个组将插入到哪个路由容器的呢?其实是根据路由来决定的(即router文件夹中index.js中的路由结构来决定的),比如有一个这样的路由结构:在SysMainPage中存在一个路由容器<router-view></router-view>,在App.vue中也存在一个路由容器<router-view></router-view>项目结构如下图:我在SysMainPage中写一个按钮,

2021-01-10 17:19:11 249

原创 vue中选项和url根据彼此的改变实现高亮显示

vue中选项和url根据彼此的改变实现高亮显示主要时声明式导航标签中的activeClass属性起的作用,tag属性的作用是转为指定的标签demo当url改变时,选项变色;选择选项时,选项也变色

2021-01-10 16:44:03 189 1

原创 vue中解决跨域问题

vue中解决跨域问题当出现跨域问题时会报在vue.config.js文件中配置,vue.config.js 是一个可选的配置文件(没有自己创建就行)和 package.json 同级module.exports = { devServer: { proxy: { '/ajax': { target: 'http://m.maoyan.com', // ws: true, changeOrigin: true }

2021-01-10 16:09:15 213

原创 创建VUE项目

创建VUE项目进入任意一个文件夹(存放项目),按shift+鼠标右键,出现创建项目命令:vue create 项目名点击回车,出现(通过键盘上下箭头指定选项)点击回车,出现(空格键让选项选中)点击回车,做出一些选择点击回车,开始下载包想在的可能比较慢,crtl+c结束下载,进入项目目录shift+鼠标右键,输入cnpm i 点击回车后,重新下载包下载完成后出现...

2021-01-10 15:49:16 48

空空如也

空空如也

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

TA关注的人

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