JAVA -- 小知识
日常项目中,遇到的各种疑惑。
六道轮回 -- 鼬
这个作者很懒,什么都没留下…
展开
-
各种去重方式--有待更新
今天学了几个去重,真真是厉害死了。sql语句select * from tc_allusers where id in (select min(student_Id) from to_screen where organization_id="5ZAhr6r4mziutumsfX4L6m" group by student_id);lambda表达式var userid =...原创 2019-03-22 20:53:16 · 263 阅读 · 16 评论 -
list().stream().collect()
list().stream().collect(Collectors.groupingby(Entity::getFild))的用法原创 2021-06-01 14:09:37 · 2433 阅读 · 0 评论 -
java-小知识-赋值,对象之间/集合之间
BeanUtils.copyProperties(modelParam, modelPO);原创 2021-05-28 11:37:43 · 206 阅读 · 0 评论 -
java捕获异常
public Result…… return Result.getServiceError("")原创 2021-05-28 11:34:45 · 157 阅读 · 0 评论 -
java--list 小栗子
如果你想写一个这样的list,你会怎么办呢?首先,你需要一个实体,里面有两个参数。其次,你需要一个list,然后,add这两个参数。public JSONObject playContentJoin(List<String> list, String contentVersion) { List<UpdateMediaPlayPO> listUp = new ArrayList<>(); for (String str:list) { UpdateMe.原创 2021-05-19 11:39:46 · 202 阅读 · 0 评论 -
端口号被占用
问题:解决方案:1.找到谁用了端口号netstat -aon|findstr 端口号2.找到程序tasklist|findstr 对应的PID3.结束程序taskkill /f /t /im 程序名或者用cmd输入taskmgr打开任务管理器,结束进程或者直接输入taskkill /pid 8832 -t -f 就可以将这个占用的PID直接关闭。...原创 2021-04-09 11:15:22 · 138 阅读 · 1 评论 -
【Java】——反射
反射:将类的各个组成部分封装为其他对象好处:可以在程序运行过程中,操作这些对象可以解耦,提高程序的可扩展性获取Class对象的方式:Class.forName(“全类名”):将字节码文件加载进内存,返回Class对象多用于配置文件,将雷鸣定义在配置文件中,读取文件,加载类Class cls = Class.forName("cn.itcast.domain.Person");类名.class:通过类名的属性class获取多用于参数传递Class cls = Person.c原创 2021-02-04 09:49:57 · 126 阅读 · 0 评论 -
Nacos——安装
Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、动态配置服务(可以做配置中心)、动态 DNS 服务。Nacos是阿里的一个开源产品,它是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。官方介绍是这样的:Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以原创 2020-11-05 13:29:21 · 215 阅读 · 1 评论 -
Nacos(1)
Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、动态配置服务(可以做配置中心)、动态 DNS 服务。Nacos是阿里的一个开源产品,它是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。官方介绍是这样的:Nacos 致力于帮助您发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 Nacos帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos是构建以“服务原创 2020-05-31 21:31:25 · 166 阅读 · 0 评论 -
什么是Serializable
一般情况下,我们在定义实体类时会继承Serializable接口,类似这样:Serializable接口:一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才能被序列化。序列化:序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。序列化对象:把对象转换为字节序列的过程称为对象的序列;化把字节序列恢复为对象的过程称为对象的反序列化。什么情况下需要序列化?当我们需要把对象的状态信原创 2020-05-21 17:56:19 · 1864 阅读 · 0 评论 -
Mybatis-基于注解开发CRUD
目录环境搭建mybatis注解建立实体类属性和数据库表中列的对应关系mybatis注解开发一对一的查询配置mybatis注解开发一对多的查询配置mybatis注解开发使用二级缓存环境搭建pom文件 <packaging>jar</packaging> <dependencies> <depe...原创 2020-04-13 11:34:47 · 204 阅读 · 0 评论 -
Mybatis-基于代理Dao实现CRUD操作
pom <packaging>jar</packaging> <dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</ar...原创 2020-04-01 08:51:27 · 171 阅读 · 0 评论 -
Spring 基于注解的AOP
pom文件和上一篇文章相同bean文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmln...原创 2020-03-26 09:29:35 · 186 阅读 · 0 评论 -
Spring 基于xml的AOP
AOP(Aspect Oriented Programming)即面向切面编程。通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是函数式编程的一种衍生泛型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提程序的可重用性,同时提高了开发效率。简单地说,就是把程序重复的代码抽取出来,在需要执行的时候,使用动态代理技术,在...原创 2020-03-20 21:02:32 · 163 阅读 · 1 评论 -
基于注解类的ioc示例
pom文件和上一篇文章相同bean文件(jdbcConfig.properties)jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/eesyjdbc.username=rootjdbc.password=1234持久层接口和上一篇文章相同持久层实现和上一篇文章相同,但是加一句在开头@Rep...原创 2020-03-18 19:22:38 · 131 阅读 · 0 评论 -
基于xml的ioc示例
pom.xml文件<dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <...原创 2020-03-18 19:22:13 · 163 阅读 · 0 评论 -
如何在idea maven项目中导入本地jar包
1、下载2、点击idea maven的图标3、在文本框内输入以下文本install:install-file -Dfile=D:\commons-dbutils-1.7.jar -DgroupId=commons-dbutils -DartifactId=commons-dbutils -Dversion=1.7 -Dpackaging=jarinstall:install-fil...原创 2020-03-17 21:45:07 · 2304 阅读 · 0 评论 -
Spring IoC
控制反转(inversion of control,缩写为IoC)是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它,也可以说,依赖被注入到对象中。实现:依赖注入(dependency injection,简称DI)、依赖查找(dependency lookup,简称DL)。...原创 2020-03-17 11:26:16 · 152 阅读 · 0 评论 -
DockerMaven插件
微服务部署有两种方法:手动部署首先基于源码打包生成jar包(或war包),将jar包(或war包)上传至虚拟机并拷贝至JDK容器。通过Maven插件自动部署对于数量众多的微服务,手动部署无疑是非常麻烦的做法,并且容易出错。所以我们这里学习如何自动部署,这也是企业实际开发中经常使用的方法。步骤:(1)修改宿主机的docker配置,让其可以远程访问vi /lib/systemd/sys...原创 2020-03-05 09:31:36 · 353 阅读 · 1 评论 -
容器化进阶Kubernetes核心技术
1 Pod详解Pod是Kubernetes的最重要概念,每一个Pod都有一个特殊的被称为”根容器“的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一部分,除了Pause容器,每个Pod还包含一个或多个紧密相关的用户业务容器。Podvs应用每个Pod都是应用的一个实例,有专用的IPPod Vs容器一个Pod可以有多个容器,彼此间共享网络和存储资源,每个Pod ...原创 2020-02-22 14:31:48 · 282 阅读 · 0 评论 -
Kubernetes(k8s)安装
Kubernetes快速入门环境准备# 关闭CentOS防火墙systemctl disable firewalldsystemctl stop firewalld# 安装etcd和kubernetes软件yum install -y etcd kubernetes# 启动服务systemctl start etcdsystemctl start docker如果docker启动...原创 2020-02-14 10:39:19 · 378 阅读 · 0 评论 -
Kubernetes
Kubernetes概述Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes一个核心特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望运行。以...原创 2020-02-14 10:29:34 · 264 阅读 · 0 评论 -
Swagger-UI
OpenAPI随着互联网技术的发展,现在的网站架构基本都由原来的后端道染,变成了:前端渲染、前后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。前端和后端的唯一 联系, 变成了API接口; API文档变成了前后端开发人员联系的纽带,变得越来越重要。没有API文档工具之前,大家都是手写API文档的,在什么地方书写的都有,而且API文档没有统-规范和格式,每个公司都不一样。这无疑给开发...原创 2020-02-12 17:34:12 · 435 阅读 · 0 评论 -
Docker安装与启动
安装Docker请直接挂载课程配套的Centos7.x镜像(1)yum 包更新到最新sudo yum update(2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的sudo yum install -y yum-utils device-mapper-persistent-data lvm2(3)设...原创 2020-02-11 16:23:49 · 417 阅读 · 0 评论 -
Docker
Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。容器与虚拟机比较 下面的图片比较了 Docker 和传统虚拟化方式的不同之处,可见容器是在操作系统层面上实现虚拟化,直接复用本地...原创 2020-02-11 16:12:22 · 224 阅读 · 0 评论 -
jwt + rsa
JWTJWT,全称是Json Web Token,是JSON风格轻量级的授权和身份认证规范,可实现无状态、分布式的Web应用授权。数据格式:Header: 头部,通常头部有两部分信息:○ 声明类型,这里是JWT我们会对头部进行base64编码,得到第-部分数据Payload: 载荷,就是有效数据,一般包含下面信息:○ 用户身份信息(注意,这里因为采用base64编码,可解码,因此不...原创 2020-02-10 11:22:10 · 1608 阅读 · 1 评论 -
hibernate Validator
hibernate Validator是Bean Validation的参考实现。Hibernate Validator提供了JSR 303规范中所有内置constraint (约束)的实现, 除此之外还有一些附加的constraint。在日常开发中,Hibernate Validator经常用来验证bean的字段,基于注解,方便快捷高效。常用注解如下:Constraint详细信...原创 2020-02-09 10:57:37 · 174 阅读 · 0 评论 -
Spring AMQP
service层引用<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId></dependency>配置文件 rabbitmq: host: 19...原创 2020-02-03 19:44:45 · 191 阅读 · 0 评论 -
Rest
REST(REpresentational State Transfer)是一种设计网络应用时的架构风格,以抽象的“资源(Resource)”为中心,各个模块之间通过转移(Transfer)沟通资源的"表态状态(Representational State)"来实现应用的功能,从而使网络应用得以简易性,扩展性,可靠性等。RESTful API有助于客户端和服务端的功能分离,服务器完全扮演着一个“...原创 2020-01-21 20:13:10 · 1579 阅读 · 1 评论 -
kibana和ik的安装
Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。一、安装因为Kibana依赖于node,我们的虚拟机没有安装node,而window...原创 2020-01-16 19:50:34 · 412 阅读 · 0 评论 -
Linux下使用FastDFS
本教程所有操作均在CentOS 6.x环境下进行。将课前资料中的所需文件,上传到/usr/local/leyou目录下:1.1.单节点FastDFS整个安装过程非常复杂,很容易出错,建议进行多次备份。我们这里不打算安装多台虚拟机,因此会把tracker和storage都安装在一起。1.1.1.安装gccGCC用来对C语言代码进行编译运行,使用yum命令安装:yum...原创 2019-12-19 08:30:47 · 204 阅读 · 2 评论 -
Activiti与springboot整合
pom.xml<?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=...原创 2019-12-10 21:16:59 · 438 阅读 · 2 评论 -
Activiti——编写程序
流程定义的部署 activiti表有哪些? act_re_deployment 部署信息 act_re_procdef 流程定义的一些信息 act_ge_bytearray 流程定义的bpmn文件及png文件public class ActivitiDeployment { //流程定义部署 流程制作出来后要上传到服务器 zip文件更便于...原创 2019-12-10 21:00:04 · 278 阅读 · 2 评论 -
Activiti
Activiti是一个工作流引擎,activiti 可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言(BPMN20)进行定义,业务系统按照预先定义的流程进行执行,实现了业务系统的业务流程由activiti进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。BMPBPM ( Business Process Manag...原创 2019-12-10 20:38:43 · 608 阅读 · 2 评论 -
FastDFS——简介
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。通俗来讲:传统文件系统管理的文件就存储在本机,分布式文件系统管理的文件存储在很多机器,这些机器通过网络连接,要被统一管理。无论是上传或者访问文件,都需要通过管理中心来访问。FastDFS:是由淘宝的余庆先生所开发的一个轻量级、高性能的开源分...原创 2019-12-01 19:17:16 · 337 阅读 · 2 评论 -
Nginx
NginxNginx是一个高性能的Web和反向代理服务器,它具有很多非常优越的特性:1、作为Web服务器:相比Apache, Nginx使用更少的资源,支持更多的并发连接,体现更高的效率,这点使Nginx尤其受到虚拟主机提供商的欢迎。能够支持高达50,000个并发连接的响应。2、作为负载均衡服务器: Nginx既可以在内部直接支持Rails和PHP,也可以支持作为HTTP个理服务器...原创 2019-11-24 19:55:57 · 196 阅读 · 8 评论 -
【Java】——环境变量的配置
首先找到自己安装在哪里了?然后,win+r输入cmd打开控制面板→系统,进行如下操作然后,修改path地址,加一段内容%JVAV_HOME%\bin;最后,打开cmd,直接输入java就可以运行了哦...原创 2019-05-31 17:41:58 · 158 阅读 · 5 评论 -
【Java】——内存划分
Java的内存需要划分成为5个部分【栈(Stack)】存放的都是方法中的局部变量,方法的运行一定要在栈当中运行。局部变量:方法的参数,或者是方法{}内部的变量作用域:一旦超出作用域,立刻从占内存当中消失。【堆(Heap)】凡是new出来的东西,都在堆当中。堆内存里面的东西都有一个地址值:16进制堆内存里面的数据,都有默认值。规则:整数 0 ...原创 2019-06-23 16:37:51 · 172 阅读 · 11 评论 -
【Java】——API( toString/equals/Date/DateFormat/Calendar/System/ StringBuilder)
toString//返回该对象的字符串表示。public String toString()toString 方法返回该对象的字符串表示,其实该字符串内容就是对象的类型+@+ 内存地址值。由于 toString 方法返回的结果是内存地址,而在开发中,经常需要按照对象的属 性得到相应的字符串表现形式,因此也需要重写它。public class Person { p...原创 2019-07-04 21:16:15 · 215 阅读 · 4 评论 -
【Java】——装箱与拆箱
装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)构造方法:Integer(int value)构造一个新分配的 Integer 对象,它表示指定的 int 值。Integer(String s)构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。传递的字符串,必须是基本类型的字符串,否则会抛出异常‘100’正确‘a’抛异常...原创 2019-07-12 21:05:51 · 183 阅读 · 6 评论