paoding-rose後端java框架


title: paoding-rose後端java框架
date: 2019-08-29 00:38:25
tags:
- paoding-rose
categories: java框架

paoding-rose後端java框架

原文地址 https://www.b2bchain.cn/5492.html

其依賴 Spring 的一套體系,主要對 Controller 和 DAO 層提供支持。

Controller 跟 Spring MVC 比較類似,但是相對Spring MVC來說功能稍弱一點;
DAO 又跟 MyBatis 比較類似,相對輕量一些,實際上是對 JdbcTemplate 的封裝,並添加註解/SQL自定義標籤等支持,使用起來很方便。

paoding-rose “強制限制”,paoding-rose 規定 Controller 層 類必須以Controller結尾,必須寫在 controller包下面;
DAO 層都是接口,命名必須以 DAO 結尾,必須寫在 dao 包下面等等一些強制的要求,否者項目就跑不起來。
跟約定大於配置這個概念有點類似,但是其又不提供配置,必須按照要求來,這些強制的編碼要求使開發相對來說規範起來,對後期維護是有益的。

包	padding
 	jade
 	web


xml 配置過濾器

biz 業務處理查詢 con-biz-sevice-dao 抽象service

dto 請求 前臺請求參數給這裏

dto傳參數 轉換隻需求的參數

enums 數據庫狀態 枚舉

excpention 異常

exterenal 外部接口 調區塊鏈或者三方支付接口

interceptors 過濾器 登錄驗證等

quartz 定時任務,暫時不用



service.xml spring管理的業務


cotroller dao 包名,結尾必須固定纔可以掃描到


請求json轉對象 對象驗證參數正確validatetable  在dto當中

dao pojo 數據對象
dto 與前端交互返回對象

dto 當中用 json formet插件 ctrl n快捷鍵


實體類轉json例子
package org.rose.template.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.rose.template.dao.pojo.ChainInfo;


/**
 * @author lizhenglong
 */
public class ChainJson {

    //通過實體類轉換成json
    public static void BeanToJson(){



        List<ChainInfo> data = new ArrayList<ChainInfo>();

        ChainInfo chainEntity = new ChainInfo();
        chainEntity.setName("btc");
        chainEntity.setLock_add("buQjzRpyveZYJ9yTN6dRnCYxQMmQve6dKGU4");
        chainEntity.setDeposit("1000");
        chainEntity.setAbi("[{\"constant\":false,\"inputs\":[{\"name\":\"seq\",\"type\":\"uint64\"},{\"name\":\"block_data\",\"type\":\"bytes\"}],\"name\":\"submitBlock\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMaxBlockNum\",\"outputs\":[{\"name\":\"\",\"type\":\"uint64\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"input\",\"type\":\"string\"},{\"name\":\"ledger_seq\",\"type\":\"uint64\"},{\"name\":\"spv_tx_data\",\"type\":\"bytes\"},{\"name\":\"spv_receipt_data\",\"type\":\"bytes\"}],\"name\":\"submitCrossTx\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]");
        chainEntity.setSpv("buQjzRpyveZYJ9yTN6dRnCYxQMmQve6dKGU4");
         chainEntity.setStatus(1);
        chainEntity.setAsset("buc");
        chainEntity.setDescription("btcchain");
         chainEntity.setIcon("https://imgchr.com/i/MWXC7Q");


        data.add(chainEntity);


        JSONObject jsonObject = new JSONObject();
        System.out.println(jsonObject.toJSONString(data));//通過toJSONString( )將實體類轉化成json對象
    }
    public static void main(String[] args) {
        BeanToJson();
    }
}

檢查數據庫字段是否衝突例如Lock
數據庫id是否自增
json傳入數據只需data內部分即可

微信公衆號

關注我們,精彩文章不錯過

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章