分类目录归档:Java

Java Gson序列化实例-数组的序列化


package cn.aofeng.demo.json.gson;

import com.google.gson.Gson;

/**
 * 数组的序列化。
 *
 */
public class ArraySerialize {

    public void serialize(Object[] arr) {
        Gson gson = new Gson();
        System.out.println( gson.toJson(arr) );
    }

    public static void main(String[] args) {
     ...

阅读全文...

Java Gson序列化实例-Java对象序列化与反序列化


package cn.aofeng.demo.json.gson;

import com.google.gson.Gson;

/**
 * Java简单对象的序列化与反序列化。
 */
public class SimpleObjectSerialize {

    /**
     * 序列化:将Java对象转换成JSON字符串。
     */
    public void serialize(Person person) {
        Gson gson = new Gson();
        System.out.println( gson.toJson(per...

阅读全文...

Java XPath实例


package cn.aofeng.demo.xml;

import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;

import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;

/**
 * XPath语法实践。
 */
pub...

阅读全文...

Java MyBatis3实例


MyBatisClien.java 入口类。读取配置文件,生成SqlSessionFactory,使用DAO操作表。

package cn.aofeng.demo.mybatis;

import java.io.IOException;
import java.io.InputStream;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder...

阅读全文...

Java JDBC元数据使用示例


package cn.aofeng.demo.jdbc;

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import cn.aofeng.demo.tree.Pr...

阅读全文...

Apache DbUtils 使用教程


用JDBC编程时,需要关注和处理的内容非常多,而且很容易造成连接资源没有释放导致泄漏的问题。一个普通的查询操作其处理过程如下:

  1. 创建Connection。
  2. 创建Statement。
  3. 执行SQL生成ResultSet,历遍ResultSet中的所有行记录提取列数据并转换成所需的对象。
  4. 关闭ResultSet。
  5. 关闭Statement。
  6. 关闭Connection。

Apache DbUtils对JDBC操作进行了轻量地封装,解决了两个问题:

  1. 自动创建和释放连接资源,不再有泄漏问题。
  2. 自动将Result转换成对象。填入不同的ResultSetHandler,可将ResultSet转换成不...

阅读全文...

Java定时器ScheduledExecutorService实例


package cn.aofeng.demo.java.util.concurret;

import java.util.Date;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

import cn.aofeng.demo.util.DateUtil;

/**
 * {@link ScheduledExecutorService}的使用示例:<br>
 * ...

阅读全文...

Java定时器Timer实例


package cn.aofeng.demo.java.util.timer;

import java.util.Timer;
import java.util.TimerTask;

import cn.aofeng.demo.util.DateUtil;

/**
 * {@link Timer}的使用示例:<br>
 * 定时任务1:执行过程中会抛出异常。<br>
 * 定时任务2:执行过程中不会抛出异常。<br>
 * <br>
 * 目的:检测java.util.Timer在执行定时任务的过程中,任务内抛出异常没有捕捉时在下一次...

阅读全文...

Java关键字transient与序列化实例


package cn.aofeng.demo.java.lang.serialization;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

import org.apache.commons.io.IOUtils;
import org.slf4j.Logger;
i...

阅读全文...