![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java知识点
Tableau1
一名小码农路过。。
展开
-
JVM的native方法
JVM的native方法一. 什么是Native Method简单地讲,一个Native Method就是一个java调用非java代码的接口。一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C。这个特征并非java所特有,很多其它的编程语言都有这一机制,比如在C++中,你可以用extern "C"告知C++编译器去调用一个C的函数。“A nat...转载 2019-07-26 15:02:13 · 226 阅读 · 0 评论 -
springboot日志
A.日志框架1. 引入我在开发阶段通过 System.out.print("") 进行测试,上线之后把日志输出到一个日志里记录运行情况我们可以自定义一个框架,用于记录运行时的一些信息改进:将日志进行过滤功能,异步模式,自动归档…改进:新框架出来了,要改代码替换之前的框架面向接口编程日志抽象层向项目中导入不同的日志实现2. 市面上的日志框架JUL, JCL, J...转载 2019-08-05 16:46:02 · 171 阅读 · 0 评论 -
springmvc整合
一、快速搭建SpringMVC环境1、搭建思路1)、创建web项目及controller包 2)、导入坐标3)、创建spring-mvc核心配置文件 4)、配置web.xml5)、编写controller及业务方法 6)、启动服务进行测试 2、具体开发 1)、创建web项目及controller包1.1、创建项目过程此处省略… 1.2、注意事项1.2.1、项目结构如下图,注:web包在...转载 2019-08-05 16:44:05 · 140 阅读 · 0 评论 -
TreeSet两种自然比较方法
一:1.用TreeSet集合存储自定义对象,无参构造方法使用的是自然排序对元素进行排序的自然排序,2.就是让元素所属的类实现Comparable接口,重写compareTo(T o)方法3.重写方法时,一定要注意排序规则必须按照要求的主要条件和次要条件来写public class Student implements Comparable {@Override public int ...转载 2019-08-05 16:36:52 · 221 阅读 · 0 评论 -
分布式ID生成解决方案
1.2.1 UUID常见的方式。可以利用数据库也可以利用程序生成,一般来说全球唯一。优点:1)简单,代码方便。2)生成ID性能非常好,基本不会有性能问题。3)全球唯一,在遇见数据迁移,系统数据合并,或者数据库变更等情况下,可以从容应对。缺点:1)没有排序,无法保证趋势递增。2)UUID往往是使用字符串存储,查询的效率比较低。3)存储空间比较大,如果是海量数据库,就需要考虑存储量的...转载 2019-08-05 16:35:04 · 118 阅读 · 0 评论 -
Mysql相关优化建议
数据库优化总结1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库.备注、描述、评论之...转载 2019-07-26 16:08:48 · 96 阅读 · 0 评论 -
CAS的详细登录流程
上图是3个登录场景,分别为:第一次访问www.qiandu.com、第二次访问、以及登录状态下第一次访问mail.qiandu.com。下面就详细说明上图中每个数字标号做了什么,以及相关的请求内容,响应内容。2.1、第一次访问www.qiandu.com标号1:用户访问http://www.qiandu.com,经过他的第一个过滤器(cas提供,在web.xml中配置)Authenticat...转载 2019-07-26 16:03:48 · 371 阅读 · 0 评论 -
JavaScript浅克隆和深克隆
一、浅克隆浅克隆是指对象只会被克隆最外部的一层,对于更深层的对象,则依然是通过引用指向同一块堆内存区域。debug结果:二、深克隆JSON对象parse方法可以将JSON字符串反序列化成JS对象,stringify方法可以将JS对象序列化成JSON字符串,这两个方法结合起来就能产生一个便捷的深克隆。debug结果:我们可以很看到,oldObj.c.h与oldObj.c.h不相等了...转载 2019-07-26 15:35:13 · 134 阅读 · 0 评论 -
Java语言中的异常处理
Java语言中的异常处理异常的概念:java程序在编译或运行过程出现的意外情况。类型转换异常数组越界异常空指针异常算术运算异常…Throwable–Error–Exception:1.编译器异常Exception:日期类型转换异常,文件找不到异常转换异常:ParseException文件找不到异常:FileNotFoundException2.运行时异常RuntimeExc...转载 2019-07-26 15:27:33 · 143 阅读 · 0 评论 -
java线程池常见面试题
什么是线程池?线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理。如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。为什么要使用线程池?创建线程和销毁线程的花销是比较大的,这些时间有可能比处理业务的时间还要长。这样频繁的创建线程和销毁线程,再加上业务工作线...转载 2019-08-05 16:54:10 · 1010 阅读 · 0 评论