自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java内部类到底是什么

什么是内部类?内部类是定义在另一个类中的类,就是该类的定义定义在另一个类中。广义上将内部类分为四种:成员内部类、局部(方法)内部类、静态内部类、匿名内部类。//外部类(相对内部而言)public class Outer { //内部类 class Inner{ //code }}为什么使用内部类内部类方法可以访问该类定义所在的作用域中的数据,...

2019-06-20 11:47:19 260

原创 Thymeleaf表达式在JavaScript如何使用?

一般在html页面中可以直接使用th:设置值或属性,th:value赋值元素的value,th:text赋值元素的textth:attr可以设置元素的各种属性,这样赋值的前提是model中存在该属性 <input th:value="${user.age}" id="age"/> <select> <option value="1" th:text="男"...

2019-06-14 11:57:56 4043

原创 MyBatis的#{}占位符和${}拼接符的区别

# 对传入的参数视为字符串,会首先对sql语句进行预编译举个栗子:select * from user where id = #{id},传入id值为5那么传过来的SQL语句就是select * from user where name = ‘5’;2、将不会将传入的值进行预编译,select∗fromuserwherename=将不会将传入的值进行预编译,select * from ...

2019-06-13 22:03:03 1639

原创 jquery操作下拉框select(设置默认选中,清空选中状态)

取值问题 <select id="selector"> <option value="1">选项一</option> <option value="2">选项二</option> <option value="3">选项三</option> <option value...

2019-06-13 21:43:42 59717 2

原创 @RequestMapping与@GetMapping和@PostMapping区别

在查看项目代码的过程中,看到了有的地方使用的@RequestMapping,有的地方用的@GetMapping或@PostMapping@RequestMapping 和 @GetMapping @PostMapping 区别@GetMapping用于将HTTP get请求映射到特定处理程序的方法注解是一个组合注解,是@RequestMapping(method = RequestMe...

2019-06-11 17:25:56 14279 2

原创 超详细!intellij idea搭建SSM框架(maven+spring+spring MVC+mybatis+mysql)

SSM简介SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。SpringSpring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。Spring的核心思想...

2019-06-09 18:53:25 6490 1

原创 【深入理解JAVA虚拟机学习笔记三】栈溢出,堆溢出,直接内存溢出,内存泄漏,以及异常信息

由于在Hotspot虚拟机中中不区分虚拟机栈和本地方法栈,因此通过-Xoss修改参数是无效的,可以通过修改-Xss设定。如果线程请求的栈深度大于虚拟机允许的最大深度,将抛出StackOverflowError异常。如果虚拟机在扩展栈时无法申请到足够的内存空间,将抛出OutOfMemoryError异常。这两种异常有一些重叠的部分:当栈空间无法继续分配时,到底是内存太小,还是已经使用的栈空间过...

2019-06-07 11:59:08 1125

原创 【深入理解JAVA虚拟机学习笔记二】栈,堆,方法区三者关系

在我们访问一个对象时,JAVA虚拟机内部是通过栈上的reference数据来操作堆上的具体对象,同时方法区又存储着这个对象的类型数据即对象所属的类的信息。我们可以通过调用关系来了解堆、栈、方法区三者。JAVA虚拟机规范中只规定了一个指向对象的引用,并没有定义这个引用应该通过哪种方式去定位、去找到对象所在堆中的具体位置,所以对象的方法方法是取决于虚拟机实现而定的。现在主流的方法方式有两种:使用句...

2019-06-06 19:13:24 469 1

原创 【深入理解JAVA虚拟机学习笔记一】JAVA虚拟机运行时的数据区

程序计数器(Program Counter Register)在虚拟机的概念模型中,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理等基础功能都需要依赖这个计数器完成。如果线程正在执行一个Java方法,这个计数器记录的时正在执行的虚拟机字节码指令的地址;如果正在执行的时Native方法,这个计数器值为空(Undefined)此内存区...

2019-06-05 19:56:26 191

原创 史上最易理解的快速排序原理详解以及Arrays.sort方法

Arrays.sort()方法可以通过源码发现内部使用的是快速排序,,然后我们探索一下快速排序的原理附源码:public static void sort(int[] a) { DualPivotQuicksort.sort(a, 0, a.length - 1, null, 0, 0);} /** * Sorts the specified range of t...

2019-06-03 23:45:28 911

原创 操作系统内部的存储优化原理

计算机内部一个存储空间4KB,假设当前存储的基本数据类型是int类型,存储空间为4B。一般来说数组内部都是一个类型即数组中的一个元素占一个4KB的存储空间,但是这样计算机中一个4KB的空间一个元素只用了其中的4B,剩下的内存空间都被浪费了。操作系统希望尽可能不浪费剩余的存储空间,采用优化方法存储这些数据:根据基本元素的所占的内存空间,将这4KB分给这些元素,当一个存储单元放不下时,就存入下...

2019-06-03 23:44:04 665

原创 String、StringBuffer与StringBuilder的区别,及实现原理

源码分析String使用final关键字修饰可以知道String是不可变的类,String中字符数组的长度你定义多少,就是多少,不存在字符数组扩容一说。内部是final修饰的char[] value,表示String类不可被继承,且value只能被初始化一次。这里的value变量其实就是存储了String字符串中的所有字符。StringBuffer和StringBuilder二者的源码以及ap...

2019-06-03 23:30:58 6004 2

原创 匿名对象的性能优势分析

首先从匿名数组开始讲起一般我们对数组的命名都是如下这种,数组本身有名字为arrint [] arr =new int [10]; `匿名数组是没有对数组命名,如下new int[]{2,3,4,5,6};//这是一个匿名数组int [] [] arrs ={ new int [10], arr2, ...

2019-06-03 19:54:49 460

原创 数值类型乘除的优化位运算原理(位运算实现乘除)

我们知道计算机存储数据时只存0和1,即只有二进制,计算机不识别十进制数。所以对于计算机中的位运算相比加减乘除运算要快的多。位运算在运算中是最快的,计算同样乘、除结果,效率却是乘、除的三倍,也就是耗时是乘除的三分之一。因此,可以使用位运算来代替部分算术运算,以此提高性能。其中最典型的就是对于整数的乘、除以及模运算的优化。位运算符号: 【注意位运算符的优先级没有加减乘除高,在运算过程中有时需要加括...

2019-06-03 13:57:05 297

原创 哈夫曼压缩和矩阵压缩存储

对于数组的压缩存储,一维数组主要使用哈夫曼压缩,多维数组主要采用矩阵压缩的形式,对特殊矩阵和系数矩阵进行压缩。哈夫曼压缩哈夫曼压缩是由哈夫曼树推广而来的,是哈夫曼编码的重要应用。哈夫曼树 ─ 即最优二叉树,带权路径长度最小的二叉树,经常应用于数据压缩。“哈夫曼编码”是一种一致性编码法(又称“熵编码法”),用于数据的无损耗压缩。它是根据数据出现的次数进行排序,出现最多的的数字编码长度最短,从而...

2019-06-02 23:40:55 849

Python-Django框架开发CMS 使用本地mysql开发,可以直接运行,

针对内容管理系统(content management system,CMS)要求,通过对管理新闻发布的过程和数据分析,设计如下所示的关系模型: 1.用户(用户编号,用户名,密码,手机号,是否是管理员标识) 2.栏目(栏目编号,栏目名称) 3.文章(文章编号,文章标题,文章内容,文章作者[外键关联用户编号],发表时间,栏目编号[外键关联栏目编号]) IDE:PyCharm 2021.1.2 (Community Edition) Memory: 1774M Cores: 16 Python 3.7.6 Django 2.2.5 数据库版本: Mysql 8.0.26 数据库管理工具:navicat15 修改settings.py文件中的DATABASES部分内容即可使用,前端使用bootstrap网页模板

2022-10-09

空空如也

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

TA关注的人

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