真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于注解的java加簽驗(yàn)簽框架checksum

checksum

基于 java 注解生成加簽驗(yàn)簽 checksum。

十年的普蘭店網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整普蘭店建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“普蘭店網(wǎng)站設(shè)計(jì)”,“普蘭店網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

開源地址:github checksum

創(chuàng)作緣由

原來的代碼中,checksum 的生成是用的工具類方法。

后來發(fā)現(xiàn)如下的問題:

  1. 有些字段太大,不想?yún)⑴c驗(yàn)簽,但是無法方便的調(diào)整。

  2. 不同系統(tǒng)的 checksum 字段不同,只好把工具方法 copy 過去,改來改去。

感覺這樣有很大的弊端,完全失去了靈活性。

特性

  • 基于注解的 checksum 加簽驗(yàn)簽

  • Fluent 流式語法

  • 支持靈活的策略自定義

更新記錄

更新記錄

快速開始

環(huán)境要求

jdk7+

maven 3.x+

引入


    com.github.houbb
    checksum
    0.0.1

定義待加簽的示例對象

  • User.java
public class User {

    @CheckField
    private String name;

    @CheckField
    private String password;

    private String address;

    @Checksum
    private String checksum;

    //Getter & Setter
    //toString()
}

核心注解

@CheckField 表示參與加簽的字段信息

@Checksum 表示加簽結(jié)果存放的字段

調(diào)用測試

package com.github.houbb.checksum.core;

import com.github.houbb.checksum.model.User;
import org.junit.Assert;
import org.junit.Test;

/**
 * @author binbin.hou
 * @since 0.0.1
 */
public class ChecksumBsTest {

    @Test
    public void checksumTest() {
        User user = buildUser();
        final String checksum = ChecksumBs
                .newInstance(user)
                .checksum();

        Assert.assertEquals("8D62F2BC49A9AB51280C8F42A483ED54", checksum);
    }

    @Test
    public void fillTest() {
        User user = buildUser();
        ChecksumBs.newInstance(user).fill();

        Assert.assertEquals("User{name='ryo', password='1234', address='china', checksum='8D62F2BC49A9AB51280C8F42A483ED54'}",
                user.toString());
    }

    /**
     * 構(gòu)建示例對象
     * @return 構(gòu)建示例對象
     */
    private User buildUser() {
        User user = new User();
        user.name("ryo")
                .password("1234")
                .address("china");
        return user;
    }

}

ChecksumBs 引導(dǎo)類

用來創(chuàng)建加簽的相關(guān)配置及實(shí)現(xiàn)。

配置核心方法

方法默認(rèn)值備注
newInstance() 新建 ChecksumBs 實(shí)例(static)
newInstance(object) 新建 ChecksumBs 實(shí)例,并且指定待加簽的對象(static,建議使用)
target(Object) 指定待加簽的對象
secret(ISecret) DefaultMd5Secret 指定加密的策略,默認(rèn)使用 md5 加密
sort(ISort) NameAscSort 指定排序的策略,默認(rèn)根據(jù)字段的名稱正序排列表
cache(ICache) DefaultFieldListCache 指定字段的緩存策略,默認(rèn)使用本地 map 進(jìn)行字段信息緩存

調(diào)用核心方法

方法返回值備注
checksum() String 返回加簽的結(jié)果
fill() 將上面 checksum 的結(jié)果設(shè)置到 @Checksum 標(biāo)識(shí)的字段中

自定義

上述 ISecret/ISort/ICache 都是支持自定義的。

一般只需要重新定義 ISecret 即可。


網(wǎng)站題目:基于注解的java加簽驗(yàn)簽框架checksum
URL標(biāo)題:http://weahome.cn/article/jpoeop.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部