- 博客(56)
- 收藏
- 关注
原创 Java面试题-框架篇九
81,使用Spring框架的好处是什么?轻量:Spring 是轻量的,基本的版本大约2MB。控制反转:Spring通过控制反转实现了松散耦合,对象们给出它们的依赖,而不是创建或查找依赖的对象们。面向切面的编程(AOP):Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。容器:Spring 包含并管理应用中对象的生命周期和配置。MVC框架:Spring的WEB框架...
2019-04-11 16:02:07
224
原创 Java面试题-框架篇八
71,谈谈你对Struts的理解。1. struts是一个按MVC模式设计的Web层框架,其实它就是一个Servlet,这个Servlet名为ActionServlet,或是ActionServlet的子类。我们可以在web.xml文件中将符合某种特征的所有请求交给这个Servlet处理,这个Servlet再参照一个配置文件将各个请求分别分配给不同的action去处理。(struts的配置...
2019-04-11 15:56:29
216
原创 Java面试题-javaweb篇七
61,JDBC访问数据库的基本步骤是什么?1,加载驱动2,通过DriverManager对象获取连接对象Connection3,通过连接对象获取会话4,通过会话进行数据的增删改查,封装对象5,关闭资源62,说说preparedStatement和Statement的区别1,效率:预编译会话比普通会话对象,数据库系统不会对相同的sql语句不会再次编译2,安全性:可以有...
2019-04-09 17:15:26
248
原创 Java面试题-javaweb篇六
51、说一说Servlet的生命周期?Servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init(),service()和destroy方法表达。Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(d...
2019-04-09 17:03:38
196
原创 Java面试题-基础篇五
41、a.hashCode() 有什么用?与 a.equals(b) 有什么关系?hashCode() 方法对应对象整型的 hash 值。它常用于基于 hash 的集合类,如 Hashtable、HashMap、LinkedHashMap等等。它与 equals() 方法关系特别紧密。根据 Java 规范,两个使用 equal() 方法来判断相等的对象,必须具有相同的 hash code。42、...
2019-04-08 16:52:32
216
原创 Java面试题-基础篇四
31、String s = new String("xyz");创建了几个StringObject?是否可以继承String类?两个或一个都有可能,”xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那一个。NewString每写一遍,就创建一个新的对象,它使用常量”xyz”对象的内容来创建出一个新String对象。如果以前就用过’xyz’,那么这...
2019-04-08 15:59:13
200
原创 Java面试题-集合框架篇三
21、ArrayList和Vector的区别这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,并且其中的数据是允许重复的,这是与HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素。...
2019-04-04 16:20:50
171
原创 Java面试题-基础篇二
11、是否可以从一个static方法内部发出对非static方法的调用?不可以。因为非static方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用时不需要创建对象,可以直接调用。也就是说,当一个static方法被调用时,可能还没有创建任何实例对象,如果从一个static方法中发出对非static方法的调用,那个非static方法是关联到哪个对...
2019-04-04 15:25:06
239
原创 Java面试题-基础篇一
前言:之前发布的面试题,多多少少有一些细节上的错误或者笔误,不少同学给我留言指正,我想着等开通留言之后在每一篇的留言下声明一下错误点。前天留言功能终于等到了。结果发现留言只能开通之后发的文章,还是太年轻啊!想着不要误人子弟,还是把文章重新整理一下,把错误的点改过来!!1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?可以有多个类,但只能有一个public的类,并且...
2019-04-04 14:34:43
187
原创 我要去做程序员,我吃得了苦
作为一名程序员,平时工作敲代码的时候都会觉得很枯燥,可是别人的公司都有鼓励师陪伴,针对这个广大程序员大大们有啥想吐槽的吗?看图上这位小哥一脸惬意的样子,你确定你有定力敲代码?广大网友表示了自己的意见:网友1:作为程序猿的女票,深深的危机感扑面而来~假想下,若此职业合法化:1. 程序猿自愿加班到深夜,只为博得萌妹子倾城一笑,“欧巴~你真棒~”;2. 程序猿内部竞争意识指...
2019-04-03 17:44:28
305
原创 浅谈:合格的Java程序员应该具备的能力
和大家分享下合格的Java程序员在工作中都需要具备哪些能力呢?一、文档习惯良好的文档是正规研发流程中非常重要的环节,作为Java程序员,30%的工作时间写技术文档是很正常的,而作为高级程序员和系统分析员,这个比例还要占的更高。二、规范化,标准化的代码编写习惯一些外国知名软件公司的规矩,Java代码的变量命名,代码内注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好...
2019-04-03 16:15:39
733
原创 谈谈Java工程师的学习
在大学的时候,计算机系的同学们肯定会学习很多计算机方面的专业课,如计算机操作系统、计算机网络、计算机组成与结构等等啦,个人认为这些课程会为你快速建立计算机技术的基本概念,但这些课程大学讲的比较粗浅,而且每一门课程在计算机发展方向上都有很深的领域。所以,个人认为这些课程在大学属于尽可能的了解。大学计算机还会学习高等数学和英语,这是我认为大学学习的核心。英语的重要性不言而喻,因为很多重要的参考...
2019-04-03 15:00:08
263
原创 [零基础学JAVA]Java SE应用部分-35.JAVA类集之四
1、类集结构(1)类集的产生目的类集简单来讲就是一个动态的对象数组,此对象数组可以改变大小,可以任意的实现对象的增加、删除、输出。所有的类集存放java.util包中。(2)类集的划分1、存放单值:Collection2、存放一对值:Map3、输出:Iterator(3)类集的具体概念<1>Collection(只能存放一个值)|- 主要功能:用于输...
2019-04-02 17:23:59
226
原创 Java并发编程40道面试题及答案——面试稳了
1、线程与进程的区别?进程是操作系统分配资源的最小单元,线程是操作系统调度的最小单元。一个程序至少有一个进程,一个进程至少有一个线程。文末有福利,思维导图和视频资料等你来领2、什么是多线程中的上下文切换?多线程会共同使用一组计算机上的CPU,而线程数大于给程序分配的CPU数量时,为了让各个线程都有执行的机会,就需要轮转使用CPU。不同的线程切换使用CPU发生的切换数据等就是上下...
2019-04-01 17:27:28
303
原创 作为程序员必须掌握的Java虚拟机中的22个重难点
Java虚拟机一直是比较重要的知识点,是Java高级开发必会的。本文为你总结了关于JVM的22个重点、难点,图文并茂的向你展示和JVM有关的重点知识。全文共7000字左右。概念虚拟机:指以软件的方式模拟具有完整硬件系统功能、运行在一个完全隔离环境中的完整计算机系统 ,是物理机的软件实现。常用的虚拟机有VMWare,Visual Box,Java Virtual Machine(Java虚拟...
2019-04-01 15:16:19
190
原创 Java找工作为什么越来越难,有什么技巧嘛?
主要两个原因:市场原因: java行业现在饱和了,加入这行的人越来越多,而公司对应聘者的技术要求也会提高,所以招聘的时候面试官特别挑个人原因: 可能自身的开技术不能够得公司的认可,或者不会表达自身的优势(属于有技术不会表达出来,但开发能做出来)总结: 提高自身的技术和表达能力,可以选择适当时机去面试,如春节前后,会有一部人要跳槽,企业会急招人.条件可能放宽些,面试机会也多...
2019-04-01 11:31:42
3991
原创 阿里P7给你一份超详细 Spring Boot 知识清单
在过去两三年的Spring生态圈,最让人兴奋的莫过于Spring Boot框架。或许从命名上就能看出这个框架的设计初衷:快速的启动Spring应用。因而Spring Boot应用本质上就是一个基于Spring框架的应用,它是Spring对“约定优先于配置”理念的最佳实践产物,它能够帮助开发者更快速高效地构建基于Spring生态圈的应用。那Spring Boot有何魔法?自动配置、起步依赖、Ac...
2019-03-30 16:00:39
267
原创 工作2-5年java的程序员,这六个技术栈让你轻松涨薪50%
工作多年以及在面试中,我经常能体会到,有些面试者确实是认真努力工作,但坦白说表现出的能力水平却不足以通过面试,通常是两方面的原因:1、“知其然不知其所以然”。做了多年技术,开发了很多业务应用,但似乎并未思考过种种技术选择背后的逻辑。坦白说,我并不放心把具有一定深度的任务交给他。2、知识碎片化,不成系统。在面试中,面试者似乎无法完整、清晰地描述自己所开发的系统,或者使用的相关技术。平时可能埋...
2019-03-30 14:54:17
983
原创 springboot集成redis详解
springboot集成redis非常简单1、引入maven依赖redis包<!-- springboot整合 redis --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-redis<...
2019-03-30 11:26:17
1214
原创 java还是C?
前几天有学生问我,考计算机二级(全国计算机等级考试,National Computer Rank Examination,简称NCRE),是考C还是考JAVA。原因是他们上学期学习了C语言,这学期开始学习JAVA,这两种语言二级都可报考。因此,就出现了该报考哪种语言的问题。受时间限制,对于此问题,我当时并没有完整地阐述完自己的观点。现详述如下,供有此烦恼的同学参考。如果你有志于在程序设计领...
2019-03-30 11:13:45
604
原创 jenkins自动发布java代码
进行实战java代码发布,此利用github私有仓库拉去,jenkins利用maven编译源码后讲包发布致web服务器。一、git私有仓库创建可参考GIT笔记中远程仓库搭建部分,此处java源码使用zrlog,将源码pull到github上,将jenkins公钥配置到github上,即可下一波。二、web服务器tomcat配置在需要将代码发布的web服务器上需要配置tomcat的m...
2019-03-29 11:12:20
430
原创 阿里面试题BIO和NIO数量问题附答案和代码 java爱好者
一、问题BIO 和 NIO 作为 Server 端,当建立了 10 个连接时,分别产生多少个线程?答案:因为传统的 IO 也就是 BIO 是同步线程堵塞的,所以每个连接都要分配一个专用线程来处理请求,这样 10 个连接就会创建 10 个线程去处理。而 NIO 是一种同步非阻塞的 I/O 模型,它的核心技术是多路复用,可以使用一个链接上的不同通道来处理不同的请求,所以即使有 10 个连接,...
2019-03-28 15:43:35
635
原创 IT技术人员转行大数据,应该考虑那些问题
大数据人才需求迫切,高薪资、高福利,因此转行的大数据的人也很多,那么对于一些普通技术开发人员,在进行转行大数据开发时有哪些必要的考虑因素呢?关于从事一个行业的要求,最简单的方式莫过于从求职网站上查看信息,下面就是针对于大数据行业的一些职业要求,而这也是转行大数据人必须要考虑的。分享之前我还是要推荐下我自己创建的java架构师: 697558955无论是大牛还是想转行想学习的大学生...
2019-03-28 11:28:14
358
原创 Spring框架详解
前言Spring boot + Mybatis + Thymeleaf + Druid +mySql开发环境(小编使用的版本)JDK版本 :1.8及以上 (JDK1.8);开发工具 :Intellij IDEA (IDEA2018.2);服务器 :Tomcat(务必比JDK版本高,小编不在解释(Jar包不用配置、War需要配置)) (Tomcat9) ;JRE包 :Mave...
2019-03-27 15:16:19
213
原创 使用docker部署spring cloud项目详细步骤
准备工作JDK1.8、Docker1.12.1、CentOS7.01.CentOS7.0下JDK1.8的安装(1)到Oracle官网下载好 jdk-8u181-linux-x64.tar.gz 备用(2)卸载系统自带的javajava -version # 如果有结果出来,则说明自带了java rpm -qa|grep java # 查询出已经安装的java yum -y...
2019-03-27 11:15:01
2197
原创 13个不容错过的Java项目
今天我们将整理一大波干货满满的Java示例代码与能力展示素材。GitHub可谓一座程序开发的大宝库,有些素材值得fork,有些则能帮助我们改进自有代码或者学习编程技能。无论如何,开发工作当中我们几乎不可能绕得开GitHub。下面,我们将一同分享各有趣且颇为实用的Java库,大家请任取所需、不用客气~1.极致精简的JavaBootique是一项用于构建无容器可运行Java应用的极简技...
2019-03-26 17:38:36
1930
原创 一封java程序员的情书
我想git merge you你却想git reset --hard HEAD^^^^^^我正要git commit -m"love success"你却git stash无奈无奈好不容易 issue conflit你却git checkout -b new我正要有所动作你就git branch -D me看看git log 吧活跃,但是contribute...
2019-03-26 11:26:37
351
原创 阿里P8架构师谈:Java程序员进阶架构师的三个层次,你处于哪个?
在这个互联网动辄上亿流量级别的时代,Java作为后端服务使用最广泛的语言,诞生了一批又一批的新框架,包括HBase、Hadoop、MQ、Netty、SpringCloud等等 。一些独角兽公司以及BAT等知名大厂对Java人才的需求量连年升级,但与此同时对人才的要求也越来越高。面试官经常会考察如下问题:聊一聊你对JVM的原理,如何减少Full GC的情况?针对高并发场景,如何优化,...
2019-03-25 17:33:21
908
1
原创 前后端分离的演变
本文尝试从历史发展角度,说说各种研发模式的优劣。一、简单明快的早期时代可称之为 Web 1.0 时代,非常适合创业型小项目,不分前后端,经常 3-5 人搞定所有开发。页面由 JSP、PHP 等工程师在服务端生成,浏览器负责展现。基本上是服务端给什么浏览器就展现什么,展现的控制在 Web Server 层。这种模式的好处是:简单明快,本地起一个 Tomcat...
2019-03-25 15:49:08
2164
原创 工程架构师对3月14号的白色情人节有什么看法??
今天早上赶地铁的时候刷到一则故事:人挤人的火车上,男孩喜欢上了坐在过道另一边的女孩,一直想找机会跟对方认识,但是整个旅途女孩都望着窗外。失落的男孩在自己的微博里说: " 很想跟她说话,但她好像不太开心,一直望着窗外。我马上就要到站了,就这样错过,好遗憾。 "过了一会儿,有个人在他的微博下评论: " 没有不开心,只是因为玻璃上印着你的脸。 " 而当男孩再次看向女孩的时候,发现她也...
2019-03-25 15:46:36
306
原创 Twemproxy增加或剔除Redis节点后对数据有何影响
本篇文章,Twemproxy增加或剔除Redis节点后对数据的影响是接着”通过Twemproxy代理Redis数据分片方案“这篇文章写的。最好还要懂一致性哈希(ketama)的原理下面我们模拟在Redis运行过程中新增一个节点,看一看会丢失Key的比例是多少。至于为什么会丢失Key呢?最简单的理解就是“取模运算”,原先twemproxy是对两个Redis节点对Key做哈希后存储,同样读取数据的...
2019-03-25 14:44:21
418
原创 案例:配置apache和nginx的SSL加密传输协议
一、SSI解释SSI是一种类似于ASP的基于服务器的网页制作技术。将内容发送到浏览器之前,可以使用“服务器端包含 (SSI)”指令将文本、图形或应用程序信息包含到网页中。例如,可以使用 SSI 包含时间/日期戳、版权声明或供客户填写并返回的表单。对于在多个文件中重复出现的文本或图形,使用包含文件是一种简便的方法。将内容存入一个包含文件中即可,而不必将内容输入所有文件。通过一个非常简单的语句即可...
2019-03-25 14:36:58
320
原创 最简单的SpringBoot整合MyBatis教程
本文就来看看在Spring Boot中MyBatis要如何使用。工程创建首先创建一个基本的Spring Boot工程,添加Web依赖,MyBatis依赖以及MySQL驱动依赖,如下:创建成功后,添加Druid依赖,并且锁定MySQL驱动版本,完整的依赖如下:<dependency> <groupId>org.springframework.bo...
2019-03-25 11:40:03
157
原创 白话解析分布式系统,小白也能看懂
西方诗歌有云,无人是孤岛,你我心相系。今天,这句话同样适用于计算机。我们身边的服务器,个人电脑以及数据存储一直都在彼此通信。其实,我们每天使用的(和在开发的)应用和服务也都是构成完整系统的计算元素,彼此进行着交互,尽管很多时候我们感知不到。对这些系统及其运行原理的研究属于分布式计算的一部分,而分布式计算又是分布式系统的核心所在。一方面,我们可以把分布式系统看作计算机科学的扩展或继续,...
2019-03-24 11:54:40
9533
2
原创 中文出身的妹纸,零基础学习JAVA靠谱么?
最近有人询问我,一个中文出身的妹子学java感觉靠谱吗?我想询问一下路过这篇文章的java人员你们觉得呢?
2019-03-24 11:33:36
330
原创 REdis AOF文件结构分析
REdis-5.0之前的AOF文件没有文件头,不管是REdis-5.0之前还是REdis-5.0,它们的AOF文件体内容都如下图所示:从REdis-5.0开始,AOF有文件头,目的是支持同时加载RDB和AOF文件。AOF文件头和RDB文件头基本相同,但RDB文件头多了三个字段。先看AOF和RDB通用部分的文件头内容:1) 头5字节固定为REDIS2) 第6~9共四字节为R...
2019-03-22 17:20:57
685
原创 成为一名Java架构师的必修课
一.热门框架源码学习设计模式篇 Spring5源码解读篇 Mybatis篇 SpringBoot2篇二. 微服务架构架构设计篇 BAT互联网架构这些年的演进分析 国内外常见分布式系统架构状况介绍 微服务架构指南:领域驱动设计DDD模型 SpringCloud1-2实战篇 Config分布式配置中心 Eureka注册与发现机制 Ribbon客户端负载均衡 H...
2019-03-22 11:53:25
259
原创 详解:Redis主从技术的应用
Redis复制在生产环境中,Redis通过持久化功能(RDB和AOF技术)保证了即使在服务器重启的情况下也不会损失(或少量损失)数据。但是由于数据是存储在一台服务器上的,如果这台服务器出现硬盘故障等问题(生产环境中多次遇到),也会导致数据丢失,为了避免单点故障,通常的做法是将数据库复制多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其他服务器依然可以以最快的速度提供服务。为此,R...
2019-03-21 14:57:46
155
原创 分享给java程序员的文章:一年有多长
一年对于一个人来说究竟是多么长的一段时间呢?在新年的第一天里,我想给你讲两个人在一年中发生的故事。-1-1904年,阿尔伯特·爱因斯坦25岁,这一年里,对他来说最重大的事情,是在试用两年以后,他的工作终于转正了,他成为了瑞士伯尔尼专利局的三级技术员。4年前,爱因斯坦从苏黎世联邦理工学院硕士毕业,少年阿尔伯特的成绩并不理想,全班5个人,他排第4,第5还是他女朋友,看起来和如今普通学...
2019-03-21 14:42:37
218
原创 Java架构师必须掌握的七大知识点
Java架构师主要需要做哪些工作呢?1、负责设计和搭建软件系统架构(平台、数据库、接口和应用架构等),解决开发中各种系统架构问题。2、优化现有系统的性能,解决软件系统平台关键技术问题攻关、核心功能模块设计、核心代码开发。3、在项目需求不断细化的工程中校正整体的架构设计,以及详细模块拆分设计。4、营造技术学习氛围,带领团队不断完善开发开发方法及流程,提升开发效率与质量,加强技术标准及...
2019-03-21 14:25:25
1138
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人