随笔分类 -  Java

摘要:0. IDEA中Maven项目测试类的新建方法 a. 如图在src目录下新建文件夹test b. 鼠标右键test,将该文件设置成test source c. 右键需要新建的测试类,如下图操作,选中Test,即可新建测试类。 1. @BeforeEach与@BeforeAll @BeforeEach 阅读全文
posted @ 2019-09-27 12:15 北辰Root 阅读(1694) 评论(0) 推荐(0)
摘要:1.确认Maven安装正常,在cmd窗口输入mvn -version 可以获得版本号; 2. 确认maven安装包下/conf/setting.xml配置文件正确 本地仓库位置: 远程中央仓库: 3. 确认idea设置正常,file - settings - maven 此处代表idea可以找到的仓 阅读全文
posted @ 2019-09-16 15:13 北辰Root 阅读(21875) 评论(9) 推荐(0)
摘要:在解释volatile关键字之前,先说说java的指令重排以及代码的执行顺序。 指令重排: 按代码的顺序,执行时先给x赋值再给y赋值,再执行x=x+1;最后求和。 由于x=x+1和sum=x+y是写操作不会进行指令重排,但是x=1与y=2是不互斥的;出于性能优化的考虑(对x赋值后直接对x进行操作可以 阅读全文
posted @ 2019-09-02 10:14 北辰Root 阅读(249) 评论(0) 推荐(0)
摘要:本文大量参考:https://www.cnblogs.com/lfs2640666960/p/9297176.html 概述 JVM是JRE的一部分。它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令 阅读全文
posted @ 2019-08-20 00:28 北辰Root 阅读(595) 评论(0) 推荐(0)
摘要:1. 并发与并行 并发是指某个时间段内,多任务交替处理的能力;并行是指同时处理多任务的能力,多核CPU可以实现并行任务。 并发执行的特点: (1)并发程序间相互制约:程序执行结果的相互依赖以及共享资源(如处理器、缓冲区)的竞争; (2)并发程序的执行过程是断断续续的,程序需要记忆现场指令及执行点; 阅读全文
posted @ 2019-07-21 11:03 北辰Root 阅读(409) 评论(0) 推荐(1)
摘要:程序 = 数据结构 + 算法 本文概述Java中常用的数据结构,并简述其使用场景 1. 数据结构的定义 数据结构是一种逻辑意义,指的是逻辑上的数据组织方式及相应的处理,与数据在磁盘的具体存储方式不完全相关。磁盘存储数据的方式可能是顺序存储也可能是链式存储。 逻辑上的数据组织方式有:队列、树、图、哈希 阅读全文
posted @ 2019-07-03 10:34 北辰Root 阅读(473) 评论(0) 推荐(0)
摘要:1. 排序算法代码实现 2. 查询算法代码实现 阅读全文
posted @ 2019-07-02 17:52 北辰Root 阅读(577) 评论(0) 推荐(0)
摘要:大型网站系统架构的演进都是随着业务增长不断演进,所有的出发点都是为了满足业务需求。最初访问量下,功能简单时,单体软件可以解决所有问题;后来访问量逐渐增大,功能愈加丰富,此时单体软件的架构逐渐成为开发和运维的瓶颈。所以微服务拆分,集群化部署,消息中间件,内存数据库,数据库中间件等解决方案逐渐走进视野。 阅读全文
posted @ 2019-06-10 18:51 北辰Root 阅读(10605) 评论(0) 推荐(1)
摘要:在介绍Tomcat之前,我们先介绍一个概念Servlet。 Servlet是一个运行在WEB服务器上的小的Java程序,用来接收和响应从客户端发送过来的请求,通常使用HTTP协议。从下图可以看出Servlet依托于容器运行和提供服务,这类容器称为Servlet容器,Tomcat就是一个Servlet 阅读全文
posted @ 2019-06-09 17:00 北辰Root 阅读(607) 评论(0) 推荐(0)
摘要:Spring Web模型-视图-控制器(MVC)框架是围绕DispatcherServlet设计的,DispatcherServlet将接收的请求分派给应用程序。SpringMVC具有配置处理程序映射关系,视图解析,区域设置,时区和主题解析以及上传文件等功能。 简述SpringMVC工作内容: 接收 阅读全文
posted @ 2019-06-09 16:59 北辰Root 阅读(1869) 评论(0) 推荐(1)
摘要:Nginx请求分发中心,需要明确几个基本问题,什么是请求,分发中心是什么,为什么需要分发中心。 什么是请求? Niginx是一款高性能的HTTP服务器,这里的请求当然是指接收客户端发送的http协议请求。http协议的请求(常用POST和GET)是通过URL进行定位的,URL中的核心为IP地址与端口 阅读全文
posted @ 2019-06-08 16:14 北辰Root 阅读(1829) 评论(0) 推荐(0)
摘要:什么是数据库连接池? 数据库连接池负责分配、管理和释放数据库连接,无需用户在使用中动态的创建维护数据库连接,将用户从操作连接的细节中解放出来。 为什么使用数据库连接池呢? 节省系统运行资源和时间;数据库连接是一种关键的、有限的、昂贵的资源。传统的模式(如传统的java web项目中,servlet的 阅读全文
posted @ 2019-06-08 09:49 北辰Root 阅读(164) 评论(0) 推荐(0)
摘要:1. 常用sql语法: a. 数据定义语言DDL(Data Definition Language):对数据库内部的对象进行创建、修改、删除等操作;与DML区别在于DML语句只针对表中数据,不涉及表的元信息;DDL主要面向DBA(数据库管理人员) b. 数据操作语句DML(Data Manipula 阅读全文
posted @ 2019-06-06 18:21 北辰Root 阅读(141) 评论(0) 推荐(0)
摘要:简单来看软件服务的工作流程:用户端界面操作请求< >本地处理|远程服务程序拦截转发请求< >服务端逻辑功能实现<--MyBatis用在这里-->数据库。 很容易产生两个问题:为什么在服务程序与数据库之间需要使用持久层框架?为什么要使用MyBatis? 直接使用Java操作数据库会非常繁琐,具有以下问 阅读全文
posted @ 2019-06-06 17:29 北辰Root 阅读(1526) 评论(0) 推荐(0)
摘要:之前简单介绍过Spring框架,本文换个角度重新诠释Spring。使用Java语言开发的项目,几乎都绕不过Spring,那么Spring到底是啥,为何被如此广泛的应用,下面从以下两个问题出发来剖析Spring,本文所有讨论基于Spring 4。 Spring是啥 Spring 是一个分层的 Java 阅读全文
posted @ 2019-06-05 23:31 北辰Root 阅读(642) 评论(0) 推荐(0)
摘要:1. 面向对象 2. 数据类型 基础数据类型(byte short int long float double char boolean ) 和引用类(Byte Integer Long String Boolean) equals与 == 3. 静态关键字static 4. String相关操作 阅读全文
posted @ 2019-06-03 13:25 北辰Root 阅读(161) 评论(0) 推荐(0)