开源b3log代码赏析

package org.b3log.latke.repository.jdbc.mapping;


import org.b3log.latke.repository.jdbc.util.FieldDefinition;


/**
 * Date type mapping.
 * 
 * <p>
 * Maps Java {@link java.util.Date} type to SQL DATETIME type.
 * </p>
 * 
 * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
 * @version 1.0.0.0, Feb 29, 2012
 */
public final class DateMapping implements Mapping {

    @Override
    public String toDataBaseSting(final FieldDefinition definition) {
        final StringBuilder builder = new StringBuilder(definition.getName()).append(" datetime");

        if (!definition.getNullable()) {
            builder.append(" not null");
        }

        return builder.toString();
    }
}
package org.b3log.latke.repository.jdbc.util;


/**
 * FieldDefinition of each Filed in *.json.
 * 
 * @author <a href="mailto:wmainlove@gmail.com">Love Yao</a>
 * @version 1.0.0.0, Dec 20, 2011
 */
public class FieldDefinition {

    /**
     * field name.
     */
    private String name;

    /**
     * field type.
     */
    private String type;

    /**
     * the length of the type.
     */
    private Integer length;

    /**
     * if isKey.
     */
    private Boolean isKey;

    /**
     * if null-able.
     */
    private Boolean nullable = true;

    /**
     * getName.
     * 
     * @return name.
     */
    public String getName() {
        return name;
    }

    /**
     * setName.
     * 
     * @param name name
     */
    public void setName(final String name) {
        this.name = name;
    }

    /**
     * getType.
     * 
     * @return type
     */
    public String getType() {
        return type;
    }

    /**
     * setType.
     * 
     * @param type type.
     */
    public void setType(final String type) {
        this.type = type;
    }

    /**
     * getLength.
     * 
     * @return length
     */
    public Integer getLength() {
        return length;
    }

    /**
     * setLength.
     * 
     * @param length length.
     */
    public void setLength(final Integer length) {
        this.length = length;
    }

    /**
     * getIsKey.
     * 
     * @return iskey
     */
    public Boolean getIsKey() {
        return isKey;
    }

    /**
     * setIsKey.
     * 
     * @param isKey isKey
     */
    public void setIsKey(final Boolean isKey) {
        this.isKey = isKey;
    }

    /**
     * getNullable.
     * 
     * @return nullable
     */
    public Boolean getNullable() {
        return nullable;
    }

    /**
     * setNullable.
     * 
     * @param nullable nullable
     */
    public void setNullable(final Boolean nullable) {
        this.nullable = nullable;
    }

}

import org.b3log.latke.repository.jdbc.mapping.*;
import org.b3log.latke.repository.jdbc.util.*;
public class testDateMapping {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		FieldDefinition k=new FieldDefinition();
		k.setName("交大附中苏一辰");
		DateMapping h=new DateMapping();
		System.out.println(h.toDataBaseSting(k));

	}

}

输出:交大附中苏一辰 datetime
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值