![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 52
Mrchai521
Coding
展开
-
【Java - List转Tree生成树状结构的数据】
需求场景有下面一张菜单表,典型的树形结构设计现前端需要后端返回树形数据结构用于构造展示树。代码实战首先我们根据数据库结构创建实体对象@Data@TableName("tb_menu")public class Menu extends BaseEntity { private static final long serialVersionUID = 1L; /** * 菜单ID */ @TableId private Long men原创 2021-09-18 16:19:08 · 962 阅读 · 0 评论 -
【SpringBoot多文件压缩zip浏览器下载】
通过浏览器下载文件(返回文件流)下载文件到本地(下载文件,返回base64数据流,再将数据流转换为文件) /** * 批量下载附件 */public void batchDownloadDoc(HttpServletResponse response){ /** * 批量下载文件路径 */ public static final String DOWLOAD_FILE_PATH = "D:\\bathFile"; /** * 将bathDocFil原创 2021-08-27 15:05:13 · 502 阅读 · 0 评论 -
【Windows远程桌面出现CredSSP加密数据修正问题解决方案】
解决方案:1、win+R打开运行窗口,输入gpedit.msc命令,点击“确定”双击“加密数据库修正”,将状态改为“启用”,保护级别改为“易受攻击”,应用—>确定就OK了;原创 2021-01-06 09:55:14 · 1439 阅读 · 0 评论 -
【Spring Boot 解决跨域问题的 3 种方案】
前后端分离大势所趋,跨域问题更是老生常谈,随便用标题去google或百度一下,能搜出一大片解决方案,那么为啥又要写一遍呢,不急往下看。问题背景:Same Origin Policy,译为“同源策略”。它是对于客户端脚本(尤其是JavaScript)的重要安全度量标准,其目的在于防止某个文档或者脚本从多个不同“origin”(源)装载。它认为自任何站点装载的信赖内容是不安全的。当被浏览器半信半疑的脚本运行在沙箱时,它们应该只被允许访问来自同一站点的资源,而不是那些来自其它站点可能怀有恶意的资源。注:具原创 2021-01-05 16:23:16 · 111 阅读 · 0 评论 -
【IDEA配置SpringBoot多环境的切换的五种方案】
一. springBoot启动在Program arguments:输入指令–spring.profiles.active=dev二. springBoot启动在Active Profiles:输入dev三. springBoot启动在Environment variables: 输入spring.profiles.active=dev四. maven启动Environment variables: 输入spring.profiles.active=dev五. maven启动Skip t原创 2020-12-07 11:24:50 · 478 阅读 · 0 评论 -
【consul、eureka、nacos异同点】
配置中心eureka 不支持consul 支持,但用起来偏麻烦,不太符合springBoot框架的命名风格,支持动态刷新nacos 支持,用起来简单,符合springBoot的命名风格,支持动态刷新注册中心1.eureka:应用内/外:直接集成到应用中,依赖于应用自身完成服务的注册与发现ACP原则:遵循AP(可用性+分离容忍)原则,有较强的可用性,服务注册快,但牺牲了一定的一致性。版本迭代:目前已经不进行升级集成支持:只支持SpringCloud集成访问协议:HTTP 雪崩保护:支原创 2020-12-03 09:53:17 · 561 阅读 · 2 评论 -
【抽象工厂模式】
抽象工厂模式抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。### 介绍**意图:**提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。**主要解决:**主要解决接口选择的问题。**何时使用:**系统的产品有多于一个的原创 2020-12-01 10:43:44 · 123 阅读 · 0 评论 -
【MyBatis-Plus入门使用】
MyBatis-Plus入门使用Mybatis-Plus(MP)在 MyBatis 的基础上只做增强不做改变,简化开发、提高效率。本篇是根据MyBatis-Plus入门教程视频,学习后总结的。有兴趣可以看一下,对于初学很有帮助。课程是SpringBoot + MyBatis-Plus的方式集成的。项目地址文章可能描述的不清楚,或者你想看下代码,可以clone仓库immoc-mybatis-plus前置配置数据库和表配置本次学习,只用到1个库,一张表,库名为mp,表名为mp_user。直接拷原创 2020-11-27 14:16:31 · 1065 阅读 · 0 评论 -
【一个 SpringBoot 项目该包含哪些?】
前言建立一个全新的项目,或者把旧的庞大的项目,进行拆分成多个项目。在建立新的项目中,经常需要做一些重复的工作,比如说拷贝一下常用的工具类,通用代码等等。所以就可以做一个基础的项目方便使用,在经历新项目的时候,直接在基础项目上进行简单配置就可以开发业务代码了。基础项目该包含哪些东西。Swagger在线接口文档。CodeGenerator 代码生成器。统一返回。通用的分页对象。常用工具类。全局异常拦截。错误枚举。自定义异常。多环境配置文件。Mav原创 2020-11-25 11:39:19 · 282 阅读 · 0 评论 -
【:: 是什么语法?】
一:简洁方法引用分为三种,方法引用通过一对双冒号:: 来表示,方法引用是一种函数式接口的另一种书写方式静态方法引用,通过类名::静态方法名, 如 Integer::parseInt实例方法引用,通过实例对象::实例方法,如 str::substring构造方法引用,通过类名::new, 如 User::new二:方法引用public final class Integer { public static int parseInt(String s) throws Numb原创 2020-09-10 19:00:31 · 13525 阅读 · 0 评论 -
【Java使用mongodb-driver来操作mongodb】
Java使用mongodb-driver来操作mongodb创建新工程创建新的demo工程,引入MongoDB的jar包的坐标:<dependencies> <!--mongo依赖--> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifact原创 2020-09-07 15:13:11 · 763 阅读 · 1 评论 -
【遍历Map/HashMap的各种方法】
遍历Map集合之前需要定义一个Map集合对象:Map<String,String> map = new LinkedHashMap<String,String>();map.put("1","one");map.put("2","two");map.put("3","three");new LinkedHashMap对象,主要是确保集合map中的元素是按照插入的顺序存放的。1、使用keySet()方法遍历使用keySet()方法遍历,是先取出map的key组成原创 2020-05-20 10:33:07 · 324 阅读 · 0 评论 -
【java递归生成树形结构】
项目开发中,几乎无法避免的会遇到树形结构,今天和大家分享java后端如何处理数据为树形结构。前端处理树形结构,后端生成树形结构。Entity实体层: 此处省略好几个实体字段。 /** * 孩子节点集合 */ private List<OrganizationVO> child = new ArrayList<Organiza...原创 2020-04-24 15:29:58 · 1990 阅读 · 0 评论 -
【SpringBoot2.3使用Spring Data-JPA搭建项目】
Spring的Jpa是一个非常不错的持久层框架,可以理解为就是对Hibrenate进行了封装,比起Mybatis优点在于不用关注sql语句的编写。我这案例中使用ResultFul风格来编写的。一、搭建SpringBoot项目导入Jpa的依赖<!--导入jpa依赖--> <dependency> <groupId&g...原创 2020-04-19 21:47:09 · 1568 阅读 · 0 评论 -
【DBUtils数据库连接池多表连接查询】
DBUtils数据库连接池多表连接查询MapListHandler的使用(具体使用方式查看官方文档http://commons.apache.org/proper/commons-dbutils/apidocs/index.html)key——sql语句查询的字段value——数据库中查询得到的结果出现的问题描述对于多表连接查询,如果使用BeanListHandler,则会出现空指针异常...原创 2020-01-16 21:53:55 · 1839 阅读 · 0 评论 -
【C3P0多表查询-----封装多个Bean实体】
1、首先有两个表,一个attendance考勤表(从表),一个employee员工表(主表)如下图所示2、如果要查询两个表中指定列的信息,比如employee表中的name等信息,通过employee_number,那么就涉及到多表查询,而且对查询的结果封装的时候要用:Map<String, Object>而且sql语言要注意他的书写格式:请看下面,我查询的是对应emp...原创 2020-01-08 14:54:52 · 399 阅读 · 0 评论 -
【Jsp-Servlet常见 两种 页面间传递数据方式(request转发和session)】
页面传递数据方式,就是使用JSP的九大内置对象:域对象:【request、response、session、out、pageContext、config、application、exception、page】【Jsp-Servlet常见 两种 页面间传递数据方式(request转发和session)】①request转发(麻烦):一次request转发只适合,两个页面间传值。俗称:一次re...原创 2019-12-27 10:18:38 · 676 阅读 · 0 评论 -
【解决 Centos7.5 启动tomcat 但是外部不能访问的问题】
一. 启动tomcat 进入 tomcat 所在的目录的 bin 的文件夹下执行"./ startup.sh" 命令 启动 tomcat ,如果出现下面这种情况说明 tomcat 启动 成功。二. 验证 tomcat 是否启动成功 输入"ps -ef|grep tomcat"命令验证 tomcat 是否启动成功,如果出现下面这种情...原创 2019-12-16 17:29:45 · 298 阅读 · 0 评论 -
【eclipse web项目部署到华为云服务器】
声明:服务器为Linux服务器一、在服务器上安装JDK、MYSQL、Tomcat安装参考如下文章:https://blog.csdn.net/Mrchai521/article/details/1034349731)执行命令:cd /usr 打开usr这个文件夹mkdir javaweb 新建一个叫javaweb的文件夹cd javaweb 打开jav...原创 2019-12-15 11:28:48 · 900 阅读 · 0 评论 -
【项目部署到linux服务器前首次安装任务】
一.linux服务器安装jdk1)查看库中的jdk版本yum search java|grep jdk 查看yum库中jdk的版本2)安装jdkyum -y install java-1.8.0-openjdk* 安装jdk8耐心的等待jdk的安装,大概2分钟左右,出现下面标志,即代表安装成功 。3)查看安装的jdk版本java...原创 2019-12-08 10:06:55 · 337 阅读 · 0 评论 -
idea maven No implementation for org.apache.maven.model.path.PathTranslator was bound.
打印日志内容:这是因为IDEA和Maven的版本不匹配我这里ideamaven是3.6.2换成了3.5.4重新导入问题就解决了原创 2019-12-04 16:27:05 · 7015 阅读 · 0 评论 -
【mybatis学习】
创建实体类和dao层接口:package com.cxf.domain;import java.io.Serializable;import java.util.Date;/** * @author:柴新峰 * @create:2019/10/21 */public class User implements Serializable { private Int...原创 2019-10-21 12:24:54 · 157 阅读 · 0 评论 -
【复习笔记】---集合
Collection集合1.1集合概述集合:集合是java提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,他们有什么区别?数组的长度是固定的,集合的长度是可变的。数组中存储的都是同意类型的元素,可以存储基本数据类型值。集合存储的都是对象,而且对象的类型可以不同。在开发过程中一般当对象多的时候,使用集合进行存储。1.2集合框架集合按照其存储结构可分为两大类,分别...原创 2019-03-18 21:56:27 · 335 阅读 · 0 评论 -
【复习笔记】---java基础
【复习笔记】—java基础第一章:Java开发入门1、简述java的特点。面向对象、跨平台、健壮性、安全性、可移植性、多线程性、动态性。2、简述JRE和JDK的区别。JRE(Java Runtime Environment,java 运行时环境),它相当于操作系统的部分,提供了java程序运行时所需要的基本条件和许多Java基础类,例如:IO类、GUI控制组件、网络类。JRE是提供给普通...原创 2019-03-20 19:58:23 · 222 阅读 · 0 评论 -
如何将java web项目上线/部署到公网
关于如何将java web上线,部署到公网,让全世界的人都可以访问的问题。小编将作出系列化,完整的流程介绍。1.在myeclipse中开发好项目,打包成war格式,不会的同学参考以下http://zhidao.baidu.com/link?url=Gb0OV9pHiDtJr8nyjPrnSA65g49I4TEAn2N3pwXsxzVsCaX0gJ8RQZHQ2GmDrmdM0ltoBdCP...原创 2019-03-10 09:17:34 · 1071 阅读 · 2 评论 -
Java中的常量池
1.字符串常量池(String Constant Pool):1.1:字符串常量池在Java内存区域的哪个位置?在JDK6.0及之前版本,字符串常量池是放在Perm Gen区(也就是方法区)中;在JDK7.0版本,字符串常量池被移到了堆中了。至于为什么移到堆内,大概是由于方法区的内存空间太小了。1.2:字符串常量池是什么?在HotSpot VM里实现的string pool功能的是一个S...原创 2018-12-05 21:48:15 · 142 阅读 · 0 评论 -
java实现各种数据统计图(柱形图,饼图,折线图)
一,前期准备工作,也就把这三个第三方包添加进本文工程,添加过程特别简单,前面写过一篇博客,讲的是java如何读取Excel表格中的数据(有兴趣的同学可以看一看:http://blog.csdn.net/pzhtpf/article/details/7506135),也要添加第三方包,添加过程一模一样,这里我们在复习一遍:1, 建,立java项目,在这个项目在建立一个新的文件夹lib;...原创 2018-12-03 11:29:30 · 3012 阅读 · 0 评论 -
Java中弹出对话框中的几种方式。
1.显示一个错误对话框,该对话框显示的 message 为 'alert':JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE); 2.显示一个内部信息对话框,其 message 为 'information': JOptionPane.showInternalMessageDialo...原创 2018-11-29 21:01:18 · 637 阅读 · 0 评论 -
jfreechart
FreeChart是一组功能强大,灵活易用的的Java API绘图,使用它可以生成多种通用性的报表,包括柱状图,饼图,曲线图,甘特图等。它能够用在摇摆和网络等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过引领读者学习在JFreeChart的中饼图,柱状图和曲线图的进阶应用,来达到熟练使用的JFreeChart的目的。 一。下载与环境配置 1。下载JFreeChart JFreeCh...原创 2018-12-04 11:25:24 · 2113 阅读 · 0 评论 -
SQL异常----已生成用于更新的 ResultSet
原因是对某张表执行事务操作(更新 插入)时 在执行期间做了一个对该表的查询的操作 所以报出该错误rs = ps.executeQuery();rs=ps.executeUpdate();原创 2018-12-02 12:02:10 · 2458 阅读 · 0 评论 -
【学习中】----HTTP协议&&Server
HTTP协议&&ServerHTTP协议什么是协议:双方在交互、通讯的时候,遵守的一种规范、规则。http协议针对网络上的客户端与服务器之前在执行HTTP请求的时候,遵守的一种规范。 其实就是规定了客户端在访问服务端的时候要带上那些东西,服务器返回数据的时候,也要带上什么东西。http请求数据解释请求的数据里面包含三个部分的内容:请求行、请求头、请求体...原创 2019-03-18 21:58:03 · 379 阅读 · 0 评论 -
【学习中】---XML笔记
XML笔记:eXtendsible markup langguage 可扩展的标记语言XML 有什么作用?1、可以用来保存数据2、可以用来做配置文件3、数据传输载体文档声明简单声明,version:解析这个xml,是使用什么版本的解析器<? xml version="1.0" ?>encoding:解析xml中的文字时,使用什么编码来翻译。<? xml ver...原创 2019-03-18 21:59:28 · 1139 阅读 · 0 评论 -
【复习】Java编程基础--基本语法(一)
Java的基本语法1、代码的基本格式修饰符 class 类名{ 程序执行代码 } public class HelloWorld(){ //底下的main函数的写法是固定格式 public static void main(String[] args){ System.out.println("程序执行结果!"); }}2、Java中的常...原创 2019-05-31 21:37:11 · 734 阅读 · 0 评论 -
Error running tomcat8 Address localhost:1099 is already in use 错误解决
错误情况:在IDEA上运行web项目时报错:Error running (项目名) Address localhost:1099 is already in use解决方法:第一步:打开Windows运行,如下图第二步:按下回车或点击确定后进入如下界面,输入netstat -ano,如下图第三步:根据第二步看到的PID17804,输入tasklist找到对应的进程,...原创 2019-10-11 10:29:41 · 1140 阅读 · 0 评论 -
【Spring环境搭建及简介】
1.Spring框架简介Spring为JavaEE开发提供了一个轻量级的解决方案,主要表现为: (1)IOC(DI)又称控制翻转或依赖注入的核心机制,提供你了bean工厂(Spring容器),降低了对业务对象替 换的复杂性,提高了组件之间的解耦。 (2)AOP的将一些通用任务,如安全、事务、日志等集中进行管理,提高复用性和管理的便捷性。 (3...原创 2019-08-29 21:17:57 · 438 阅读 · 0 评论 -
【Spring出错原因】Caused by: java.lang.NoSuchMethodException: com.cxf.service.Chinese.<init>()
一般这种情况是pojo类没有办法实例化,主要原因看看是否忘记写无参构造方法;重点:记得实现类中的无参构造,必须写,如果没有构造函数,则对象创建失败。...原创 2019-08-28 16:49:08 · 1852 阅读 · 0 评论 -
ArrayList简介+核心源码
ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。在添加大量元素前,应用程序可以使用ensureCapacity操作来增加 ArrayList 实例的容量。这可以减少递增式再分配的数量。它继承于AbstractList,实现了List,RandomAccess,Cloneable,java.io.Serializable这些接口。...原创 2019-07-07 11:05:42 · 185 阅读 · 0 评论 -
【DBUtils使用】---QueryRunner、BeanListHandler、BeanHandler、MapListHandler、MapHandler、ScalarHandler
1. ResultSetHandler 的作用: QueryRunner 的 query 方法的返回值最终取决于 query 方法的 ResultHandler 参数的 hanlde 方法的返回值。2. BeanListHandler: 把结果集转为一个 Bean 的 List, 并返回.。Bean的类型在创建 BeanListHanlder对象时以 Class对象的方式传入,可以适应列的别名...原创 2019-07-14 21:04:09 · 658 阅读 · 0 评论 -
【遇到异常】NoClassDefFoundError: javax/activation/DataSource解决方法
今天开发邮件系统,发送程序能在main函数中顺利运行.可是布署到没tomcat之中后,出现启动服务器后,先是出现:Source not found for WebappClassLoader.loadClass(String, boolean) line: 41Eclipes要求打开debug窗口调试程序.进入debug追踪,调试程序入口指向发送程序的类,按下F6,...原创 2019-07-14 17:34:37 · 11654 阅读 · 6 评论 -
Character.digit()的意义
官方说法是:java.lang.Character.digit(char ch, int radix)方法:在指定的基数返回字符ch的数值。如果基数是不在范围内MIN_RADIX≤基数≤MAX_RADIX或如果该值的通道是不是一个有效的数字在指定的基数-1,则返回。以下是如果至少有一个字符是一个有效的数字: 方法isDigit为true的字符和Unicode字符的十进制数值(或分...原创 2019-07-08 11:14:55 · 1312 阅读 · 1 评论