![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java开发
yyyyyhu
这个作者很懒,什么都没留下…
展开
-
快速搭建ssh框架--ideamac版
最近看群里说有面试时候考察不给百度直接让你搭建一个ssh框架的,鉴于最近新上手idea,所以就以此文记录一下使用idea搭建ssh框架的过程,顺便弥补前2篇文章没有详细过程的遗憾。idea使用的是最新版。 首先,新建一个项目,File->New->Project或在开始界面Create new Project,进入如下界面 勾选Web Application,也可勾选Struts 2,nex原创 2017-09-26 19:28:24 · 1341 阅读 · 0 评论 -
顺时针打印矩阵java
剑指offer中的题目,输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,如:1 2 3 45 6 7 89 10 11 1213 14 15 16则依次打印1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10通过画图可以知道,其实就是若干个圈,依次打印出每个圈。而每个圈都要按照顺时针的顺序打印,即4个循环,先...原创 2018-09-02 15:00:31 · 2392 阅读 · 0 评论 -
二叉树的遍历 java版
总结二叉树的前序、中序、后序遍历,包含递归与非递归方式,以及层次遍历,递归方式比较简单,非递归前中后序主要使用一个辅助栈,层次遍历主要使用一个辅助队列。代码如下:import java.util.ArrayList;import java.util.LinkedList;import java.util.List;/** * Created by yhu on 2018/9/5....原创 2018-09-05 16:47:37 · 341 阅读 · 1 评论 -
JAVA类加载器
ClassLoader就是类加载器,负责将Class加载到JVM中,审查每个类应该由谁加载,将Class字节码重新解析成JVM统一要求的对象格式。大部分Java程序一般会使用到以下三种系统提供的类加载器:1)启动类加载器(Bootstrap ClassLoader):主要加载JVM自身工作需要的类,完全由JVM自己控制,无法通过JAVA程序程序引用。这个类加载器没有父加载器,只是一个类的加...原创 2018-09-03 14:45:42 · 271 阅读 · 0 评论 -
《设计模式之禅》总结
转自https://blog.csdn.net/clivially/article/details/78437846阅读设计模式有很多时日了,差不多两个月时间,以下为个人理解。其中有部分内容为书中原文,或者例子,有些是自己的所感所想,理解浅显,谨以此记录自己的学习经历设计模式观后感1.六项基本原则:1.1单一职能原则:每一个类实现的功能和作用要单一,比如实体类实现的是单纯的属性...转载 2018-09-09 16:42:57 · 3050 阅读 · 0 评论 -
剪绳子 java
题目还原:给你一根长度为n的绳子,请把绳子剪成m段,记每段绳子长度为k[0],k[1]...k[m-1],求k[0]k[1]...k[m-1]的最大值。已知绳子长度n为整数,m>1(至少要剪一刀,不能不剪),k[0],k[1]...k[m-1]均要求为整数。例如,绳子长度为8时,把它剪成3-3-2,得到最大乘积18;绳子长度为3时,把它剪成2-1,得到最大乘积2。分析:要求的是乘积的最...原创 2018-09-06 21:01:30 · 1789 阅读 · 0 评论 -
烽火面试总结
学校难得来个能现场笔试面试的宣讲会,记录一下秋招第一次面试,总得在面试中有所成长。首先笔试,烽火之前在南京笔试过了,我们学校是单独的,试卷一个方向一套,但是和他们在南京的笔试不一样,感觉比在南信大的稍微难一点,不过依旧还是很基础的,选择问答逻辑,问答包含2个编程题,很常规,感觉就逻辑题最难==选择的话java编译器,标识符,循环次数,方法的作用,都是基础的,编程题南京那边考了个IO操作,我们这...原创 2018-09-15 15:38:18 · 10224 阅读 · 0 评论 -
Spring5源码分析系列(一)从现实生活理解Spring中常用的设计模式
工作找的基本上差不多了,其实找工作也是一种学习,通过面试笔试,可以发现自己的不足以及大家都关注的问题,其中之一就是Spring的源码了,国庆没回家,在周边玩了玩,然后整理了一下咕泡学院Tom老师的《Spring5源码分析》,文章参考自Tom老师的视频。这篇文章开始课程的第一章, 从现实生活理解Spring中常用的设计模式。一、Spring中常用的设计模式1、我们通常说的23种经典设计模式可...原创 2018-10-02 22:08:43 · 5067 阅读 · 8 评论 -
Spring5源码分析系列(二)Spring源码版本命名规则及下载安装
Tom老师视频讲解第二章,这章主要是科普篇,介绍了下spring版本的命名规则及源码下载,文章参考自Tom老师视频。Spring源码版本命名规则(1)首先看看某些常见软件的版本号:LinuxKernel:0.0.1,1.0.0,2.6.32,3.0.18...,若用X.Y.Z表示,则偶数Y表示稳定版本,奇数Y表示开发版本。Windows:Windows98,Windows2000,...原创 2018-10-03 09:44:55 · 1531 阅读 · 0 评论 -
Spring5源码分析系列(三)Spring5概述
咕泡学院Tom老师视频讲解第三章,对Spring5进行简要介绍,文章参考自Tom老师视频。Spring是一个开源的轻量级JavaSE(Java标准版本)/JavaEE(Java企业版本)开发应用框架,其目的是用于简化企业级应用程序开发。应用程序是由一组相互协作的对象组成。而在传统应用程序开发中,一个完整的应用是由一组相互协作的对象组成。所以开发一个应用除了要开发业务逻辑之外,最多的是关注如何使...原创 2018-10-04 10:38:19 · 4959 阅读 · 4 评论 -
Spring5源码分析系列(四)IOC容器
本章开始进入Spring5源码分析,文章有点长,参考自Tom老师视频。什么是IOC/DI?IOC(InversionofControl)控制反转:所谓控制反转,就是把原先我们代码里面需要实现的对象创建、依赖的代码,反转给容器来帮忙实现。那么必然的我们需要创建一个容器,同时需要一种描述来让容器知道需要创建的对象与对象的关系。这个描述最具体表现就是我们可配置的文件。DI(Dependenc...原创 2018-10-06 09:49:56 · 1810 阅读 · 0 评论 -
Spring5源码分析系列(五)基于XML的依赖注入
本文紧接上文IOC容器,讲解基于XML的依赖注入,文章参考自Tom老师视频,下一篇文章将介绍基于Annotation的依赖注入。基于XML的依赖注入1、依赖注入发生的时间当SpringIOC容器完成了Bean定义资源的定位、载入和解析注册以后,IOC容器中已经管理类Bean定义的相关数据,但是此时IOC容器还没有对所管理的Bean进行依赖注入,依赖注入在以下两种情况发生:(1).用...原创 2018-10-07 15:42:29 · 751 阅读 · 0 评论 -
Spring5源码分析系列(六)基于注解的依赖注入
紧接上文基于XML的依赖注入,本文开始讲解基于注解的依赖注入,文章参考自Tom老师的视频。基于Annotation的依赖注入1.从Spring2.0以后的版本中,Spring也引入了基于注解(Annotation)方式的配置,注解(Annotation)是JDK1.5中引入的一个新特性,用于简化Bean的配置,某些场合可以取代XML配置文件。开发人员对注解(Annotation)的态度也是...原创 2018-10-08 12:45:46 · 1275 阅读 · 0 评论 -
Spring5源码分析系列(九)Spring事务原理详解
终于等到了B站的薪资沟通电话,美滋滋,本节开始进入Spring数据访问篇,讲解spring事务,文章参考自Tom老师视频。事务基本概念事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。特点:事务是恢复和并发控制的基本单位。事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。原子性(atomici...原创 2018-10-15 20:51:05 · 2924 阅读 · 2 评论 -
Spring5源码分析系列(七)IOC容器中那些鲜为人知的事儿
1、介绍通过前面章节中对SpringIOC容器的源码分析,我们已经基本上了解了SpringIOC容器对Bean定义资源的定位、读入和解析过程,同时也清楚了当用户通过getBean方法向IOC容器获取被管理的Bean时,IOC容器对Bean进行的初始化和依赖注入过程,这些是SpringIOC容器的基本功能特性。SpringIOC容器还有一些高级特性,如使用lazy-init属性对Bean预初始化...原创 2018-10-09 14:55:30 · 463 阅读 · 0 评论 -
Spring5源码分析系列(八)SpringMVC设计原理及实现
SpringMVC请求处理流程引用SpringinAction上的一张图来说明了SpringMVC的核心组件和请求处理流程:①:DispatcherServlet是SpringMVC中的前端控制器(FrontController),负责接收Request并将Request转发给对应的处理组件.②:HanlerMapping是SpringMVC中完成url到Controller映射的组件...原创 2018-10-10 15:53:51 · 2905 阅读 · 4 评论 -
Spring5源码分析系列(十)SpringAOP设计原理及应用场景
本章开始讲解SpringAOP设计原理及应用场景,文章参考自Tom老师视频~~SpringAOP应用示例AOP是OOP的延续,是AspectOrientedProgramming的缩写,意思是面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现...原创 2018-10-24 17:50:33 · 1745 阅读 · 0 评论 -
JAVA死锁
面试中经常会被问到死锁,今天就来整理一下死锁的相关知识。首先看一下死锁的产生,死锁产生的情况有很多种,例如进程推进顺序不当产生死锁、PV操作使用不当产生死锁、资源分配不当引起死锁、对临时性资源使用不加限制引起死锁等。那么,到底什么是死锁?死锁是指2个及2个以上的进程在执行过程中,由于竞争资源或由于彼此通信而造成的一种阻塞现象,若无外力作用,它们都无法推进下去,这些永远在互相等待的进程称为死...原创 2018-09-07 21:39:07 · 304 阅读 · 0 评论 -
LinkedList常用方法
今天在刷剑指offer的时候,刷到了从上到下打印二叉树那题,需要使用队列来辅助实现。在JAVA中,我们常用LinkedList来模拟链式队列,发现好久没用LinkedList了,对它有一些陌生,因此整理一下,这里主要针对的是他的方法尤其是特有的方法。增加:add(E e):在链表后添加一个元素; 通用方法addFirst(E e):在链表头部插入一个元素; 特有方法addLast(E...原创 2018-09-04 20:43:58 · 34122 阅读 · 5 评论 -
快速搭建ssh代码篇
接着上文,这里贴出测试及配置代码。首先是运行结果,tomcat配置之前有提及过,这里不再阐述。 为了解决hibernate的延迟加载问题,我们在web.xml里配置一个过滤器,也可以在hbm.xml的属性里配置lazy=false解决。 list.jsp<body><table> <tr> <td>编号</td> <td>名称</td>原创 2017-09-26 19:52:59 · 1770 阅读 · 0 评论 -
selenium练习
selenium练习回忆原创 2017-05-18 10:41:30 · 947 阅读 · 2 评论 -
Mac版IDEA入门
mac IDEA入门提示及快捷键原创 2017-09-18 21:19:06 · 7754 阅读 · 2 评论 -
git使用
之前就创建了github账户,但是一直没有使用,最近把之前做的一些项目给放到git上去,顺便记录一下命令。要将本地项目上传到github,首先需要在github中新建一个repository,输入仓库名和描述(可省略),创建即可。然后点击Settings选项,找到GitHub Pages,保存即可。然后在本地新建一个文件夹,右击调出git bash,先将git中的仓库克隆到本地,命令为:g...原创 2017-09-11 20:07:48 · 437 阅读 · 0 评论 -
IDEA导入eclipse项目servlet运行404
接上文,在把eclipse中的web项目导入的idea时,昨天只是运行了一下能跑,今天仔细运行发现,jsp均能正常显示,但是一到servlet就404,依旧是地址问题。 首先想到是否是web.xml没有加载成功,于是前往项目中的Facets,查看web resource directories配置,结果果然是错误的,因为是导入eclipse中的项目,web.xml我们通常放在webroot或web原创 2017-09-19 10:36:33 · 4999 阅读 · 0 评论 -
List与ArrayList
最近回顾Java的集合,突然发现了大部分程序都会使用List list = new ArrayList();也有部分程序会使用ArrayList list=newArrayList();那么他们之间有什么差别呢? 首先,List集合代表一个元素有序、可重复的集合,List作为Collection接口的子接口,而ArrayList是一个类,它继承并实现List。 List list = new A原创 2017-09-21 14:03:13 · 550 阅读 · 0 评论 -
Java接口回顾
今天下午被一个本科是数学系的同学询问接口,本想直接百度一下发给他,但是发现很多百科类的资料写的五花八门并不是很好理解,于是只好手动输入,顺便记录在此。 一般教材上都会把接口与抽象类放在一起讲,说明他们之间是有一定的共性的。为了方便理解,这里直接用例子来说明。 假如我们要描述愤怒的小鸟,里面有很多种不同的鸟,他们都有飞和攻击的行为,因此我们可以定义一个抽象类Bird,各种鸟都是通过弹射起飞,但是攻原创 2017-10-11 21:25:06 · 459 阅读 · 1 评论 -
程序设计思路
程序设计思路原创 2017-11-03 16:49:31 · 13654 阅读 · 0 评论 -
互联网轻量级框架简介
开题总算是结束了,可以舒一口气了~~ 今天整理了一下现在互联网下Java web框架的简介,目前最流行的应该是ssm(spring,spring mvc和mybatis)+redis结构。下面将对其逐个进行简要介绍。 Spring IoC: Inversion of Control控制反转,IoC是一个容器,在Spring中,它会认为一切JAVA资源都是Java Bean,容器的目标是管理这些原创 2017-11-28 15:51:15 · 1337 阅读 · 1 评论 -
java.lang.IllegalArgumentException非法参数异常
今天做SpringMVC demo时,运行时突然报500servlet初始化异常,查阅百度很多都是说配置文件出错,仔细查看web.xml以及springmvc.xml后发现并无问题,然后发现非法参数异常,这才醒悟,直接拷的很久以前的spring3.2的jar包,而我jdk设置的为1.8,版本不匹配,因此需要将springjar包升级,升级到4.3.2后,异常消失。ps:在创建web项目时,dyna...原创 2018-04-23 16:15:51 · 33597 阅读 · 0 评论 -
代码建议
今天回顾了上个月参加苏小研夏令营时做得简单的项目,指导老师最后给了我们一些代码方面的建议,我把感觉比较通用的要点罗列如下:1. 用log替换sout2.optimize imports3.IDE中代码为灰色的地方按照建议修改4.字符串用enum或final string表示5.谨慎使用字符串拼接6.需要配置的东西移入配置文件中7.单一职责原则,注意代码的边界8.成员...原创 2018-08-27 16:45:53 · 373 阅读 · 0 评论 -
SpringBoot总结
网上SpringBoot教程有很多,个人感觉最实用的是慕课网廖师兄的2小时学会SpringBoot,看完之后对SpringBoot会有一定的了解,基本可以上手。附上链接: https://www.imooc.com/learn/767,这里主要对一些关键点进行总结以及一些自己的想法,不对之处还请指点。 用过SpringBoot的人都知道,他非常的简便快捷,无须配置多少东西就能够跑起来一个web...原创 2018-08-31 19:37:05 · 1059 阅读 · 0 评论 -
session共享问题(分布式如何实现session共享)
参考链接:https://blog.csdn.net/sxiaobei/article/details/57086489问题描述:一个用户在登录成功以后会把用户信息存储在session当中,这时session所在服务器为server1,那么用户在session失效之前如果再次使用app,那么可能会被路由到server2,这时问题来了,server没有该用户的session,所以需要用户重新登录...转载 2018-08-21 17:30:30 · 1161 阅读 · 0 评论 -
背包问题Java
背包问题是动态规划类求解的一个典型问题,我们要先找到该问题的局部解然后扩展到全局解。这里讲解的是0-1背包。先看一下情景,假如一个小偷携带者一个可以放10kg重的背包,潜入一户人家行窃,家里有4个物品,每个物品只有1个。即价值v[] = {10, 40, 30, 50},重量w[] = {5, 4, 6, 3}。如果超出这个重量背包就会断,就没法带出,但是家里面有很多物品,他们对应着不同的重量和不...原创 2018-09-01 13:49:47 · 7210 阅读 · 2 评论 -
JAVA面试--IO
1.IO流概念IO流用来处理设备之间的数据传输,Java对数据的操作是通过流的方式,Java用于操作流的类都在IO包中2. Java中IO流的分类按照流的方向:输入流(inputStream)和输出流(outputStream)。按照实现功能分:节点流(可以从或向一个特定的地方(节点)读写数据。如 FileReader)和处理流(是对一个 已存在的流的连接和封装,通过所...原创 2018-09-01 21:30:53 · 4678 阅读 · 0 评论 -
CAP定理整理
CAP定理是分布式系统设计中最基础、最关键的理论,CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),最多只能同时三个特性中的两个,三者不可兼得CAP的定义Consistency (一致性):“all nodes see the same data at the...原创 2019-09-30 10:19:23 · 298 阅读 · 0 评论