11 2017 档案
摘要:MyEclipse下面的server窗口突然不能正常显示了,而且还显示Could not create the view: An unexpected exception was thrown(无...
阅读全文
摘要:在servlet都是使用response对象来重定向到另一个页面:response.sendRedirect(“……”)。现在遇到一个问题,网页的地址是带中文的,当执行到跳转命令的时候项目运行出错...
阅读全文
摘要:经常写博客的都应该接触文本编辑器,现在大多数都是使用Markdown,Markdown是一种可以使用普通文本编辑器编写的标记语言,在文章中通过简单的语法标记就可以实现文字的不同格式,对于Markd...
阅读全文
摘要:2016年,忘记是清明节还是端午节了,放假回家,由于是法定节假日,火车上的人非常多,当时从哈站发的车,在滨江站(那时候哈东站在修,所以车都在滨江站停)上车的时候已经是只能在车门的地方挤着,里面根本...
阅读全文
摘要:在日常我们在登录或者注册的时候,网页上会出现验证码让我们填写,其实利用jdk提供给我们的工具类完全可以模拟出来一个生成验证码图片的功能。package util;import javax.imag...
阅读全文
摘要:用了几天模拟struts2,最后结果还是很成功的,也基本没有什么遇上比较难解决的问题,万事开头难,在最开始的时候无从下手,看着下面这张struts2工作流程图配合着网上的博客看了一天终于有了眉目。...
阅读全文
摘要:1XX 表示消息2XX 表示成功3XX 表示重定向4XX 表示请求错误5XX 表示服务器端错误我们最常见的就是:404(页面找不到),这个错误代码是由于我们输入的网址不对造成的,浏览器找不到我们想...
阅读全文
摘要:提出问题:最初接触责任链模式就是在struts2中,在当时学的时候看了一眼,大概知道了原理,最近在复习,模拟struts2,说是模拟只是大体模拟了struts2的工作流程,很多东西都是写死的,只是...
阅读全文
摘要:代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式顾名思义,有个代理...
阅读全文
摘要:在经过一系列的问题得到解决之后,泛型dao终于写出来了。泛型dao相比于以前写的dao最大的好处就是,大大提高了代码的复用性,以往我们要对数据库中表中的数据进行操作的时候,每张表都需要写一个dao...
阅读全文
摘要:其实每次在需要运行的jsp页面右键=》run也是可以运行的,但是会出现下面这样正常应该Run==》Edit Con……这时候将看到这个页面,千万不要在Defaults中招Tomcat配置,否则访问...
阅读全文
摘要:提出问题:还是泛型dao中遇到的问题,以往我们要查询数据库中表中的数据的时候,需要每张表都会写一个dao操作数据库,现在的需求是只写一个dao,这是个万能的dao,适用于所有的表,进行增删改查都可用。显然我们事先不知道要查哪个表,泛型dao的基本要求就是对所有的表都适用,这就需要我们动态的获取表名,...
阅读全文
摘要:在eclipse中我们按一下快捷键就会生成类的基本信息相关的注释,其实在IDEA中也是可以的,需要我们手动设置,之后再创建类的时候就会自动加上这些基本的信息。File——》Setting在Editor中找到File and Code TemplatesEditor——》File and Code T...
阅读全文
摘要:提出问题:在写一个dao的时候,我的需求是这个dao是一个万能的,目前的方法只有一个查询出实体类对应的表中所有的数据,通过传入的对象,利用反射获取实体类中的属性名,属性类型,利用字符串拼接获取相应属性对应的set方法,利用Method中的invoke方法执行set方法。由于实体类是通过表生成的,所以...
阅读全文
摘要:下面是知乎一个回答的内容,说的是知乎回答的格式,可能也是我们日常需要注意的地方,不是必须做的,但是给别人方便。作者:胡维链接:https://www.zhihu.com/question/19550239/answer/12202031来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转...
阅读全文
摘要:之前看到一个面试题说是讲一下悲观锁和乐观锁,网上搜到了一篇写的很明白的文章文章用很通俗的语言描述了悲观锁和乐观锁的区别,下面根据自己的理解说一下悲观锁:时刻保持着一个悲观的态度,对谁都不信任,总想着别人会修改我的数据,所以为了防止别人修改,每次都会上锁,防止别人修改自己的数据,导致的后果就是每次想要...
阅读全文
摘要:什么是 XML?XML 指可扩展标记语言(EXtensible Markup Language)XML 是一种标记语言,很类似 HTMLXML 的设计宗旨是传输数据,而非显示数据XML 标签没有被预定义。您需要自行定义标签。XML 被设计为具有自我描述性。XML 是 W3C 的推荐标准对于xml文件...
阅读全文
摘要:jsp有四种范围,可以说是四种对象,这四种对象对应不同的作用范围,所以我们说jsp中的四种范围,这四种范围作用域由大到小分别是page>request>session>application利用这四个对象最常用的就是传值,在一个地方设置值,在另一个地方获取值,之前在一篇文章中写到了传值这四种范围除了...
阅读全文
摘要:1.forward跳转: 服务器端跳转,地址栏不改变; 执行到跳转语句后马上无条件跳转,之后的代码不再执行(跳转之前一定要释放全部资源); request设置的属性在跳转后的页面仍可以使用; 使用传递参数。2.response跳转: 客户端跳转,地址栏改变; 所有代码执行完毕后跳转; ...
阅读全文
摘要:数据库连接池是什么?数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地对池中的连接进行申请,使用,释放。在对数据库进行操作之前都要先获取数据库连接,然后才能向后进行操作,增删改查,获取结果集,浪费时间的地方就是在获取数据库连...
阅读全文
摘要:之前说到了利用Java中的Properties类读取properties配置文件,连接数据库,现在说另一种方法,他们的目的和作用都是一样的,都是为了提高代码的复用性,解决了更改数据库时还要更改代码的麻烦。和之前的properties解决的问题一样这里就不说了,详见前一篇文章: Java读取prope...
阅读全文
摘要:UUID是什么?UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每...
阅读全文
摘要:先说为什么要有这种东西,或者我们为什么要用这种方式来写,先看经常用的方法,我们经常写的package util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public c...
阅读全文
摘要:什么是三大范式:数据库中的三大范式,可以说是三种规范,三大范式规定了数据库最基本的设计规范,在设计数据库的时候,让数据库的结构更加简明,可以提高效率。设计范式的思想很像是我做我的事,别人做别人的事,大家没有交集,避免冲突,可以很大程度上提高效率。简单来说就是:第一范式:具有原子性第二范式:主键列与非...
阅读全文
摘要:1. 选择最有效率的表名顺序(只在基于规则的优化器中有效)SQL 的解析器按照从右到左的顺序处理 FROM 子句中的表名,因此 FROM 子句中写在最后的表(我们称之为基础表)将被最先处理. 在 FROM 子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.当 SQL 处理多个表时, 会...
阅读全文
摘要:在学习maven的过程中接触到了jar包和war包。之前在写小项目的时候真的遇到过war包,当时为了找到jar包,把war包的后缀名改成了.rar的压缩文件,在里面提取出来jar包来用。其实jar包和war包都可以看成压缩文件,用解压软件都可以打开,jar包和war包所存在的原因是,为了项目的部署和...
阅读全文
摘要:maven是什么?有什么用?maven 解决的问题: - jar包的声明式依赖管理与管理 - 自动构建、发布项目 - 软件构建的生命周期: 清除--> 编译-->测试-->报告-->打包(jar\war)-->安装-->部署到远程 maven可以通过一个命令实现自动构建软件项...
阅读全文
摘要:这篇文章可以说是摘抄自周志明的《深入理解Java虚拟机》,但是加上了自己的理解,印象可以更深些。 Java虚拟机在执行Java程序的时候会把他所管理的内存划分为若干个不同的数据区域,各个区域有各自的用途,以及创建和销毁的时间。有的区域随着虚拟机进程的启动而存在,有的区域则依赖用户线程的启动...
阅读全文
摘要:介绍:对于线程一共分为五个状态:新建状态,就绪状态,阻塞状态,运行状态,死亡状态,有时候把阻塞状态又分为同步阻塞和等待阻塞。有时想让主线程启动的一个子线程结束运行,我们就需要让这个子线程中断,不再继续执行。线程是有中断机制的,我们可以对每个线程进行中断标记,注意只是标记,中断与否还是虚拟机自己的事情...
阅读全文
摘要:在网上找到了好多这种验证的例子,但是都是一样的,而且没有注释,又或者是注释解释不清,直接拿来很难看懂,这个例子的原博主也不知道是谁了,拿来用一下。加了注释,让整篇代码看着好懂一些在实际的开发中css样式放在一个文件夹中,js放在一个文件中,html文件放在和js,css文件夹的同级目录下,用到的时候...
阅读全文
摘要:以下转自阮一峰的文章:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance_continued.html作者: 阮一峰日期: 2010年5月24日这个系列的第一部分介绍了"封装",第二部分介绍了使用...
阅读全文
摘要:转载自:http://www.cnblogs.com/liuluteresa/p/6413988.html在js里,一切皆为或者皆可以被用作对象。可通过new一个对象或者直接以字面量形式创建变量(如var i="aaa"),所有变量都有对象的性质。注意:通过字面量创建的对象在调用属性和方法时会被对象...
阅读全文
摘要:把对象进行持久化(把对象存到本地)要用到对象流进行处理,在用对象流处理过程中,在写对象和读对象时候遇到了很多问题,分享一下。我们处理对象数据的时候不可能只处理一个对象,在系统运行的时候,可能产生的对象数量是随机的,对于向文件中写入对象数据没有什么影响,只需要向文件中写入正确的对象即可,但是从文件中读...
阅读全文
摘要:为了让对象持久化(把对象存储到本地),可以使用java的对象流处理对象,把对象的内容写到本地存储的文件中,也可以从本地文件中读取出来。也就是常说的序列化和反序列化主要用到了ObjectInputStream(对象输入流) ObjectOutPutStream(对象输出流 )处理对象使用对象流处理...
阅读全文
摘要:Java中的流是什么?java中的流是一个抽象的概念,在java的程序中需要把文件从一个设备传输到另一个设备上,这个设备可以是内存,程序,文件,网络。把在这些之间传输的叫做流。官方的解释:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据...
阅读全文
摘要:一、HashMap介绍集合中的Map集合有两个实现类分别是HashMap和TreeMap,这里先说HashMap,TreeMap在以后的文章讲。HashMap,既然前面带了Hash,那么他一定用到了hash算法,HashMap的结构就是一个hash表,注意在HashMap中可以添加一个键为null和...
阅读全文
摘要:在开发java web项目的时候我们经常需要在servlet和jsp之间进行传值,之前介绍了传值的几种方式,详见:jsp与Servlet之间传值有时候我们在jsp和Servlet之间传值的时候,需要在Servlet中创建对象传值,但是在jsp页面中不需要创建对象,因为在jsp页面中,已经内...
阅读全文
摘要:在java集合中有一种集合Set(集),他有两个实现类,分别是HashSet,TreeSet。下面仔细分析HashSet源码。看了HashSet的源码就会发现HashSet的底层实现是利用HashMap,所以对于HashSet的一些操作都是利用HasgMap的操作实现的。生命类一个HashMap成员...
阅读全文
摘要:在一个类的里面再定义的类,叫做内部类,也可以叫做寄生类,在平时的编程中很少用到内部类,而且显的特别乱。但是内部类也是有很大作用的:提供了更好的封装,把类隐藏在外部类中,这样其他的类不能调到。内部类可以使用外部类的所有数据,包括private修饰的。在jdk中哟哟很多地方都用到了内部类,在集合的源码中...
阅读全文
摘要:对于数组我们应该很熟悉,一个数组在内存中总是一块连续的存储空间,数组的创建使用new关键字,数组是引用类型的数据,一旦第一个元素的位置确定,那么后面的元素位置也就确定了,数组有一个最大的局限就是数组一旦创建,他的长度就是固定的,不可以进行更改,如果数组空间不够大,唯一的方法就是再创建一个大的数组,把...
阅读全文
摘要:迭代器模式是一种应用很广泛的设计模式,提供了一种方法顺序的访问一个集合中的元素,但是还不暴露该对象的内部细节。提供了一种方法遍历访问整个聚合的对象,这个聚合的对象一般是一个集合。把元素间的移动交给迭代器,不需要聚合对象的操作,就可以实现整个聚合对象的遍历。源码分析:在java中就有迭代器模式的实现,...
阅读全文
摘要:由于java是一种面向对象的语言,万事万物皆对象,用户定义一个类,这是一个广泛的定义,需要用户具体化,实例化这个广泛的类,确定这个具体的对象。在java程序中,对象可以被显式创建和隐式创建,主要说一下显式的创建对象的方式。在之前被问过创建对象有几种方式,当时就回答了有一种,用new关键字创建,这是最...
阅读全文
摘要:我们在开发javaweb项目的时候,经常会遇到jsp和Servet之间互相传值,既然有传值,就要有对象来传,这里先说Servlet的三大域对象,request,session,application他们共同的特点都是通过键值对传值,这样也很好理解,键是唯一的,通过键可以找到值。一、requestre...
阅读全文
摘要:在写项目中经常会把后台服务端的数据传到前台页面上。jsp与Servlet之间传值分为四种,jsp向Servlet传值,反过来Servlet向jsp页面传值,jsp之间传值,Servlet之间传值。Servlet向jsp页面传值:一、利用request这个对象在Servlet中设置键值对,在jsp页面...
阅读全文
摘要:一直在说Java的序列化和反序列化,只是知道如果要进行存储必须要序列化才可以,看到一篇文章说的是:Java序列化是指把Java对象转换为字节序列的过程;而Java反序列化是指把字节序列恢复为Java对象的过程。这句话说对于序列化总结的的很明白了。以下转自:http://blog.csdn.net/w...
阅读全文
摘要:一个类如果想要满足线程安全的条件:每个线程都能正常的执行原子操作,保证得到正确的结果这个类的对象可以同时被多个线程安全的访问在每个线程的原子操作都完成后,对象处于合理的状态一般情况下不可变类总是线程安全的,因为他的对象的状态始终不会改变,任何线程只能读取他的状态,而不能改变他的状态,例如String...
阅读全文
摘要:1、sleep()当一个线程调用sleep方法后,他就会放弃cpu,转到阻塞队列,sleep(long millis)方法是Thread类中的静态方法,millis参数设定线程睡眠的时间,毫秒为单位。当调用sleep方法的时候,可以让其他线程有机会执行,但是注意sleep方法不会释放对象锁,我们所说...
阅读全文
摘要:什么是异常?异常一般是指程序在编译期没有问题,但是在程序运行期出现的错误,一个程序会因为出现异常而终止运行,也就是我们常说的挂掉,在多线程下,异常只会影响所在的线程,对其他线程没有影响。Java异常的分类:Java是一种面向对象的编程语言,Java把异常也看成是一个对象。Throwable是所有异常...
阅读全文
摘要:之前一直在探讨利用new关键字创建String对象的个数,没有想过利用+连接字符串虚拟机是怎么实现的,下面利用jdk自带的反编译命令javap看一下String的执行过程例1: String s1 = "a"; String s2 = "b"; Str...
阅读全文
摘要:之前一直有个错误的观点,使用new关键字创建String对象的时候,只会在堆区创建一个对象,但是看到了这篇文章,从源码进行分析,让自己恍然大悟,使用new关键字创建String对象是会在常量池中创建一个字符串常量这个对象的(在常量池中没有这个对象的时候),当池子中已经有了这个字符串直接返回引用。作者...
阅读全文
摘要:合成模式有时也叫组合模式,对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。掌握组合模式的重点是要理解清楚 “部分/整体” 还有 ”单个对象“ 与 "组合对象" 的含义。把单个对象组织到树的结构中,以此描述整体与部分的关系。以下转自:http:/...
阅读全文
摘要:介绍:策略模式根据他的名字可以看出他是一套策略,策略模式就是这样,他管理着一套策略,在不同的情况下用不同的策略解决问题,各种策略之间相互独立,而且可以很灵活的替换。例子:我们都去购物网站购买过东西,作为网站的用户,被区分为高级会员,中级会员和初级会员,当你在买东西的时候就会发现各种会员之间的优惠是不...
阅读全文
摘要:Java是一种面向对象的编程语言,面向对象的三大特性就是继承,封装,多态。下面细细说一说多态。多态的定义:一个事物的多种形态,指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)有多态往往有动态绑定,动态绑定详见:http://bl...
阅读全文
摘要:我们说的绑定理解起来可以这么想,一个方法和那哪个类联系起来,就是我们在调用方法的时候判断调用的这个方法是属于哪个类的,在java面向对象的思想里,多态是个很重要的方面,而静态绑定与动态绑定就是多态的关键,事物的多种形态,也就是要调用哪个方法,执行什么,让一个类拥有什么特点。Java的绑定有静态绑定和...
阅读全文
摘要:Java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。instanceof关键字的作用是判断一个对象是否是一个具体类的实例,我们在重写equals方法中要先判断是否是同一...
阅读全文
摘要:jdk提供了javap命令用于查看字节码来查看程序执行赋值的顺序,看懂这些关键字可以很好的理解程序执行的过程转自:http://www.cnblogs.com/duanxz/archive/2014/05/14/3724426.html#topJava栈和局部变量操作Java虚拟机是基于栈的机器,几...
阅读全文
摘要:除了两种浮点型,剩下的几种基本数据类型的包装类几乎都实现了常量池,有好处用数据的时候直接去拿,没有再去创建,坏处是在程序编译的时候就存入大量数据不管用不用到。下面是一篇很好的文章,很详细,转自:http://www.hollischuang.com/archives/1058Integer 类在对象...
阅读全文
摘要:看了很多文章事实证明之前的通过new创建String对象只有一个是错误的,实际上创建一个或者创建两个对象,一个在堆区,一个在常量池,当常量池中已经存在就不会创建。看了一篇非常好的文章http://www.cnblogs.com/wxgblogs/p/5635099.html,详细讲述了创建Strin...
阅读全文
摘要:安装完IDEA之后遇到了问题,发现jdk安装完之后配置环境变量好困难,下面总结一下我的安装及配置方式:JDK下载链接:http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-...
阅读全文
摘要:参考:http://blog.csdn.net/ghsau/article/details/17839983http://blog.csdn.net/never_cxb/article/details/50543289最近想写一个注册界面,好多的网站注册的时候需要填写邮箱,向邮箱发一个验证链接,怎么...
阅读全文
摘要:想调试java虚拟机内存溢出的情况,在调试过程中总会出现一些不可预见的状况,正好在学linux,在windows上安装了虚拟机,安装的镜像是ubuntu(乌班图)装在了虚拟机中,装在虚拟机中好处是即使系统玩坏了也可以快速重装,不会对电脑中的window系统产生影响。遇到一个问题如何在linux中安装...
阅读全文
摘要:工厂模式的定义就是通过工厂创建对象,当用户需要创建大量不同的对象的时候,通过定义一个创建对象的接口,让子类自己决定创建哪一个对象,用户不再自行判断实例化哪一个对象,不用再去关心创建对象的复杂过程,我们通过创建一个工厂类,工厂类的作用就是判断需要创建哪个对象,并实例化。工厂模式分为简单工厂,抽象工厂和...
阅读全文
摘要:代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式顾名思义,有个代理,那这个代理做什么工作呢?我们平时生活中,我们遇到过的代理就是各个品牌的代理,一个产品不能让广大的消费者...
阅读全文
摘要:第一步:点击上方File选项找到Setting,在文本框中输入Tomcat,找到之后点击右下角的OK第二步:再次找到Setting,在文本框中输入Application Servers找到后,单击第三步:单击中间白色矩形框上方的绿色加号,找到Tomcat Server,单击,注意不是TomEE,是T...
阅读全文
摘要:介绍:模板模式定义了一个模板抽象类,这个抽象类中定义了方法调用的形式,顺序。子类通过重写对方法进行实现,但是调用方式不能改变。模板模式中的模板中定义了核心的代码骨架,一些有着不同方式实现的代码放在子类中,模板模式规定了方法执行的方式或者可以说是方法的执行顺序,执行结构,使得子类只能遵守这些规定。模板...
阅读全文
摘要:介绍:享元模式意思是说系统中含有很多相同的对象,这时候没有必要用这么多的相同的对象,既大量消耗内存又没有用,这个对象只要一个就可以了,大家共享一个对象,享元模式主要减少了对象的创建,以减少内存和提高性能为目的。享元模式试图重用已有对象,找到可以用的对象就用,如果没有找到再进行创建。提到享元模式,就要...
阅读全文
摘要:介绍:适配器模式是将一个类的接口转换成用户希望的另一种接口最好的例子就是笔记本电脑的电源适配器,家用的电源是220v的而电脑承受不了这么高的电压,假设他可以承受15v的电压,怎么办呢 ,我们不能把家里的电压变成15v,也不能把电脑的电压提高到220v,最好的办法就是我们需要用一个东西转换他,把220...
阅读全文
摘要:装饰器设计模式顾名思义就是装饰某个对象,让一个功能单一的对象拥有一些其他的功能,这些功能的添加是动态的。用户可以随意的扩展原有对象的功能。一方面代替了继承,相对于继承带来的功能扩展,装饰器模式可以理解为动态的扩展,用户需要什么就扩展什么功能,非常灵活,而继承带来的缺点就是不方便修改,是静态的扩展。由...
阅读全文
摘要:单例模式是非常常用的设计模式,他确保了一个类只有一个对象,并且这个对象是自己创建的,外界可以获取使用到这个对象。单例模式一般有两种:懒汉式,饿汉式(其实还有一种登记式,把创建的对象放在map集合中,有就直接用,没有就创建)单例模式通过构造方法私有化,外界无法创建对象,下面是两种单例的实现饿汉式:pa...
阅读全文
摘要:Java总是在讨论是传递还是引用传递,Java没有像C语言那样拥有指针,在看到引用传递和值传递很多的解释之后,更相信引用传递和值传递归根到底都是值传递,只不过引用传递的时候看上去很高大上,其实是把变量的地址值,注意是地址值传递过去,赋值给其他的变量。看一个值传递的例子:package demo_pa...
阅读全文
摘要:weka提供了几种处理数据的方式,其中分类和回归是平时用到最多的,也是非常容易理解的,分类就是在已有的数据基础上学习出一个分类函数或者构造出一个分类模型。这个函数或模型能够把数据集中地映射到某个给定的类别上,从而进行数据的预测。就是通过一系列的算法,将看起来本来分散的数据,给划分成一个个不同的类,我...
阅读全文
摘要:人际关系的基本技巧:不要批评,责怪,或抱怨:一味的批评,责怪,抱怨只会让事情变得越来越糟,一个人做事不管对与错,我们要看到事情的长处,对于我们可以学到什么,适当的看到缺点,想想自己有没有,想想自己怎么改,怎么做。吾日三省吾身。但是不要批评,更不要责怪,抱怨。只有不聪明的人才会这么做,一句话说得好:上...
阅读全文
摘要:栈和队列是我们接触的比较基本的数据结构,当时在学数据结构的时候,根本不懂这是什么,什么先进先出,先进后出,但是后来有一天突然就想明白了,可能对新的知识有个接触的过程。在后来的为了更好的理解栈和队列的特点,决定用java模拟栈和队列用什么来存储数据呢?数组很好,但是每次添加数据,数组的长度怎么设置,由...
阅读全文
摘要:现在好多的小说网站只提供阅读,并不提供下载服务,既然能够读,可以在网页上看,那么小说内容一定在网页的源代码中用浏览器,右键,查看元素,查看网页源代码,以及代码结构(火狐浏览器)依旧使用Jsoup技术获取网页源代码(Jsoup有个选择器,把带有某种属性的标签选择出来,可以指定属性值),之后进行解析提取...
阅读全文
摘要:进程和线程的区别:进程是指运行中的应用程序,每一个进程都有自己的独立的内存空间,一个应用程序可以同时启动多个进程,比如多次打开同一个应用软件,多个火狐浏览器同时打开线程是指进程中的一个执行流程,一个进程可以有多个线程组成,一个进程中可以同时运行多个不同的线程,分别执行不同的任务,当进程中的多个线程同...
阅读全文
摘要:Java提供了gc机制,jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要集中于 java 堆和方法区中,在程序运行期间,这部分内存的分配和使用都是动态的.垃圾回收机制,java不需要向C...
阅读全文
摘要:以下这道题通过一步一步的分析优化可以看出暴力搜索方法,记忆搜索方法,动态规划方法的优化过程,往往写出暴力搜索方法是比较容易的,这样一步步的分析可以更好的理解动态规划方法。题目:给定数组arr,arr中所有的值都为正数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个整数ai...
阅读全文
摘要:之前有看过一段时间爬虫,了解了爬虫的原理,以及一些实现的方法,本项目完成于半年前,一直放在那里,现在和大家分享出来。网络爬虫简单的原理就是把程序想象成为一个小虫子,一旦进去了一个大门,这个小虫子就像进入了新世界一样,只要符合他的口味的东西就会放在自己的袋子里,但是他还不满足,只要见到可以打开的门,他...
阅读全文
摘要:看到过一篇文章介绍爬虫,想着可以用爬虫上教务网爬取期末成绩,利用闲着的时间仔细研究了一下Java爬虫,发现网上很少用Java写爬虫,很多都是python,没有接触过这个语言,不做过多的评价。通过进一步的查询得到一个重要的信息,Java有一个专门处理网页源代码的类,这不就是写爬虫的重点吗,通常Java...
阅读全文
摘要:哈希函数又叫散列函数,一个哈希函数的输入域可以是非常大的范围,但是他的输出域是一个固定的范围哈希函数的性质:典型的哈希函数都拥有无限的输入值域输入值相同的时候,输出值也一样输入值不一样时,输出值可能一样,也可能不一样不同的输入值得到的哈希值,整体均匀的分布在输出域上目前应用最为广泛的hash函数是S...
阅读全文
摘要:对于大数据相关的面试题,往往没有固定的答案,题目往往都是给定大规模数据,固定的内存空间(往往会很小),主要考察的就是把大规模数据进行化简,大问题分解成小问题,用内存开销非常小的代价得出结果。以下比较经典的解题方法:原文链接:http://www.cnblogs.com/CheeseZH/p/5283...
阅读全文
摘要:数据挖掘和机器学习近年来被大多数人所听说,这两个词近年来因为大数据的听上去高大上的词汇,其实在我们的生活中到处存在,往往是计算机知识中融入了数学(统计方面的知识)。数据挖掘往往和机器学习一起出现在各种地方,要用到数据挖掘的地方必有机器学习,在数据量小的时候,他们可能不会有依赖关系,往往通过人工的处理...
阅读全文
摘要:以下是IntelliJ Idea2017版的,基本上不会有什么变化IntelliJ Idea这个编译器现在非常流行,他强大的快捷键非常好用,相比于eclipse,IntelliJ Idea界面也比eclipse高大上,以下是IntelliJ Idea的常用快捷键基本的复制,剪切,粘贴,全选还是有的C...
阅读全文
摘要:链表是一种重要的数据结构,相比于数组,数组更像是一个顺序表,数组只要第一个元素固定,那么在他后面的元素的地址一定固定,数组在内存中是一块连续的存储区域,我们可以根据下标找到他的每个元素,这是数组和链表的一个区别链表,见名思意,一个链子连接起来的表,元素之间的联系靠的是这个链子,这也决定了链表中的每个...
阅读全文
摘要:为什么要有二叉树的序列化和反序列化,因为我们构造的二叉树,都是存放在计算机的内存中,但是我们想要根据记录重新构造出二叉树就需要二叉树的序列化和反序列化,将二叉树以文件的方式存下来叫做二叉树的序列化,从文件构造出二叉树叫做二叉树的反序列化。这里说明一下满二叉树和完全二叉树的区别:满二叉树(如下图)可以...
阅读全文
摘要:二叉树是一个非常重要的数据结构,在好多的面试题中总会出现,大多数要求回答者实现在二叉树的按层遍历的同时实现换行,其实按层遍历很好想,但是要求换行输出的时候,很多时候就比较懵,无从下手,其实仔细想一想问题就会水落石出。先构建节点类TreeNode,让他有一个String类型的数据值,一个节点类型的左孩...
阅读全文
摘要:第一次写博客,不对的地方欢迎指正以下的测试时间只是在本人的电脑上直接运行的,只是简单的对比,并不是标准的时间,可能涉及到后台程序的影响冒泡排序:时间复杂度O(n*n),可以从前向后,也可以从后向前进行排序,从后向前(自我感觉还是从后向前好,冒泡不就是向上冒),把最后一个和倒数第二个进行性比较,如果比...
阅读全文

浙公网安备 33010602011771号