- 博客(127)
- 收藏
- 关注
原创 常用oracle语句
1.查询(分页,模糊)selecel * from (select rownum no,workflowname, planedate from batchinfo where querydate=#{querydate}) where<if test=“workflowname!=”" and workfloename !=null">workflowname like “%” || #{workflowname} || “%”and no between #{start} and
2020-08-23 13:16:53
238
转载 提高页面加载速度优化
提高页面加载速度,优化方法:1、使用免费 cdn 加载第三方资源2、合并压缩js,css,减少请求次数以及减少流量的消耗3、代码优化:HTML头部的JavaScript和写在HTML标签中的Style会阻塞页面的渲染,因此CSS放在页面头部并使用Link方式引入,JavaScript的引入放在页面尾其次:按需加载,把统计、分享等 js 在页面 onload 后再进行加载,可以提高访问速...
2019-10-10 17:28:24
256
原创 反射
1.什么是反射?反射允许程序在运行时进行自我检查,同时也允许对其内部的成员进行操作。反射机制的功能:(1)得到一个对象所属的类instanceof ;(2)得到一个类中所有的成员变量和成员方法。(3)在运行时创建对象 。(3)在运行期间调用对象的方法。2.在什么框架中用到了反射?在spring中...
2019-09-13 16:50:39
197
转载 NullPointerException异常
1.NullPointerException异常出现的原因?空指针就是空引用,java空指针异常就是引用本身为空,却调用了方法,这个时候就会出现空指针异常。报空指针异常的原因有以下几种:1字符串变量未初始化;2接口类型的对象没有用具体的类初始化,比如:List it;会报错List it = new ArrayList();则不会报错了3当一个对象的值为空时,你没有判断为空的情况。你...
2019-09-13 16:29:17
41860
转载 内存溢出
1.导致OutOfMemoryError异常的常见原因?导致OutOfMemoryError异常的常见原因有以下几种:(1)内存中加载的数据量过于庞大,如一次从数据库取出过多数据;(2)集合类中有对对象的引用,使用完后未清空,使得JVM不能回收;(3)代码中存在死循环或循环产生过多重复的对象实体;(4)使用的第三方软件中的BUG;(5)启动参数内存值设定的过小;此错误常见的错误提示:...
2019-09-10 18:34:30
259
原创 购物车细节
1.怎么实现购物车?将未登录用户的加购产品存储到localstore中,将已登录用户的加购产品存储到redis中。写一个购物车类Cart,属性为加入购物车之后要显示的参数,判断如果要加入购物车的产品在购物车不存在,则加入购物车,如果该产品在购物车已存在,则产品数量加1.2.redis和localstore有什么区别?为什么要将未登录时加购的产品存入localstore,将登录时的加购产品存入...
2019-09-06 14:32:09
422
1
原创 mysql面试总结
1.char和varchar类型的区别?char(n)固定长度类型,比如存储“abc”,占用10个字节,其中7个字节是空的,char类型效率较高但是较占用内存。适用场景:存储密码的MD5值,固定长度,非常合适。varchar(n)可变长度类型,存储的值是每个值占用的字节再加上一个字节用来存储字节的长度。varchar占用的空间小但是效率比char的低。2.float和double的区别?f...
2019-09-01 17:34:08
181
原创 mybatis面试总结
1.mybatis中有几种分页方式?(1)数组分页查询出全部数据,然后再list中截取需要的部分。接口List<Student> queryStudentsByArray(int currPage, int pageSize);实现接口 @Override public List<Student> queryStudentsByArray(int cur...
2019-09-01 10:25:00
131
原创 前后端分离
1.如何实现前后端分离的?使用了ajax和cors2.跨域问题?跨域问题是浏览器对ajax请求的的一种限制,一个页面发起ajax请求,只能是同域名,可有效阻止攻击。3.解决跨域?jsonp,cors,nginx本项目中使用了cors:CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。它允许浏览器向跨源(协议 + 域名 + ...
2019-08-29 10:59:02
102
原创 反射
1.什么是反射?反射主要是指程序在运行时可以访问,修改和检查它本身状态或行为的一种能力。反射主要提供的功能有:(1)得到一个对象所属的类(2)得到一个类的成员变量和成员方法(3)在运行时创建一个对象(4)在运行时得到一个对象的方法2.动态代理是什么?有哪些应用?动态代理指的是在不改变源代码的情况下,增强该类的功能。动态代理的应用:(1)spring的aop(2)加事务(3)...
2019-08-28 11:02:02
127
原创 面试
https://mp.weixin.qq.com/s?__biz=MzU3NDg0MTY0NQ==&mid=2247483694&idx=1&sn=38991b395f75b060908c3f865e4c755a&chksm=fd2d776cca5afe7a762e924495ccfa1d1ae26a5ba295569bd2cbb6cbb73cb8a397b4736...
2019-08-27 10:07:28
146
原创 多态
什么是多态?多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修...
2019-08-23 20:44:57
113
原创 tcp的三次握手和四次挥手
https://mp.weixin.qq.com/s/C7YcqWSKYJUyONAMxRLHRgTCP的三次握手过程?为什么会采用三次握手,若采用二次握手可以吗?答:建立连接的过程是利用客户服务器模式,假设主机A为客户端,主机B为服务器端。(1)TCP的三次握手过程:主机A向B发送连接请求;主机B对收到的主机A的报文段进行确认;主机A再次对主机B的确认进行确认。(2)采用三次握手是为了防...
2019-08-22 11:33:12
102
原创 计算机网络
1.OSI,TCP/IP,五层协议的体系结构,以及各层协议?答:OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。每一层的协议如下:物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)数据链路:PPP、FR、...
2019-08-22 11:20:57
224
原创 Priority Queue
1.Priority Queue优先队列?PriorityQueue是一个基于优先级堆的无界队列,它的元素是按照自然顺序(natural order)排序的。在创建的时候,我们可以给它提供一个负责给元素排序的比较器。PriorityQueue不允许null值,因为他们没有自然顺序,或者说他们没有任何的相关联的比较器。最后,PriorityQueue不是线程安全的,入队和出队的时间复杂度是O(lo...
2019-08-21 20:19:56
258
原创 线程总结
线程什么是线程线程是指程序在执行过程中,能够执行程序代码的一个执行单元。线程和进程的区别是什么进程是指一段正在执行的程序。线程又叫做轻量级进程。一个进程可以拥有多个线程,各个线程之间共享程序的内存空间(代码段、数据段和堆空间)及一些进程级的资源,但是各个线程拥有自己的栈空间。每个进程中通常都有多个线程互不影响的并发执行。线程与进程的区别归纳:a. 地址空间和其它资源:进程间相互独立,...
2019-08-15 12:01:36
182
原创 数据库之日志记录
日志一般分成Undo与Redo:Undo一般用于事务的取消与回滚,记录的是数据被修改前的值,Redo一般用于恢复已确认但未写入数据库的数据,记录的是数据修改后的值,例如:数据库忽然断电重启,数据库启动时一般要做一致性检查,会把已写到Redo的数据但未写入数据库的数据重做一遍。MySQL的binlog日志作用是用来记录mysql内部增删改等对mysql数据库有更新的内容的记录(对数据库的改动),对...
2019-08-14 17:29:23
3768
原创 MySQL的存储引擎
1.什么是存储引擎?MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。例如,如果你在研究大量的临时数据,你也许需要使用内存MySQL存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支...
2019-08-14 10:15:05
105
原创 数据库之索引
1.B树,B+树(1)B树B树也称B-树,它是一颗多路平衡查找树。我们描述一颗B树时需要指定它的阶数,阶数表示了一个结点最多有多少个孩子结点,一般用字母m表示阶数。当m取2时,就是我们常见的二叉搜索树。一颗m阶的B树定义如下:1)每个结点最多有m-1个关键字。2)根结点最少可以只有1个关键字。3)非根结点至少有Math.ceil(m/2)-1个关键字。4)每个结点中的关键字都按照从小...
2019-08-13 18:25:13
176
原创 面试热点--面向对象的原则(条件)
面向对象六达原则:(1)单一职责原则(SRP,Single Responsibility Principle)规定一个类应该只有一个发生变化的原因。核心目的:解耦和增强内聚性;单一职责原则的好处如下:1.可以降低类的复杂度,一个类只负责一项职责,这样逻辑也简单很多2.提高类的可读性,和系统的维护性,因为不会有其他奇怪的方法来干扰我们理解这个类的含义3.当发生变化的时候,能将变化的影响...
2019-08-13 16:32:10
193
原创 找出字符串中不重复的最大长度的子串长度
public class MainString { public static String lengthOfLongestSubstring(String s) { int n = s.length(); Set<Character> set = new HashSet<>();//set集合元素无序,不重复 for...
2019-08-13 15:00:22
667
原创 找出数组中的第k大数
思路:先对数组进行排序,然后找出排序后数组中的第k个数。public class KMin { public static void MaoPaoSort(int[] arr){ for(int i=0;i<arr.length-1;i++){ for(int j=0;j<arr.length-1-i;j++){ ...
2019-08-13 10:58:09
373
原创 classLoader
1.classLoader的关系模型?java提供了三种类加载器:(1)Bootstrap Loader :负责加载系统类 (jre/lib/rt.jar)(2)ExtClassLoader:负责加载扩展类 (jar/lib/ext/*.jar)(3)AppClassLoader负责加载应用类 (classpath指定的目录或jar中的类)它们是通过委托的方式实现协调的...
2019-08-12 20:47:14
97
原创 ConcurrentHashMap
ConcurrentHashMap:jdk1.5引入1.在线程A对HashMap进行迭代查询的时候,线程B对HashMap进行修改,会发生什么?会发生ConcurrentModificationException,因为在调用容器的itrerator()方法时,会将容器中包含的对象的数量赋值给exceptedModCount,在调用next()方法时,会比较exceptedModCount中的对...
2019-08-12 20:11:31
234
原创 SpringMVC
1.springMVC分工明确2.springmvch和struts2的区别springmvc基于组件方式的执行流程@RequestMapping的作用用于建立请求url和处理请求方法之间的对应关系。SpringMVC常用注解:...
2019-08-09 20:30:54
198
原创 mybatis
案例设计模式分析mybatis执行原理mybatis的底层原理:(1)使用dom4j解析器解析xml文件,根据解析出的配置文件信息,创建connection对象,获得prepareStatement对象,执行解析获得的sql语句。根据解析的结果集全限定类名,利用反射class.forname().newInstatce()创建结果集对象,遍历结果集,利用反射的方...
2019-08-08 18:54:30
161
原创 Maven
1.maven概念2.maven的依赖管理3.maven的一键构建4.maven仓库的种类和关系5.mave目录结构5.maven常用命令mvn compile:编译src/main下的文件mvn clean:删除编译信息(删除target目录)mvn test:编译src/main和src/test下的文件mvn package:编译src/main和src/tes...
2019-08-08 10:46:07
87
原创 会话技术(Cookie和Session)
1.会话技术需求分析:客户端和服务端之间的通信使用的是Http,Http协议是无状态的,不同的请求之间是相互独立的,因此要想在多次请求之间建立联系,只能使用会话技术。(1)会话:一次会话中包含多次请求和响应。一次会话:浏览器第一次给服务端发送请求,会话建立,直到有一方断开,会话结束。(2)功能:在一次会话的多次请求间共享数据。2.cookie(1)概念:客户端会话技术,将数据保存在客...
2019-08-07 11:33:26
124
原创 ServletContext
servletContext的生命周期和服务器是一致的,服务器启动,创建servletContext,服务器关闭,servletContext销毁。3.功能
2019-08-07 10:53:37
88
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人