backend
文章平均质量分 64
后端基础
docuxu
docuxu
展开
-
PG数据库查询字段备注信息
在 PostgreSQL 数据库中,要查询某个表的字段名(即列名)及其备注信息,可以使用视图来获取列名,并结合和pg_class等系统表来获取列的备注信息。下面是一个示例 SQL 查询,假设我们要查询名为your_table。原创 2024-09-26 11:29:56 · 497 阅读 · 0 评论 -
PG数据库获取表主键信息
替换为你要查询的表名,如果表位于特定的模式(schema)下,还需要将。的模式,该模式包含了许多关于数据库元数据的信息。这将显示表的列信息、索引、约束等详细信息,其中包括主键信息。如果你使用的是 psql 命令行工具,可以直接使用。PostgreSQL 还提供了一些系统表,如。,这些表可以用来查询更底层的元数据信息。PostgreSQL 提供了一个名为。命令来查看表的结构,包括主键信息。替换为你要查询的表名。替换为相应的模式名。原创 2024-09-26 11:20:08 · 595 阅读 · 0 评论 -
mysql创建数据库和表
要使用MySQL创建一个数据库以及在该数据库中创建一个表按照以下步骤操作。原创 2024-09-14 14:45:20 · 495 阅读 · 0 评论 -
如何保证消息不重复消费
在使用消息队列(Message Queue, MQ)时,确保消息不被重复消费是非常重要的,因为重复消费可能导致数据不一致或者业务逻辑出错。原创 2024-09-14 14:36:25 · 759 阅读 · 0 评论 -
如何实现分库分表
实现分库分表需要根据具体的应用场景和技术栈来设计解决方案。原创 2024-09-14 14:33:06 · 434 阅读 · 0 评论 -
读取大文件
当你需要使用 Java 读取一个非常大的文件(例如 5TB)并且系统内存只有 4GB 时,直接将整个文件加载到内存中是不可能的。需要采取一种分块读取的方式来处理这个大文件。原创 2024-09-13 14:30:27 · 471 阅读 · 0 评论 -
优化慢sql
当查询涉及复杂的条件判断且没有合适的索引时,可以通过添加索引来加速查询速度。:索引覆盖是指查询所需的所有数据都可以从索引树中获取,而无需访问实际的表数据。:JOIN操作可能会导致大量的数据扫描,尤其是在没有合适索引的情况下。:减少SELECT语句中返回的列数量可以减少数据传输量,提高性能。:当不需要所有结果时,使用LIMIT可以显著减少返回的数据量。:子查询可能导致多次查询,可以考虑将子查询替换为JOIN。:调整MySQL配置参数以适应特定的工作负载。:对于大型表,可以使用分区来提高查询效率。原创 2024-08-28 23:31:39 · 514 阅读 · 0 评论 -
微服务架构
微服务架构是一种将单个应用程序开发为一组小型、独立的服务的方法,每个服务运行在其自己的进程中并使用轻量级机制(通常是HTTP资源API)进行通信。微服务架构强调的是服务之间的解耦,以便能够独立地部署、扩展和维护这些服务。原创 2024-08-27 10:28:53 · 463 阅读 · 0 评论 -
maven依赖问题
maven依赖问题原创 2022-04-18 17:11:29 · 435 阅读 · 0 评论 -
Java反射与动态代理
java的反射机制:在运行状态中,对于任意一个类,都能知道这个类的所有属性和方法,对于任意一个对象,都能调用它的任意一个方法和属性,这种动态获取信息,以及动态调用对象的方法的功能称为java语言的反射机制。什么是类:具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类实际上就是一种数据类型。类是对象的模版,对象是类的实例...原创 2020-03-02 16:51:01 · 139 阅读 · 0 评论 -
maven相关
maven证书问题http://www.goldzl.cn/thread-3510-1-1.htmlhttp://magicmonster.com/kb/prg/java/ssl/pkix_path_building_failed.htmlmaven3版本下载https://archive.apache.org/dist/maven/maven-3/maven setting....原创 2020-02-26 09:17:18 · 160 阅读 · 0 评论 -
logback总结
一、介绍Logback,一个“可靠、通用、快速而又灵活的Java日志框架”分为以下几个模块:logback-classic:log4j的一个改良版本,同时它完整提供了slf4j API是我们可以很方便地更换成其他日志系统如log4jlogback-access:访问模块与Servlet容器集成提供通过HTTP来访问日志的功能logback-core:其他两个模块的基础模块二...原创 2019-10-10 11:04:37 · 263 阅读 · 0 评论 -
log4j与slf4j的区别
log4j : 即 log for java;Java的日志4英文名 four 与for同音slf4j : simple log facade for java :简单日志门面区别:log4j是真正实现日志功能的产品,像这样的产品有很多slf4j 是一个适配器,我们通过调用slf4j的日志方法统一打印我们的日志,而可以忽略其他日志的具体方法,这样,当我们的系统换了一个日志源后,不需要更...原创 2019-10-10 10:42:58 · 143 阅读 · 0 评论 -
如何优化java代码
记录学习用https://blog.csdn.net/csdnnews/article/details/100987866原创 2019-10-07 10:50:39 · 131 阅读 · 0 评论 -
java 集合类(collection(list set) map)学习总结
1:集合 Collection(单列集合) List(有序,可重复) ArrayList 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 Vector 底层数据结构是数组,查询快,增删慢 线程转载 2017-11-13 17:44:53 · 288 阅读 · 0 评论 -
单例模式理解与总结
为什么使用单例模式需要确保某个类只要一个对象,或创建一个类需要消耗的资源过多,如访问IO和数据库操作等,这时就需要考虑使用单例模式了。使用单例模式需要注意的关键点将构造函数访问修饰符设置为private通过一个静态方法或者枚举返回单例类对象确保单例类的对象有且只有一个,特别是在多线程环境下确保单例类对象在反序列化时不会重新构建对象单例模式的几种写法1. 饿汉式/** *原创 2017-10-27 11:09:04 · 230 阅读 · 0 评论 -
数组的四种复制方法
java数组拷贝主要有四种方法,分别是循环赋值,System.arraycopy(),Arrays.copyOf()(或者Arrays.copyOfRange)和clone()方法。下面分别介绍一下这几种拷贝。循环拷贝(速度相对比较慢)循环拷贝其实没什么好说的啦,就是用一个for循环进行元素的逐个拷贝,进行深拷贝或者浅复制这个大家可以自己把握。System.arraycopy(浅拷贝)转载 2017-10-26 09:26:14 · 6086 阅读 · 0 评论 -
java直接输出对象默认调用toString()
1、System.out.println(center.toString())这句对应的源码:public void println(String x) { synchronized (this) { print(x); // 打印x newLine(); // 换行 }}这能看懂吧,直接输出了传进来的参数x(center.toString())2转载 2017-10-15 20:11:45 · 5525 阅读 · 0 评论 -
java异常解析以及自定义异常实例
异常:(Exception) JAVA异常是在java程序运行的时候遇到非正常的情况而创建的对象,它封装了异常信息,java异常的根类为java.lang.Throwable,整个类有两个直接子类java.lang.Error和java.lang.Exception.Error是程序本身无法恢复的严重错误.Exception则表示可以被程序捕获并处理的异常错误.JVM用方法调用栈来跟踪每原创 2017-10-14 11:16:09 · 3806 阅读 · 0 评论 -
java程序运行顺序(main方法 静态 非静态 以及衍生出的部分定义)
Java程序运行时,第一件事情就是试图访问main方法,因为main相等于程序的入口,如果没有main方法,程序将无法启动,main方法更是占一个独立的线程。下面是一段代码 帮助我们分析class A { public A() { System.out.println("A的构造方法"); } public static int j = print()转载 2017-09-28 16:02:20 · 504 阅读 · 0 评论 -
java 中文编码问题
java常规编码问题package com.boco;import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;public class UnicodeCase { public static vo原创 2017-07-31 15:27:55 · 616 阅读 · 0 评论 -
java String类 StringBuilder和StringBuffer类的区别
String、StringBuffer、StringBuilder是java编程中经常使用的字符串类,我们在初学的时候,都会对Java的内存分配及使用有更深的了解。特别在面试中也会经常会被问到这样的问题。所以在此总结一下:底层代码解析 String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。原创 2017-07-21 15:07:09 · 289 阅读 · 0 评论 -
java内存管理
java的局部变量和方法参数在栈中分配,大小按照变量的类型来分配 。对象在堆中分配,按照类中声明的属性来分配空间。栈是一块java使用的内存区域,使用方式LIFO(后来居上),堆也是一块java内存使用的区间,使用方式:随机分配。局部变量和堆对象空间的分配。变量分为:基本类型和引用类型。基本类型变量的空间大小,就是基本类型的空间大小,值就是基本类型的值。引用变量的值是一原创 2017-07-14 10:19:51 · 176 阅读 · 0 评论 -
java main方法参数传递
一般情况下 我们的main方法是不需要参数传入的 但是如果在工作中需要我们写一些小的应用程序 并且以jar包的方式发给其他人员直接在dos界面使用并且需要输入参数的时候就需要用到main的参数传递首先main方法中传递的参数是String数组 我们直接打印这个数组是没有值得空数组所以可以编辑其下的代码package com;public class TestMain {原创 2017-06-22 14:35:01 · 25585 阅读 · 0 评论 -
跨域问题
为什么会跨域,要先了解浏览器的同源策略SOP(Same Orign Policy)https://segmentfault.com/a/1190000015597029同源: 如果两个页面的协议,端口(如果有指定)和主机都相同,则两个页面具有相同的源。 协议/主机/端口跨源网络访问 同源策略控制了不同源之间的交互,例如在使用XMLHttpRequest时会受到同源策略...原创 2020-02-26 10:11:22 · 124 阅读 · 0 评论 -
web缓存
目录简述服务器端缓存CDN缓存未使用CDN使用CDNCDN缓存判断文件是否需要更新的机制CDN缓存刷新前端缓存http缓存http请求缓存过程http缓存分类简述Web 缓存大致可以分为:数据库缓存、服务器端缓存(代理服务器缓存、CDN 缓存)、前端缓存(浏览器缓存(indexDB、cookie、localstorage 等等)、HTTP缓存)...原创 2019-10-16 20:22:44 · 223 阅读 · 0 评论 -
参数签名实例(md5实现 数据完整性)
在前端用js定义md5函数对值做哈希,如此用户提交表单后,在网络中路由间传递的便是简单加密后的信息,而非明文信息,等表单提交到后台后,可用md5再次对其进行加密,再行存储。亦或者防止有人截取报文修改客户端提交过来的参数进行越权查看,我们可以对参数进行md5加密进行处理,与请求参数一起传递到服务器,服务器对接收到的参数进行md5加密 然后比较加密后的值 与传递过来的值如果不同肯定被修改。原创 2017-12-15 16:55:25 · 3754 阅读 · 0 评论 -
深入理解哈希表
深入理解哈希表 有两个字典,分别存有 100 条数据和 10000 条数据,如果用一个不存在的 key 去查找数据,在哪个字典中速度更快?有些计算机常识的读者都会立刻回答: “一样快,底层都用了哈希表,查找的时间复杂度为 O(1)”。然而实际情况真的是这样么?答案是否定的,存在少部分情况两者速度不一致,本文首先对哈希表做一个简短的总结,然后思考 Java 和 Redis 中转载 2017-11-14 18:36:22 · 391 阅读 · 0 评论 -
关于上传压缩文件解析
项目中我们会上传文件直接解析进行数据的传递和存储 一般的文件我们都可以使用读写操作 像excel之类解析也有总结(excel解析http://blog.csdn.net/docuxu/article/details/78326330)下面总结一下上传压缩文件 然后对文件的处理项目实例以Struts2上传文件解析为例(zip解压缩 里面为excel文件 然后解析) 关于模板生成下载的问题大家原创 2017-10-24 14:17:59 · 1004 阅读 · 0 评论 -
excel文件解析生成实例
在实际的项目过程中获取数据的路径很多 可以通过用户输入 扫描器等等方式 今天要总结的是通过上传excel文件 然后解析文件来进行数据录入或者生成模板以及将数据以excel文件的方式导出。我们要使用到第三方jar 我这里以前上传了poi的jar包(http://download.csdn.net/download/docuxu/9896366)今天网站资源出问题了 不能上传资源所以jx原创 2017-10-24 09:57:55 · 484 阅读 · 0 评论 -
Springboot相关
SpringBoot-IDEA搭建https://blog.csdn.net/ch_csdn_ch/article/details/102951207?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-taskSpringBoot-引入日志功能ht...原创 2020-02-26 08:59:35 · 304 阅读 · 0 评论 -
时间注解
1、DateTimeFormat:入参格式化 用法:用在类型为Date的字段上,用来接收String类型的字符串,将其转成Date类型 import org.springframework.format.annotation.DateTimeFormat; @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") pattern值表...原创 2019-09-30 16:54:23 · 1549 阅读 · 0 评论 -
Spring的@Value获取不到值
一、问题背景这两天做东西的时候发现一个问题,在SpringMVC中使用@Value的时候,无法获取@Value对应的值。在网上查阅了各种资料之后,总结一下。二、@Value注解的作用。 为了减小耦合度,通常,将一些固定的常量放在配置文件***.properties中。 properties内容定义形式:名称=值SAY...原创 2018-08-07 09:36:04 · 1339 阅读 · 0 评论 -
Spring学习教程-IOC
Spring IOC IOC全称是Inversion Of Control,被译为控制反转 IOC是指程序中对象的获取方式发生反转,由最初的new方式创建,转变为由第三方框架创建,注入(DI)它降低了对象之间的耦合度 Spring容器是采用DI方式实现了IOC控制,IOC是Spring框架的基础和核心 DI全称是Dependency Inject原创 2017-10-12 09:18:04 · 201 阅读 · 0 评论 -
Spring学习教程-基础
1.Spring简介 Spring是一个开源的轻量级的应用开发框架,其目的是用于简化企业级应用程序开发,降低侵入性 Spring提供的IOC和AOP功能,可以将组件的耦合度降至最低,即解耦,便于系统的维护和升级 Spring为系统提供了一个整体的解决方案,开发者可以利用它本身提供的功能也可以与第三方框架和技术整合应用,可以自由选择 为什么要用Sp原创 2017-10-12 08:40:57 · 258 阅读 · 0 评论 -
Servlet过滤器和监听器
1.过滤器servlet规范中定义的一个特殊的类,可以对servlet的请求进行拦截并处理。2如何拥有一个过滤器 step1.写一个类实现Filter接口 step2.重写doFulter方法 step3.配置(web.xml)过滤器3过滤器的优先级 即如果请求路径经过多个过滤器,执行的顺序由的顺序决定4配置初始化参数commentFilterweb转载 2017-10-23 17:11:19 · 291 阅读 · 0 评论 -
jsp四大作用域以及拦截器和过滤器分析
jsp中四个作用域的区别 application 在所有应用程序中有效 session 在当前会话中有效 request 在当前请求中有效 page 在当前页面有效首先要声明一点,所谓"作用域"就是"信息共享的范围",也就是说一个信息能够在多大的范围内有效。 Web交互的最基本单位为HTTP请求。每个用户从进入网站到离开网站这段过程称为一个转载 2017-10-23 17:06:00 · 917 阅读 · 0 评论 -
Servlet基础
概念:Servlet(Server Applet)是Java Servlet的简称,是为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器原创 2017-07-24 17:09:44 · 312 阅读 · 0 评论