Java

  • Java修改图片dpi
    Java修改图片dpi

    原理是:GraphicsMagick + libpng +Java版调用工具:gm4java 步骤: 下载libpng 解压到目录 进入目录执行 ./configure make make install 下载GraphicsMagick解压到目录 进入目录执行 ./configure LDFLAGS='-L/usr/local/lib' CC=clang make make install make clean 然后终端输入gm 如果提示有help字样表示安装成功,否则 vi /etc/pro

    dpi, JavaMay 11

  • java远程调用linux的命令或者脚本

    转载请出自出处: Java通过SSH2协议执行远程Shell脚本(ganymed-ssh2-build210.jar) 使用步骤如下: 1.导包 官网下载: http://www.ganymed.ethz.ch/ssh2/ maven坐标: <dependency> <groupId>com.ganymed.ssh2</groupId> <artifactId>ganymed-ssh2-build</artifactId> <version

    linux, Java, ganymed-ssh2, 远程执行linux脚本May 9

  • java 序列化和反序列化
    java 序列化和反序列化

    本文内容按如下方式组织: 第一部分给出了序列化和反序列化的定义,以及其在通讯协议中所处的位置: 第二部分从使用者的角度探讨了序列化协议的一些特性: 第三部分描述在具体的实施过程中典型的序列化组件,并与数据库组建进行了类比: 第四部分分别讲解了目前常见的几种序列化协议的特性,应用场景,并对相关组件进行举例: 最后一部分,基于各种协议的特性,以及相关benchmark数据,给出了作者的技术选型建议. 一.定义以及相关概念 互联网的产生带来了机器间通讯的需求,而互联通讯的双方需要采用约定的协议,序列化

    Java, 序列化, 反序列化May 9

  • 用于调式的设计模式----java bug 模式详解

    (1)最大化静态检查. 尽可能设置final字段. 将不可能被改写的方法设置为final. 包括作为默认值的类. 对异常情况进行检查,以确保所有的客户端程序都能够处理异常情况. 定义新的异常类型精确区分各种异常情况. 当某个类的实例将一个状态或固定数目的状态用于composite层次结构中的不同子类中时,就要中断这个类. 清除所有可能性涉及平台相关性的行为. 在尽可能多的平台上进行测试. 将类型转换和instanceof测试降至最少. 使用单例设计模式帮助最小化instanceof的使用. 使用

    Java, bug, 用于调式的设计模式, 模式详解May 9

  • JVM常用分析工具JPS/JINFO/JSTACK/JSTAT/JMAP详解

    最近一直在上项目,导致博主天天加班幸福感爆棚,有木有. 平时一直没有关注过JVM,最近上了一个新的项目,它对内存的需求量比较大,导致目前项目在用的JVM参数不能满足他的需求.起初还没发现是这方面问题,后来在启动的时候报错了,一报错不要紧,要紧就要紧在博主我要调整JVM的参数了.调整参数也不要紧,更要紧的是调不对很让我着急. 因此,我就百谷了下,对JVM的相关内容突击了一下,受益匪浅啊. 废话不扯了,下面就是我的学习笔记啦.本篇博文就和大家分享下平时去分析JVM以及排故障时需要用到的几款工具. 目

    jvm, jps, jinfo, Java, jstackMay 9

  • java 关于不定长参数的方法设计 参数个数不定的方法设计

    java 关于不定长参数的方法设计 在java SE 5.0 以前的版本中,每个java方法都是有固定数量的参数.然而,现在的版本提供了可以用可变的参数数量调用的方法(有时候称之为"可变参"方法).相信大家都见过和用过C语言中的printf函数,它的参数就是不定的. 在java中大家很熟悉的System.out.printf("max= %f;\n", m); System.out.printf("%d", n); System.out.prin

    Java, 参数个数不定的方法设计May 8

  • java ftp上传文件慢的解决方案

    FTPClient ftp = new FTPClient(); ftp.connect("172.16.2.5", 21); ftp.login("aaa", "aaaa"); ftp.setFileType(FTPClient.BINARY_FILE_TYPE); ftp.changeWorkingDirectory("C:\\FtpPublic"); InputStream input = new ByteArrayIn

    Java, ftp上传文件慢的解决方案May 7

  • highcharts导出图片

    中文乱码是因为bak运行于java,java lib中没有中文字体造成 php服务时,出现Error while converting SVG,因为java要用绝对路径才行 参考 1linux系统中jre不支持字体解决方法 http://blog.csdn.net/kenera/article/details/11593863 2highcharts exports Error while converting SVG. http://bbs.hcharts.cn/archiver/tid-41

    batik, Java, PHP, highchartsMay 7

  • mysql/Java服务端对emoji的支持

    问题描述: 如果UTF8字符集且是Java服务器的话,当存储含有emoji表情时,会抛出类似如下异常: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x94' for column 'name' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) at com.mysql.jdbc.MysqlIO.checkErrorPac

    Java, MySQL, emoji, utf8mb4May 6

  • myeclipse 中 解决 java heap space 方法
    myeclipse 中 解决 java heap space 方法

    今天运行myeclipse时出现了java.lang.OutOfMemoryError: Java heap space的错误,查找后解决如下: 从Intalled JREs里修改:window->Preferences->Java->Installed JREs,选择当前的JRE,然后edit它:在新窗口里设置Default VM Arguments为 -Xms512M -Xmx512M即可:这个设置应该对所有的工程都有效. 修改为-Xms64m -Xmx256m也可以的. 在myec

    myeclipse, heap, jres, Java, Installed, arguments, Default, spaceMay 5

  • Java开发中的23种设计模式详解
    Java开发中的23种设计模式详解

    一.设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元模式. 行为型模式,共十一种:策略模式.模板方法模式.观察者模式.迭代子模式.责任链模式.命令模式.备忘录模式.状态模式.访问者模式.中介者模式.解释器模式. 其实还有两类:并发型模式和线程池模式.用一个图片来整体描述一下: 二.设计模式的六大原则 1.开闭原则(Open Clo

    Java, 设计模式May 5

  • java Future FutureTask 并发操作

    1.1 综述 创建线程有两种方式:extends Thread || inplements Runable,但是这两种方式都有一个缺陷,就是执行完任务后不能获取执行结果. 如果非要获取到执行结果的话,就必须通过共享变量或者是线程通信的方法来达到效果,使用较为麻烦,为了解决这种问题,java提供了Callable Future ,通过他们可以再任务执行完毕后得到任务执行结果. 1.2 Runable Callable 对比 java.lang.Runable是一个接口,声明了run()方法: pu

    Java, 并发, Future, FutureTaskMay 5

  • Java多线程中关于notify和wait

    程序功能:4个线程,2个线程对某个数值进行加1:2个线程进行减1,要求该数在0和1之间切换.程序如下,大家看看问题出在哪里: DecThread类,对sample的i进行减1的线程: public class DecThread extends Thread{ private Sample sample; public DecThread(Sample sample, String name){ super(name); this.sample = sample; } @Override pub

    Java, 多线程May 4

  • java中ThreadLocal类的使用

    ThreadLocal<T>类位于java的lang包中,该类的作用是为每个线程提供单独的变量.即如果一个类中存在一个ThreadLocal变量,对该类的赋值是在不同的线程内进行的,那么该线程获取的值只有是该线程之前设置的值. package com.app.thread; public class ThreadLocalTest { public static void main(String[] args) { final Account account = new Account();

    threadlocal, JavaMay 4

  • 为什么匿名类中使用局部变量时要声明为final呢

    一个方法内部有两个线程共享内部类对象的时候,这个方法的局部变量如果能被访问, 则就成为临界资源,导致程序不稳定,所以必须是final的. 反正总而言之,java就是不允许你在局部内部类里面更改所在方法的局部变量就是了 public class MyBase { public AnoClass func(final int i){ return new AnoClass(){ int j=i; { System.out.println("Anonymous Inner class");

    Java, 匿名内部类May 3

  • Mybatis源码研究序

    公司开发项目中,用到了Mybatis这个框架.所以,开始了对Mybatis的认真学习-应用-研究. DbUtils,Mybatis,Struts2,Hibernate3,Spring3 的源码都瞧了瞧,复杂度比较如下: DbUtils < Mybatis < Struts2 <Hibernate3,Spring3 在认真研究Mybatis之前,认真研究了DbUtils和Struts2,大致了解了 Hibernate3和Spring3的部分源码. 因为 Mybatis的源代码不是很多,而听

    orm, Java, 框架, MybatisMay 3

  • 一个Web报表项目的性能分析和优化实践(七):性能监测工具JavaMelody

    简介 JavaMelody 能够监测Java或Java EE应用程序服务器,并以图表的方式显示: Java内存和Java CPU使用情况,用户Session数量,JDBC连接数, 和http请求.sql请求.jsp页面与业务接口方法(EJB3.Spring. Guice)的执行数量,平均执行时间,错误百分比等. 图表可以按天,周,月,年或自定义时间段查看. 使用步骤 1.下载JavaMelody. 下载地址:http://code.google.com/p/javamelody/download

    Java, 性能优化, Web开发, JavaMelody, 开源工具May 3

  • 提高生产力:开源Java工具包Jodd(Java的"瑞士军刀")

    官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + tx + html < 1.3M Jodd是一个普通开源Java包.你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能. Jodd 提供的功能有: 1.提供操作Java bean, 2.可以从各种数据源加载Bean, 3.简化JDBC的接连与代码, 4.剖

    Java, 框架, 开源, 博客, joddMay 3

  • Mybatis源码研究5:数据源的实现

    一.数据源概述 数据源相关核心类位于datasource包中,本包主要引用了Mybatis的reflection的ExceptionUtil类和loggin包的Log接口和LogFactory类. Mybatis的session包的Configuration类,builder.xml包的XMLConfigBuilder类引用了本包中的类和接口. 二.核心接口 DataSourceFactory接口定义了2个方法: //设置属性 void setProperties(Properties prop

    orm, Java, 数据库, 框架, MybatisMay 3

  • OpenJDK源码研究笔记(七)–Java字节码文件(.class)的结构

    最近在看OpenJDK源码的过程中,顺便看了Java编译器(javac)的源码. 为了理解javac的源码,需要先搞懂Java字节码文件(.class)的结构. 于是,我就认真看了下OpenJDK中Java字节码文件的相关源码,结合大学期间对JVM的研究,参考JVM规范第2版(英文原版),特意整理下. JVM规范中定义的类文件的结构 注:使用是类似于C语言的表示方法 u1: unsigned one-byte 无符号一个字节 u2: unsigned two-byte 无符号两个字节 u4: u

    openjdk, Java, class, 字节码, 源码研究May 3

  • Mybatis源码研究7:缓存的设计和实现

    一.包概述(org.apache.ibatis.cache) 本包包含了Mybatis框架的缓存接口的定义和实现. 本包只引用了Mybatis的io包的Resources,不依赖于任何第三方库. Mybatis的其它包大量引用了本包中的类和接口,即严重依赖于本包. 二.类和接口概述 缓存框架按照 Key-Value方式存储,Key的生成采取规则为:[hashcode:checksum:mappedStementId:offset:limit:executeSql:queryParams]. Ca

    orm, Java, 数据库, 框架, Cache, MybatisMay 3

  • Mybatis源码研究6:元数据(metadata)

    原理分析之六:元数据(metadata) 一.依赖关系 本包对mybatis的其它包没有任何依赖,mybatis的其它包也不依赖于本包, 即本包可以作为单独的组件或者工具类提出来. 二.类功能概述 包含了3个元数据实体类和一个工厂类. Table是对表的简单封装,包括name,columns,primaryKey,catalog,schema. Column是对列的简单封装,包括name和type. Database是对数据库的简单封装,包括catalog,schema,tables. Data

    orm, Java, 框架, MybatisMay 3

  • JDK工具(一)–Java编译器javac

    1.概述 javac.exe: Java编译器,将Java源代码转换成字节码. 2.用法 javac <选项> <源文件> (使用过程中发现,javac <源文件><选项> 也可以) 其中,可能的选项包括: -g 生成所有调试信息 -g:none 不生成任何调试信息 -g:{lines,vars,source} 只生成某些调试信息 -nowarn 不生成任何警告 -verbose 输出有关编译器正在执行的操作的消息 -deprecation 输出使用已过时的

    jdk, javac, Java, 编译器, 工具May 3

  • OpenJDK源码研究笔记(八)-详细解析如何读取Java字节码文件(.class)

    在上一篇OpenJDK源码研究笔记(七)–Java字节码文件(.class)的结构中,我们大致了解了Java字节码文件的结构. 本篇详细地介绍了如何读取.class文件的大部分细节. 1.构造文件 // 字节码文件User.class String userClass = "C:/User.class"; File file = new File(userClass); 2.构造输入流 FileInputStream fin = new FileInputStream(file); D

    inputstream, openjdk, Java, 字节码, 源码研究May 3

  • OpenJDK源码研究笔记(十六):在Java中使用JavaScript脚本语言

    友情提示 本文主要参考了51CTO上的一篇文章,代码经过自己的模仿和整理,还算凑合. 本文中的代码注释比较多,不再过多解释. 更多用法,还是得看JDK的API或者看原文http://developer.51cto.com/art/201007/208812.htm. 1.可用的脚本引擎 /** * Java内置只支持JavaScript一种脚本 * 打印Script引擎的一些信息 */ public static void printBuildInScriptEngine() { ScriptE

    openjdk, Java, JavaScript, 脚本语言, 源码研究May 3

  • 我读过的100+本经典书籍(持续更新,上次更新2013年11月15日)

    我很久以来,已经养成了总结的好习惯. 今天,特意把自己看过的书,总结下. 1.数一数,自己读过了哪些好书,回想下自己的不断进步. 2.把一些好书分享出来,有兴趣的同学,可以阅读几本. 3.有的同学竟然怀疑"有水分",有的竟然认为100+都是编程类书籍. 一个技术人员读的书为啥就一定要是技术类的?一定是编程类的? 一.技术 <改善Java程序的151个建议> <大话设计模式> <Struts2技术内幕> <深入理解Java虚拟机:JVM高级特性与

    项目管理, Java, 程序员, 书单, 经典书籍May 3

  • 号外:小雷将开发一款Java版的简易CMS系统

    我的个人官网: http://FansUnion.cn 已经改版,隆重上线了,欢迎关注~持续升级中... 出于个人兴趣.技术总结.工作相关,我终于想要做一个简单的CMS系统了. 原来想研究,DedeCMS.PhpWind等PHP版本的CMS的,发现代码太复杂,不够清晰,所以还是自己用最熟悉的Java实现算了. 自己去实践,还可以提高自己的架构设计能力. 暂时取名字为:FU-CMS,FU是FansUnion的缩写. V1.0功能 用户端: 栏目-分类:查 内容:查 管理端: 栏目:增删改查 内容:

    cms, Java, FansunionMay 3

  • 编写maven插件介绍

    本文主要介绍编写自定义maven插件的基本步骤,以及如何打包发布,调用. 项目搭建: 和搭建普通的java项目相同,可以通过 IDE idea 的create from archetype中选择 maven-archetype-mojo即可.也可以自己创建普通的maven项目,自己往里面放要引用的jar包和插件. 下面是项目中用到的jar和插件 <dependencies> <dependency> <groupId>org.apache.maven</group

    maven, Java, pluginMay 2

  • Java工具类:给程序增加版权信息

    我们九天鸟的p2p网贷系统,基本算是开发完成了. 现在,想给后端的Java代码,增加版权信息. 手动去copy-paste,太没有技术含量. 于是,写了个Java工具类,给Java源文件增加版权信息. 源代码,开头的注释,就是版权描述.详细实现,就看代码吧. /* *Copyright © 2015 JiuTianNiao *武汉九天鸟科技有限公司 *http://JiuTianNiao.com *All rights reserved. */ package com.jiutianniao.p

    Java, 版权信息, 九天鸟, p2p网贷May 2

  • java MD5加密

    package com.hephec.test.md5; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Test { public st

    Java, md5加密May 1

  • 五一小长假是程序员充电的好时机
    五一小长假是程序员充电的好时机

    平时加班都没得这么个清闲的日子静心读书学习的.... 推荐开始鸟. 1. Python系 Flask.Web.Development.http://www.xiaomengku.com/files?id=7323085 http://flask.pocoo.org/ 这是个Python的微型框架 200多页的书,适合小长假学习 速度上手Python电量增加 2. PHP系 http://wulijun.github.io/2013/07/17/whats-new-in-php-5-5.html

    Java, PHP, nodejs, 成长, 充电May 1

  • [JAVA]jodd-mail java发送接收电子邮件

    今天刚刚看到有这个工具包就先使用了了一下 我的需求就是发送系统通知 然后就去官网变学习边使用这里顺便记录一下 先上maven地址 <dependency> <groupId>org.jodd</groupId> <artifactId>jodd-mail</artifactId> <version>3.6.5</version> </dependency> 我使用的是腾讯的企业邮箱所有发送邮件的服务器是smtp

    email, Java, joddApril 30

  • Java 中文乱码学习 与Spring @ResponseBody中的乱码 - 深入浅出Java

    第一篇: 深入浅出Java中的中文乱码 一.为什么会有中文乱码: 其实很简单,一句话就能说明问题: 字符在保存时的编码格式如果和要显示(解码)时的编码格式不一样的话,就会出现乱码问题. 二.需要了解的事实: 1. Java中的任何String都是以UNICODE格式存在的. 很多人因为在GBK环境中使用String,会误以为String是GBK格式,实际上Java的String类中并没有存储CharSet信息的字段, 所有String中的字符只会以UNICODE的2字节形式存在. 2. Stri

    Java, 中文乱码, spring, 文件乱码, ResponseBodyApril 30

  • Java NIO原理 图文分析及代码实现
    Java NIO原理 图文分析及代码实现

    Java NIO原理图文分析及代码实现 前言: 最近在分析hadoop的RPC(Remote Procedure Call Protocol ,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.可以参考:http://baike.baidu.com/view/32726.htm )机制时,发现hadoop的RPC机制的实现主要用到了两个技术:动态代理(动态代理可以参考博客: )和java NIO.为了能够正确地分析hadoop的RPC源码,我觉得很有必

    Java, NIO原理, 阻塞I/O, 非阻塞I/OApril 29

  • java根据开始时间和结束时间,计算中间天数,并打印

    java根据开始时间和结束时间,计算中间天数,并打印 import java.text.SimpleDateFormat; import java.util.Date; public class Calcdate { static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); static SimpleDateFormat ymd = new SimpleDateFormat("yyyy

    Java, 时间April 29

  • Android URLconnection

    使用Thread请求HTTP 普通的使用java的Thread 线程,在重写run 方法,实现HTTPConnection public class DoubleMeActivity extends Activity implements OnClickListener { EditText inputValue=null; Integer doubledValue =0; Button doubleMe; @Override public void onCreate(Bundle savedI

    android, JavaApril 28

  • 利用JMX监控Tomcat集群

    JMX是Sun在Java5中提出的一种用于监控JVM运行状态的框架和规范,通过JMX可以很方便的检测Tomcat集群各个节点的运行状况.了解JMX可以看这篇文章http://www.ibm.com/developerworks/cn/java/j-lo-jse63/. 具体操作步骤非常简单,首先用文本编辑器打开一个Tomcat节点的Catalina.bat,找到set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.jul

    apache, tomcat, jvm, sun, JavaApril 28

  • Java将文本中的英文双引号改成中文双引号的方法

    下面的代码是将文本中的英文双引号改成中文双引号的方法: 话不多说,java代码奉上: private static String processQuotationMarks(String content){ String regex = "\"([^\"]*)\""; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(content); String re

    Java, 英文双引号, 中文双引号April 28

  • java和mysql之间的时间日期类型传递[原]

    mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59:59 timestamp 4bytes xxxx-xx-xx xx:xx:xx 1970-01-01 00:00:01到2038 date 3bytes xxxx-xx-xx 1000-01-01到9999-12-31 year 1bytes xxxx 1901到2155 time 3bytes x

    Java, MySQL, 数据库, null, date, CalendarApril 27

  • 当内存是瓶颈时,HashSet的一个替代类

    在菜谱抓取过程中,需要对已抓取的url进行去重,一开始使用的HashSet来去重,但占用内存较大.于是改用BloomFilter(goolge guava jar包中的一个工具类)来去重. 下面是对HashSet与BloomFilter的内存占用与误报率(明明不在集合中,却被当做已存在)的比较. 比较内存占用: 分别插入90万个由六位数字字符组成的字符串到HashSet与BloomFilter中. Set<String> set = new HashSet<>(); for(int

    guava, Java, BloomFilterApril 27

  • Java之注解

    JavaWeb的配置信息,以前是使用配置xml文件来做,所以会有很多的配置,这样会很不方便.所以在Servlet3.0后提供了注解的方式来达到配置的目的. 1. 注解定义 注解的使用我们看到很多,形如 @WebServlet(...) 这种.一个注解的定义如下 package test.annotation; // 这里定义一个 Action 注解 public @interface Action { } 2. 元注解 元注解就是注解的注解,在注解的定义中,我们还可以对定义的注解进行注解. pa

    Java, 注解April 27

  • Java,传奇的一生!

    如果说用"永存.曲折.已死.重生"来形容Java,笔者以为一点也不为过. 1991年,James Gosling带领着名为"Green Team"的团队着手研发一种新的语言以及专为下一代数字设备和计算机使用的网络系统.历时4年辛勤工作后,该项目最终修成正果并取名为Java. Java有着类似于C的语法并有"一次编译,随处运行"的灵便性.透过虚拟机机制,可以使代码在底层平台进行运行时编译.回首Java过去的20年,首先是经历了微机时代的兴与衰,然后

    Java, 传奇April 25

  • java - 类

    package tdx; class C1 { public int c1; public C2 c2; public C1(int c1, C2 c2) { this.c1 = c1; this.c2 = c2; } public void Print() { System.out.println(this.c1); } } class C2 { public int c2; public C1 c1; public C2(int c2, C1 c1) { this.c1 = c1; this

    Java, classApril 24

  • CopyOnWriteArrayList源码分析

    CopyOnWriteArrayList类是高效的线程安全的类.线程安全是因为该类对于所有的修改方法都使用了加锁操作.高效是因为对于迭代操作是对原有集合的引用,避免了同步的开销. /** The lock protecting all mutators */ transient final ReentrantLock lock = new ReentrantLock(); /** The array, accessed only via getArray/setArray. */ private

    Java, CopyOnWriteArrayListApril 24

  • 一个使用jackson转换java对象的例子

    如题,以一个用户对象为例子: @Entity @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) @JsonAutoDetect /** * 在此标记不生成json对象的属性,这里我标记了两个属性一个hibernateLazyInitializer属性,为什么要标记这个 * 属性参考前面的博文,一个password属性,出于安全这个当然不能转换成json对象了,毕竟json是在前台调用的, * 如果你想转换的时候忽略某个属性,可以在后面继续加上

    dao, json, 浏览器, Java, SecurityApril 23

  • Web项目记录session实现简单单点登录

    通过记录session来控制一个账号只能同时在一个地方登录 /** * sesssion列表 */ private static Map<String, HttpSession> sessionMap = new HashMap<String, HttpSession>(); /** * *方法描述:单点登录 * @param session * @param userName */ public synchronized static void singleLogin(HttpS

    Java, Web, session实现单点登录April 23

  • MINA2搭建的SOCKET服务器收到数据抛出异常:MalformedInputException

    使用MINA2.0.9搭建的SOCKET服务器,最近在线上一直抛异常: org.apache.mina.filter.codec.ProtocolDecoderException: java.nio.charset.MalformedInputException: Input length = 1 (Hexdump: FF FF F5 41 4C 49 56 45 0D 0A 7B 22 72 65 71 75 65 73 74 43 6D 64 54 79 70 65 22 3A 31 33

    Java, mina, 粘包, MalformedInputExceptionApril 22

  • JAVA IO 学习笔记
    JAVA IO 学习笔记

    一.IO流的概念 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接.流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象. 流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作. 类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流.这时候你就可以想象数据好像在这其中"流"动一样. 二.流的分类 JAVA IO类结构图 按流向分: 输入流:程序可以从中读取数据的流. 输出

    Java, 学习, 笔记April 22

  • [java菜鸟级教程]使用idea创建servlet

    视频下载地址:http://pan.baidu.com/s/1gdGPZB9 大家好,今天有空来做一个视频,主要是针对初学java web开发的同学,本次视频主要是演示如何用idea来做一个servlet应用程序. 首先,新建一个java项目. 这里可以看到,一个基本的web项目已经帮我们生成,我用的jetty,下面的依赖也已经添加. 下面,我们就创建一个servlet,这里可以看到,servlet的名称和class已经帮我们生成,idea和eclipse不一样,没有给我们生成urlmappin

    j2ee, servlet, Java, Web, JavaEE, ideaApril 22

  • 十分钟彻底理解java值传递
    十分钟彻底理解java值传递

    java值传递思考 本文主要举例说明为什么java是值传递.普通类对象的传递和String类型的传递过程. 先看下代码,很简单 Person类 public class Person { public String name; public Person(String name) { this.name = name; } } 测试方法: public static void test() { Person p = new Person("Lilei"); System.out.pri

    android, Java, 引用, 值传递April 22