# salmon **Repository Path**: data2/salmon ## Basic Information - **Project Name**: salmon - **Description**: 分布式数据库框架,无缝对接spring,比batis更可控更灵活,欢迎试用 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-03-11 - **Last Updated**: 2021-12-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Salmon ==== [![License](http://img.shields.io/:license-apache-brightgreen.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) [![Build Status](https://travis-ci.org/data2/salmon.svg?branch=master)](https://travis-ci.org/data2/salmon) [![Coverage Status](https://coveralls.io/repos/github/data2/salmon/badge.svg)](https://coveralls.io/github/data2/salmon) Salmon, an easy framework which support distributed db system. Self-developed and controllable distributed database framework + Simplify dao layer development, more controllable and flexible than mybatis + Support regular transactions, cross-database transactions based on two-phase protocol commit and retry mechanism + Support multiple strategies for sub-database sub-table + Support mainstream databases such as jdbc and oracle + Seamless connection with spring ### Inquire ```java @Autowired @Mapper(file = "mapper1", database = DataBase.JDBC) public Salmon salmon; //Inquire Map map = (Map) salmon.select("query2").execute("101a7cb6-0aff-11ec-b26b-88e9fe840b9a"); //Inquire Map map = (Map) salmon.select("query").execute(Collections.singletonMap("id", "101a7cb6-0aff-11ec-b26b-88e9fe840b9a")); ``` ### Insert ``` // insert Map param3 = Maps.newConcurrentMap(); param3.put("id", UUID.randomUUID().toString()); param3.put("namespace", "test"); param3.put("path", "spring.port"); param3.put("value", "9093"); salmon.insert("insert").execute(param); ``` ### Affairs ``` //Open the transaction salmon.startTrans(); Map param = Maps.newConcurrentMap(); param.put("id", UUID.randomUUID().toString()); param.put("namespace", "test"); param.put("path", "spring.port"); param.put("value", "9091"); salmon.insertTrans("insert").execute(param); Map param2 = Maps.newConcurrentMap(); param2.put("id", UUID.randomUUID().toString()); param2.put("namespace", "test"); param2.put("path", "spring.port"); param2.put("value", "9092"); salmon.insertTrans("insert").execute(param2); salmon.commitTrans(); ``` ### Configuration ``` spring: salmon: scan:package database: jdbc: url: jdbc:mysql://ip:3306/udp username: username password: pwd -- select 1 from dual ```