JAVA
智造官
菜鸟走向大神的路还很长,且行且坚持!
XMIND地址:https://www.xmind.net/share/hangshuLi/
展开
-
java的BitSet实现位排序算法,复杂度为O(n)
今天小树用Java语言写了个位排序算法,算法复杂度为O(n).import java.util.*;public class BitSort { public static void main(String[]args){ final int size=10; int A[]={23,44,1,2,34,56,11,7,9,25}; bitSo原创 2017-04-29 14:23:57 · 1951 阅读 · 2 评论 -
java中hashcode和equals区别和联系
以下是关于HashCode的官方文档定义:hashcode方法返回该对象的哈希码值。支持该方法是为哈希表提供一些优点,例如,java.util.Hashtable 提供的哈希表。 hashCode 的常规协定是: 在 Java 应用程序执行期间,在同一对象上多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是对象上 equals 比较中所用的信息没有被修改。从某一应用程序的一次转载 2017-07-21 09:53:59 · 683 阅读 · 0 评论 -
二叉树一些总结
转载自http://blog.csdn.net/luckyxiaoqiang/article/details/7518888/转载 2017-07-22 19:22:40 · 211 阅读 · 0 评论 -
Java设计模式
转载自http://blog.csdn.net/column/details/java-designpattern-w.htmlMVC\MVP\MVVM模式java单例模式(双重检查加锁):只有在第一次实例化时才启用同步机制创建对象,提高了性能。 注意:为什么这里采用双重检查锁定?之前我们不是已经对 student 对象进行了判空操作了么,这里怎么还要进行第二次判空?其实在理解了多线程执行的过程,转载 2017-07-24 12:56:41 · 235 阅读 · 0 评论 -
springMVC以附件形式下载PDF文件(解决了下载后文件格式出错无法打开的问题)
springMVC以附件形式下载PDF文件(解决了下载后文件格式出错无法打开的问题) 公司的上网行为管理系统项目有一个功能模块是统计报表,今天在完成这个功能的过程中碰到一个需求:将服务器上的PDF文件以附件的形式下载到本地。 马上想起springMVC提供了文件下载的功能,非常开心。然而,不碰上点bug不足以写博客啊! 先贴完整代码: public ResponseEntity<byte原创 2017-09-18 10:55:16 · 4427 阅读 · 6 评论 -
hashCode不相等则equals一定不相等,equals相等则hashCode一定相等,覆盖equals时总要覆盖hashCode(记录一下)
http://www.360doc.com/content/15/0519/11/5054188_471654948.shtml再来一篇好文,Java中==和equals的区别,equals和hashCode的区别(1)如果两个对象根据equals()方法比较是相等的,那么调用这两个对象中任意一个对象的hashCode方法都必须产生同样的整数结果。 (2)如果两个对象根据equals()方法比较是转载 2017-09-26 17:07:33 · 5147 阅读 · 0 评论 -
java中的condition
java中的condition Condition 将 Object 监视器方法(wait、notify 和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set(wait-set)。其中,Lock 替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。转载 2017-09-19 14:48:48 · 564 阅读 · 3 评论 -
解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题(转)
解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题转载 2017-09-19 15:14:08 · 27765 阅读 · 11 评论 -
前端EChart图表转换为图片保存到服务器路径
前端EChart图表转换为图片保存到服务器路径下前端代码: var topValue=document.getElementsByName("top")[0].value;原创 2017-09-19 17:06:49 · 10643 阅读 · 14 评论 -
Java设计模式编程中的状态模式和策略模式
Java设计模式编程中的状态模式和策略模式1.策略模式和状态模式的区别1)策略模式封装了一系列的相关的算法,使用客户端可以在运行时通过组合和委托来使用不同的行为,而状态模式使得对象可以在不同的状态下展现出不同的行为。 2)状态模式封装的是对象的状态,而策略模式封装的是一个算法或者策略。由于状态是和对象耦合在一起的,它无法重用,而通过策略或者算法独立于它的上下文,使得它们可以重复使用。转载 2017-09-19 17:30:01 · 456 阅读 · 2 评论 -
HashMap源码分析(一些博客收藏)
这年头,不看看源码都不好意思说自己会java啊,撸起袖子干吧!!转载几篇讲的比较好的博客: HashMap源码分析 HashMap实现原理及源码分析 Java HashMap源代码详解认真读读还是能学到很多的,站在巨人的肩膀上看世界。转载 2017-09-28 08:48:42 · 301 阅读 · 0 评论 -
在Linux上(我的服务器是Ubuntu) 用redis-trib.rb搭建redis集群,并在客户端使用spring-data-redis连接(亲测)
今天好好讲一下redis集群的搭建方法、遇到问题和解决方法。 首先就是下载安装redis,网上流传两种方式: 1.使用下列命令(不推荐使用这种方式): sudo apt-get update sudo apt-get install redis-server 启动 Redis ./redis-server查看 redis 是否启动? ./redis-cli以上命令将打开以下终端:原创 2017-09-26 12:21:58 · 2419 阅读 · 4 评论 -
iText整合图片和自带表格生成PDF文件(很好用的框架)
1.首先是maven的pom.xml配置文件部分代码,这里我直接将所有itext使用的包引入进来: <!-- 设定主仓库,按设定顺序进行查找。 --> <repositories> <repository> <id>jeesite-repos</id> <name>Jeesite Repository</name>原创 2017-09-20 11:23:15 · 3343 阅读 · 4 评论 -
随便一写
作者:GangsterHyj 链接:https://www.nowcoder.com/discuss/16124 来源:牛客网2017年秋招Java后台的学习与面试经验转载 2017-09-20 12:11:03 · 822 阅读 · 3 评论 -
redis cluster和redis sentinel的一些文章
Redis-Spring Data整合Jedis Redis Sentinel主从高可用方案(附Jedis Sentinel教程) 使用Spring-data-redis操作Redis的Sentinel spring-data-redis官网下载地址 redis菜鸟教程来几篇比较新的: 使用Spring-data-redis操作Redis的Sentinel Spring整合redis转载 2017-09-28 15:26:45 · 825 阅读 · 3 评论 -
Java写一个不可变类(如String)
(转载) 本文由 ImportNew - 唐小娟 翻译自 Journaldev。欢迎加入翻译小组。 不可变的对象指的是一旦创建之后,它的状态就不能改变。String类就是个不可变类,它的对象一旦创建之后,值就不能被改变了。阅读更多: 为什么String类是不可变的不可变对象对于缓存是非常好的选择,因为你不需要担心它的值会被更改。不可变类的另外一个好处是它自身是线程安全的,你不需要考虑多线程环境下转载 2017-07-16 20:39:13 · 387 阅读 · 0 评论 -
Java多线程综述
XMIND文件下载链接:http://www.xmind.net/m/yiFy原创 2017-07-16 14:52:58 · 338 阅读 · 0 评论 -
两种方式Java实现二分查找法
小树今天使用递归方法实现了二分查找法,也写了普通的二分查找法,代码如下:import java.util.*;public class BinarySort { public static void main(String[]args){ int A[]={2,32,4,12,22,31,20,45,13,23}; BitSort.bitSort(A);//调原创 2017-04-29 15:04:08 · 491 阅读 · 0 评论 -
详解Java注解(上)
注解是Java的一种机制,允许开发人员向代码的不同部分附加信息,它并不是代码的一部分,因为它不会修改代码在运行时的行为,不会修改代码的语义。它主要用于对方法是否依赖方法、方法是否完整,类是否引用了其他类等给出提示信息帮助你编写正确代码。 分类: 1.内置的注解 2.自定义注解 3.为注解添加的注解一.内置的注解 1.@Deprecated 作用:标记在方法和类前表示它们是已经废弃的方法和原创 2017-05-12 21:15:09 · 218 阅读 · 0 评论 -
详解Java注解(下)
上一篇文章我们讲了注解的前两个:1.内置的注解 2.自定义注解 ,再回顾一下知识:*注解是Java的一种机制,允许开发人员向代码的不同部分附加信息,它并不是代码的一部分,因为它不会修改代码在运行时的行为,不会修改代码的语义。它主要用于对方法是否依赖方法、方法是否完整,类是否引用了其他类等给出提示信息帮助你编写正确代码。 分类: 1.内置的注解 2.自定义注解 3.为注解添加的注解*接原创 2017-05-12 22:55:38 · 207 阅读 · 0 评论 -
Java中字符串String类常用方法示例
小树今天想跟大家分享一下Java中字符串String类常用方法示例,示例代码如下:package array;import java.util.*;public class MultiArray {public static void main(String[]args){//Date date=new Date();//System.out.println原创 2017-04-22 23:10:50 · 622 阅读 · 0 评论 -
用Java实现十六进制转十进制
import java.util.*;public class Transfer {public static void main(String[]args){Scanner input=new Scanner(System.in);String hex=input.nextLine();System.out.println("hex:"+hex.toUpperCas翻译 2017-04-23 10:38:44 · 1951 阅读 · 0 评论 -
Java实现十六进制转换为十进制代码
import java.util.*;public class Transfer {public static void main(String[]args){Scanner input=new Scanner(System.in);String hex=input.nextLine();System.out.println("hex:"+hex.toUpperCas原创 2017-04-23 10:43:10 · 6390 阅读 · 0 评论 -
Java基本数据类型对应的包装类
Java在java.lang包中为每一种基本类型都提供了一个包装类,对应关系如下:包装类ChatacterBooleanByteShortIntegerLongFloatDouble基本数据类型charbooleanbyte原创 2017-04-23 11:33:23 · 645 阅读 · 0 评论 -
Java中String、StringBuilder和StringBuffer
三者都是处理字符串的方案,不过StringBuilder和StringBuffer可以添加、插入和追加新的内容,而String对象一旦创建,它的值也就确定了。StringBuffer和StringBuilder相比,除了StringBuffer中修改缓冲区的方法是同步的之外其他基本相似,在程序中一般都可以用StringBuffer代替StringBuilder。StringBuffer适用原创 2017-04-23 13:18:01 · 274 阅读 · 0 评论 -
Java中的main()方法详解
转载自http://lavasoft.blog.51cto.com/62575/53263/Java中的main()方法详解 在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法转载 2017-04-23 14:43:12 · 929 阅读 · 0 评论 -
自己用Java实现一个“栈”类,包括push和pop基本操作
“栈”是一种“后进先出”的方式存放数据的数据结构。 今天小树动手写了一个简单的栈类(存储int值),代码如下: (1)StackOfInteger类:public class StackOfIntegers { private int[]elements; private int elementSize; private final static int DEFAU原创 2017-04-24 13:37:26 · 8305 阅读 · 0 评论 -
SSH(Struts2+Spring4+Hibernate5)示例
分享一个很适合新手入门的SSH(Struts2+Spring4+Hibernate5)整合示例(小树亲测有效):如何快速开发SSH框架项目的一般步骤: (1)创建Dynamic Web Project并且导入jar包。 (2)我习惯上把classes文件夹由build文件夹内转移到WEB-INF下。在项目上右键Build Path——〉Configure Build Path。设置Default转载 2017-05-06 17:46:47 · 807 阅读 · 5 评论 -
Java中static方法和普通方法的区别
在类中使用static修饰的静态方法会随着类的定义而被分配和装载入内存中;而非静态方法属于对象的具体实例,只有在类的对象创建时在对象的内存中才有这个方法的代码段。注意:非静态方法既可以访问静态数据成员 又可以访问非静态数据成员,而静态方法只能访问静态数据成员; 非静态方法既可以访问静态方法又可以访问非静态方法,而静态方法只能访问静态数据方法。 原因:因为原创 2017-05-08 13:36:47 · 70351 阅读 · 17 评论 -
浅谈JAVA中静态绑定和动态绑定(源自《深入理解Java虚拟机》)
静态绑定:发生在编译期; 主要是方法重载(overload); 在编译阶段,javac编译器会根据参数的静态类型决定使用哪个重载版本。 动态绑定:发生在运行期; 主要是方法重写(override); 在运行阶段,Java虚拟机根据参数的实际类型决定调用哪个重写版本,查找的顺序是从子类->父类,直到找到该方法的声明为止;如果在层次结构的任何类中都找不到该方法,则虚拟机抛出错误信息。(1)静态绑定:翻译 2017-05-08 14:32:21 · 662 阅读 · 0 评论 -
深度理解依赖注入(Dependence Injection)(IOC,Inversion of control,控制反转)
今天分享一篇依赖注入的详细介绍博文,看完感觉受益颇多,推荐大家看看。 http://www.cnblogs.com/xingyukun/archive/2007/10/20/931331.html转载 2017-06-14 15:31:32 · 378 阅读 · 0 评论 -
(转存)深入理解Java的接口和抽象类
深入理解Java的接口和抽象类包含抽象方法的类称为抽象类,但并不意味着抽象类中只能有抽象方法,它和普通类一样,同样可以拥有成员变量和普通的成员方法。注意,抽象类和普通类的主要有三点区别: 1)抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方法),缺省情况下默认为public。转载 2017-09-20 19:26:07 · 186 阅读 · 0 评论