![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
文章平均质量分 62
全栈学习之后端部分
残·影
大多数内容都是看视频做的笔记,侵删
展开
-
百度三面原创算法,求资源分配最有效的组合(回溯)
题目现有资源总量为p,一个数组表示每个任务所需要的资源量。请输出在优先保证资源分配的最多的情况下任务量最大。例子:p=20arr=[2,8,3,1,9]输出:2 8 1 9解释:2+8+1+9=20,资源可以全部分配例子:p=28arr=[2,8,3,1,4,9]输出2,8,3,1,4,9解释:没有相加可以等于28的组合, 最接近的是所有的和=28思路思路就是利用回溯法找所有相加组合中最接近p的组合,如果能等于p那么就取数量最多的那个组合如果有更有效的思路欢迎指正代码原创 2021-11-21 13:46:39 · 520 阅读 · 0 评论 -
java基础复习 day-1
基本类型整形byteJava中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0short短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0int整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0long长整型,在内存中占64位,即8个字节-263~263-1,默认值0L浮点型float浮点型,在内存中占32位,即4个字节,用于存储带小数转载 2021-02-19 19:43:29 · 316 阅读 · 0 评论 -
SpringBoot + mybatis-plus搭建过程
一、创建项目1.File->new->project;2.选择“Spring Initializr”,点击next;(jdk1.8默认即可)3.完善项目信息组名可不做修改,项目名可做修改;最终建的项目名为:test,src->main->java下包名会是:com->example->test;点击next;4.Web下勾选Spring Web Start,(网上创建springboot项目多是勾选Web选项,而较高版本的Springboot没有此选项,原创 2020-10-01 12:34:06 · 4993 阅读 · 0 评论 -
HashMap的遍历
for(Map.Entry<String, String> entry: map1.entrySet()){ System.out.println("Key: "+ entry.getKey()+ " Value: "+entry.getValue()); }原创 2020-07-29 08:59:08 · 8882 阅读 · 0 评论 -
Controller上传图片,数据库存路径(解决了每次重启项目图片丢失问题)(JAVA)
写在前面本例子是从前台拿到图片和其他信息之后把图片用java通过流的方式存到项目的某个目录下,然后把路径存到数据库里,如果用base64的形式来存图片的话数据量比较大,不好读取。故采用这种方法。代码代码解析:1. AjaxResult 是一个与ajax对接的实体类,Region 是要存到数据库的实体类2. String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();这一句代码是获取到了target目录的根目原创 2020-07-28 15:03:02 · 9322 阅读 · 0 评论 -
腾讯云短信接口实现(亲测可用,不能用来捶我)
写在最前本文部分内容思路来源于博客:跳转连接准备工作首先要注册腾讯云账号注册完成之后在云产品搜索密钥,点进去默认应该是没有密钥的,新建一个新建之后SecretId和SecretKey之后会用到然后进入短信,创建签名创建根据要求填写相关信息签名审核完成之后创建模板8.审核完成之后前期准备工作就完成了项目导入依赖 <dependency> <groupId>com.tencentcloudapi</groupId>转载 2020-07-25 18:05:06 · 13349 阅读 · 5 评论 -
异常与日志
一、异常注意事项简单整理了下关于异常的规范: 在异常处理模块中应提供精确、易读的错误原因信息。 不要处理能够避免的异常。 一个方法不应该抛出太多类型的异常,最好不超过三个。 不要在try以及finally字段内部使用return语句。 数据库、io操作等涉及资源池泄漏的操作一定要在finally中来释放资源。 将try/catch区段置于循环之外。 不要将异常用于程序流程控制,异常处理效率低于条件分支,且跳转流程难以预测。 在程序中使用异常处理转载 2020-05-16 07:23:41 · 10803 阅读 · 0 评论 -
代理机制
静态代理和动态代理Java动态代理的优势是实现无侵入式的代码扩展,也就是方法的增强;让你可以在不用修改源码的情况下,增强一些方法;在方法的前后你可以做你任何想做的事情(甚至不去执行这个方法就可以)。1.动态代理是设计模式中的代理模式:定义:为其它对象提供一种代理以控制对这个对象的访问控制;在某些情况下,客户不想或者不能直接引用另一个对象,这时候代理对象可以在客户端和目标对象之间起到中介的作用。2.静态代理静态代理类:由程序员创建或者由第三方工具生成,再进行编译;在程序运行之前,代理类的.class原创 2020-05-15 18:52:48 · 11123 阅读 · 0 评论 -
内部类
内部类定义内部类: 所谓内部类就是在一个类内部进行其他类结构的嵌套操作。内部类的优缺点优点内部类与外部类可以方便的访问彼此的私有域(包括私有方法、私有属性)。内部类是另外一种封装,对外部的其他类隐藏。内部类可以实现java的单继承局限。缺点结构复杂内部类是否有用、 必要和安全当在Java1.1的Java语言中增加内部类时,很多程序员都认为这是–项很主要的新特性,但这却违背了Java要比C++更加简单的设计理念。内部类的语法很复杂(可以看到,稍后介绍的匿名内部类更加复杂)。它与访问原创 2020-05-15 18:12:51 · 10711 阅读 · 0 评论 -
二叉树的深度优先遍历和广度构建以及广度优先遍历
深度优先遍历二叉树的深度优先遍历不管是先序中序还是后序都是很简单的,递归遍历即可,放上代码public static void treeShow(Node tree){ System.out.println(tree.value); if (tree.right != null){ treeShow(tree.right); } if (tree.left != null){ treeShow(tree.left); }}广度原创 2020-05-14 19:41:41 · 10787 阅读 · 0 评论 -
JAVA接口机制
接口描述类具有什么功能,不必给出具体的实现关键字是interface一个类可以实现一个或者多个接口java支持多继承吗,答案是否定的 java不支持多继承接口中所有的方法自动的属于public接口的特性接口不是类,不能实例化,抽象类也不能实例化可以声明接口类型的变量抽象类也能声明抽象类型的变量这个变量必须引用实现了这个接口的对象抽象类变量必须引用继承了这个抽象类的对象接口和抽象类的区别抽象类接口关键字abstract cla原创 2020-05-14 19:17:18 · 10763 阅读 · 0 评论 -
内存详解
内存jvm内存分为方法区,计数器,本地方法栈,栈内存,堆内存栈:无论是什么类型,只要压入了栈里面,基本类型都是栈类型计数器 为了让每个线程正常工作就提出了程序计数器(Programe Counter Register),每个线程都有自己的程序计数器这样当线程执行切换的时候就可以在上次执行的基础上继续执行,仅仅从一条线程线性执行的角度而言,代码是一条一条的往下执行的,这个时候就是程序计数器;JVM就是通过读取程序计数器的值来决定下一条需要执行的字节码指令,进而进行选择语句、循环、异常处理等;原创 2020-05-12 11:29:54 · 10747 阅读 · 0 评论 -
反射详解
反射什么是反射:Class类获得class类对象的三种方式Student.class 类名.classStudent stu = new Student();stu.getClass(); 对象.getClass();Class.forName(“com.qcby.entity.Student”); 字符串是一个全限定名 包名.类名的形式创建对象//等价的Student student = Student.class.newInstance();Student stud原创 2020-05-11 19:42:21 · 11102 阅读 · 0 评论 -
哈夫曼树(最优二叉树)与哈夫曼编码(有JAVA详细代码以及解析)
过程首先找到每一个字母出现的次数作为该字母的权重,然后每一次找权重最小的两个构建哈夫曼树,构建好了之后按照左0右1的原则给字符串进行编码,由此编码可以读出该字符串构建哈夫曼树引用博客:https://blog.csdn.net/HZPHYT/article/details/82558270?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158919160619726869001889%2522%252C%2522scm%2522%25原创 2020-05-11 18:08:05 · 11667 阅读 · 0 评论 -
java加载顺序示例:大乱斗
package com.qcby.classTest;public class InitializeDemo { private static int k = 1; private static InitializeDemo t1 = new InitializeDemo("t1"); private static InitializeDemo t2 = new InitializeDemo("t2"); private static int i = print("i")原创 2020-05-10 15:09:33 · 10650 阅读 · 0 评论 -
JAVA学习之集合
集合数组ListArrayList初始容量是10扩容方式在整数范围内原有容量*1.5倍LinkedListArrayList底层是一个数组 可以随机访问->通过下表访问(list.get(20))LinkedList 是一个链表 不能做随机访问,对比数组一旦确定后 容量就不能改变了ArraList 可一进行自动扩容数组使用的空间要小 ArrayList使用的空间要大一些数组可以是基本类型的 List都要是包装类型-》都要是对象的//一旦确定之后长度就原创 2020-05-10 15:04:19 · 10576 阅读 · 0 评论 -
JAVA的动态绑定
JAVA动态绑定的调用过程(1)编译器查看对象的声明类型与方法名字。并会一一列举该类的所有的该名字的方法(2) 编译器查看参数的类型,在找出来的方法中匹配参数的类型与个数都相同的,该过程称为重载解析(3)1》如果是 private、static、final 方法,编译器可以准确的知道应该调用哪个方法,该过程称为静态绑定2》 如果不是上述方法,则会采用动态绑定调用方法,虚拟机会调用与该对象的实际类型最合适的该类的方法,若其实际类型是B类,B类是A类的子类,则虚拟机会先去B类中找对应的方法,如原创 2020-05-08 18:36:24 · 10612 阅读 · 0 评论 -
全栈学习之后端基础 java的值传递
重点java中是没有指针的,java中只存在值传递, 然而我们经常看到对于对象(数组,类,接口)的传递似乎有点像引用传递,可以改变对象中某个属性的值。但是不要被这个假象所蒙蔽,实际上这个传入函数的值是对象引用的拷贝,即传递的是引用的地址值,所以还是按值传递。代码示例:public class Test { public static void main(String[] args)...原创 2020-05-08 07:07:35 · 10665 阅读 · 0 评论 -
全栈学习之后端基础 String类
笔记转载一个博客原文地址原文地址代码示例method1代表几个小题1、从abcdefg中获取1-4位字符串2、检查abcdefg中没有bcd3、将形如a,b,c,e,最后一个,去掉4、替换abcedfgaaa中ab替换成bcd剩下三个方法代表三个大题1、给定一个由数字组成的字符串,如:“1239586838923173478943890234092”,统计出每个数字出现的次数2...原创 2020-05-08 06:28:42 · 10776 阅读 · 0 评论 -
培训Day 2 --java基本数据类型复习和栈的基本操作
java基本数据类型复习1.byte 8 范围是-128--127,中间还有一个0.2.short 16 范围是-2^15-----2^15-1 最大大约是3万多3.int 32 范围是-2^31-----2^31-1 最大大约是20多亿所以不能超过9位数。4.long 64 范围是-2^63-----2^63-15.float 32 最小正数 1*2^(-126)...原创 2020-03-27 19:08:34 · 211 阅读 · 0 评论 -
Day1----java基础以及内存
基础内容介绍脚本语言:高级语言(操作系统不能直接识别),操作系统自带其翻译工具,不用安装其他软件就能运行。Windows系统:VB,ASP. linux:shell。浏览器中的JavaScript非脚本语言:操作系统不自带其翻译工具,需要安装其环境与软件才能运行。主流语言:JAVAC#/.net:C:性能最好,速度最快,但是编写很慢。C++GOPHPpythonjavasc...原创 2020-03-26 19:19:52 · 223 阅读 · 0 评论