7 青春微凉不离殇

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 2w+

java图片压缩--Thumbnailator

最近在java开发中遇到了图片处理的问题,我使用的是Thumbnailator。Thumbnailator是一个优秀的图片处理的开源java类库,使用起来很方便。图片原图:1、指定大小进行缩放public class PicUtil { public static void main(String[] args) { PicUtil.commpr

2017-11-20 16:15:26

springMvc+Mybatis整合

项目结构1、导入相关的jar包2、配置web.xml文件 org.springframework.web.context.ContextLoaderListener contextConfigLocation classpath:config/applicationContext.xml, he

2017-11-18 14:02:36

HTTP协议

HTTP简介HTTP协议(Hyper Text Transfer Protocol   超文本传输协议)是因特网上应用最广泛的一种网络传输协议。所有www文件都必须要遵守这个标准。HTTP基于TCP/IP通信协议来传递数据(HTML文件,图片文件,查询结果等)。HTTP工作原理HTTP协议采用客户/服务器通信模式,服务器端为HTTP服务器,也叫WEB服务器;客户端为HTTP客户程序

2017-09-20 17:27:45

经典排序算法--插入排序

一般来说,插入排序采用in-place在数组上实现。具体算法描述如下:1、从第一个元素开始,该元素可以认为已经被排序。2、取出下一个元素,在已经排序的元素序列中从后向前扫描。3、如果该元素(已排序)大于新元素,则将该元素移到下一位置。4、重复步骤3,直到找到已排序的元素小于或者等于新元素的位置。5、将新元素插入到该位置中。6、重复步骤2图片演示操作如下:如果

2017-09-08 12:30:04

经典排序算法--选择排序

选择排序是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,放到排序序列末尾。以此类推,直到所有的元素均排序完毕。选择排序的交换操作介于0和(n-1)次之间;选择排序的比较操作为n(n-1)/2次之间;选择排序的赋值操作介于0和3(n-1)次之间;其平均复杂度为O(n2)。代码如下:publi

2017-09-08 11:20:59

经典排序算法--冒泡排序

排序面试题是各大IT面试必考的题目,问到排序问题就会延伸出算法问题。我们先来分析下冒泡排序的程序及算法。程序代码如下:public class Test { public static void bubbleSort(int[] source){ for(int i=source.length-1;i>0;i--){ for(int j=0;j<i;j++){ if(s

2017-09-05 23:06:32

java system.out.printf()的使用方法

最近遇到了system.out.printf("%d ",i),没有明白什么意思,查了下system.out.printf()的使用方法。代码如下:public static void main(String[] args) { // 定义一些变量,用来格式化输出。 double d = 123.4567; String

2017-09-05 21:17:40

"=="和equals()的深入解析

我们先来看一段代码:public static void main(String[] args){ String a="a"+"b"+1; String b="ab1"; System.out.println(a==b); }运行结果:true很多人可能会说对比两个对象不是用equals()吗?对于运行结果可能有人答对了,但是为什么会这样呢?要理解这个问题,我们首先了解什

2017-09-05 13:24:17

5种网络IO模型

同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO是一个东西。这其实是因为不同的人的知识背景不同,并且在讨论这个问题的时候上下文(context)也不

2017-08-31 17:23:11

8,64,256都是2的阶次方数,用java编写程序来判断一个数是不是2的阶次方数

该面试题考察的知识点是输入/输出流、二进制、位运算符,我们来分析下这道题怎么实现。解析:如果一个数是2的阶次方数,那么它的二进制数的首位一般是1,后面接若干个0。比如8就是1000,64是1000000.如果将这个数减1后,再与该数做和(&)运算,则应该全为0(例如:8与7,一个二进制数是1000,一个二进制数是111,它们做和后全为0)。所以((d-1)&(d))==0。注:位运算符与

2017-08-31 17:13:15

写一个Java应用程序,从键盘输入一个整数,然后输出它的平方值立方值

这是一个跟输入/输出流有关的面试题。下面我们来分析怎么实现该功能。解析:在java中没有像C语言那样有一个专供接收从键盘输入值的scanf函数,所以一般的做法是从键盘输入一行字符,保存到字符串s中,再将字符组成的字符串s转换为整型数据返回。代码如下:import java.io.BufferedReader;import java.io.IOException;import jav

2017-08-31 16:40:04

简单说说spring的事务机制,以及是如何管理的?

事务管理可以帮助我们保证数据的一致性,对应企业的实际应用很重要。Spring的事务机制包括声明式事务和编程式事务。编程式事务管理:Spring推荐使用TransactionTemplate,实际开发中使用声明式事务较多。声明式事务管理:将我们从复杂的事务处理中解脱出来,获取连接,关闭连接、事务提交、回滚、异常处理等这些操作都不用我们处理了,Spring都会帮我们处理。声明式事务管理

2017-08-26 13:46:53

线程--生产者消费者模式

如果对同一个对象多个线程进行操作容易造成死锁,为了解决这个问题我们用到了生产者消费者模式。生产者消费者问题,也称有限缓冲问题,是一个多线程同步问题的经典案例。该问题描述了两个共享固定大小缓冲区的线程--即所谓的“生产者”和“消费者”--在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程。与此同时,消费者也在缓冲区消耗这些数据。该问题的关键是保证生产者不会在

2017-08-26 13:17:16

java语言中垃圾回收的优点和原理

1、java的一个重大特点就是引进了垃圾回收机制,它使得java程序员在编写程序的时候不用考虑内存管理。2、由于有了垃圾回收机制,java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。3、垃圾回收机制有效的防止内存泄露,有效的使用可以使用的内存。GC(Gabage Collection)工作原理:当创建对象时,GC就开始监视这个对象的地址、大小以及使用情况。通常,G

2017-08-24 18:18:14

JSP和Servlet有哪些相同点和不同点,它们的联系是什么?

相同点:它们本质上都是java类 不同点:1、JSP经编译后变成Servlet2、jsp更擅长表现于页面显示,Servlet更擅长于逻辑控制3、Servlet的应用逻辑是在java文件中,并且完全从表现层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。 联系:JSP是Servlet技术的扩展,本质上是Ser

2017-08-24 18:13:13

JSP的生命周期

1、解析阶段:Servlet容器解析JSP文件的代码,如果有语法错误,就会向客户端返回错误信息2、翻译阶段:Servlet容器把JSP文件翻译成Servlet源文件3、编译阶段:Servlet容器编译Servlet源文件,生成Servlet类4、初始化阶段:加载与JSP对应的Servlet类,创建其实例,并调用它的初始化方法。5、运行时阶段:调用

2017-08-24 18:07:42

使用http请求,中文乱码问题--解决方法

最近写了一个客户端向服务器端发起http请求的功能,服务器端返回的数据中包含中文,奇怪的是中文个数是偶数个的时候,没有乱码,但是奇数个数时,最后一个汉字会编程问号?,以前也出现过类似问题,也解决了,但是没有记录,现在一下子想不到该怎么解决了代码是这样的:服务器端部分代码:[html] view plain copy print?

2017-08-24 18:04:34

spring中bean的自动装配和作用域

上一篇博客《spring依赖注入(dependency injection)》介绍了依赖注入的几种方式,今天来看下自动装配--autowire。创建java项目,结构如下UserDao代码public interface UserDao { public void getUser();}UserDaoImpl代码public class UserDaoImpl impl

2017-08-21 13:40:55

spring依赖注入(dependency injection)

spring依赖注入包括两个方面:      依赖:指bean对象创建依赖于容器。bean对象的依赖资源      注入:bean对象的依赖资源由容器来设置和装配Spring的注入有两类:1、构造器的注入:使用constructor-arg 2、setter注入要求被注入的属性,必须有set方法,set方法生成的方法名,由se

2017-08-20 21:24:30

使用IOC创建对象

使用IOC创建对象一共有三种方式。1、通过无参构造方法来创建User.javapublic class User { public User() { System.out.println("无参构造方法创建"); } private String name; public void setName(String name) { this.name = name;

2017-08-20 18:39:17

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!