首先以最簡單的一個例子開始介紹
api的接口是這么寫的
@Path("/user") public interface UserService {
/** * 測試用例 返回字符串? 這里隨便返回的字符串? ?后來改成從數(shù)據(jù)庫查詢出的字符串
* @return
*/
@GET
@Path("/getString1")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
ResponseEntity getALLUsers();
}
server 端? 實現(xiàn)類是這樣的? 這里查詢的user信息,,返回一些數(shù)據(jù)
@Override
?public ResponseEntity getALLUsers() {
List ucUsers = ucUserMapper.select(); Map map = new HashMap<>();
map.put("rows",ucUsers);
return new ResponseEntity.Builder>().setData(map).setMessage("成功").setStatus(0).build(); }
功能大概就是這樣? 具體來說下配置?
?api?
這里是不需要什么配置的,只是一個對外暴露的接口,我這個測試用例用的是gradle 構(gòu)建的??
server??
這個編輯器好無語不按格式顯示只能這樣了,把重點的搞出來
server.port=8076
mysql 配置
# REDIS (RedisProperties) spring.redis.database=1 spring.redis.host=192.168.1.203 spring.redis.port=6379 spring.redis.password= spring.redis.pool.max-active=8 spring.redis.pool.max-wait=-1 spring.redis.pool.max-idle=8 spring.redis.pool.min-idle=0 spring.redis.timeout=0 # \ufffd\ufffd\u05be\ufffd\ufffd\ufffd\ufffd\ufffd\u026b spring.output.ansi.enabled=DETECT # mongodb spring.data.mongodb.uri=mongodb://192.168.1.203:27017/log_db # mybatis mybatis.config-locations=classpath:myBatis-config.xml mybatis.mapper-locations=classpath:mapper/*.xml ## motan
motan.registry.regProtocol=zookeeper
motan.registry.address=192.168.1.203:2181
motan.registry.connectTimeout=2000
##\u042d\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd motan.protocol.name=restful motan.protocol.endpointFactory=netty #motan.protocol.minWorkerThread=20 #\ufffd\ufffd\u0421\ufffd\ufffd\ufffd\ufffdpool\ufffd\u07f3\ufffd\ufffd\ufffd #motan.protocol.maxWorkerThread=50 #\ufffd\ufffd\ufffd\ufffd\ufffdpool\ufffd\u07f3\ufffd\ufffd\ufffd motan.protocol.maxContentLength=1048576 motan.protocol.isDefault=true #motan.protocol.filter=statistic ##\u05b8\ufffd\ufffd\ufffd\ufffd\u04aa\ufffd\ufffd\ufffd\ufffd\ufffd\u0130\ufffd\ufffd\ufffd
motan.annotation.package=cn.thunderwind.uc.user
##\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd
motan.server.export=motan:8004
motan.server.registry=registry
然后再去配置測試端? client? ?基本和server差不多 不需要數(shù)據(jù)庫的配置
#\u05e2\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd motan.registry.regProtocol=zookeeper #motan.registry.address=192.168.1.203:2181 motan.registry.address=192.168.1.203:2181 motan.registry.connectTimeout=2000 #\u042d\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd motan.protocol.name=restful motan.protocol.endpointFactory=netty #motan.protocol.minWorkerThread=20 #\ufffd\ufffd\u0421\ufffd\ufffd\ufffd\ufffdpool\ufffd\u07f3\ufffd\ufffd\ufffd #motan.protocol.maxWorkerThread=50 #\ufffd\ufffd\ufffd\ufffd\ufffdpool\ufffd\u07f3\ufffd\ufffd\ufffd motan.protocol.maxContentLength=1048576 motan.protocol.isDefault=true #\u05b8\ufffd\ufffd\ufffd\ufffd\u04aa\ufffd\ufffd\ufffd\ufffd\ufffd\u0130\ufffd\ufffd\ufffd motan.annotation.package=cn.thunderwind.uc.user #server\u914d\u7f6e server.port=8076 motan.server.protocol=motan motan.server.registry=registry motan.server.throwException=true motan.server.filter=motanLogFilter,motanExceptionFilter # mongodb spring.data.mongodb.uri=mongodb://192.168.1.203:27017/log_db
client的目錄結(jié)構(gòu)要和另外兩個一樣?
@RestController
@RequestMapping("/user")
public class UserController {
@MotanReferer(basicReferer = "basicRefererConfig", directUrl = "192.168.1.211:8004")
//這里的8004是在server端的配置里的motan的內(nèi)部調(diào)用端口?
private UserService userService;
@RequestMapping(value = "/getString", method = RequestMethod.GET, produces = "application/json;charset=UTF-8")
@ResponseBody public ResponseEntity getALLUsers1() {
return userService.getALLUsers();
}
接下來打包發(fā)布 測試就可以了,server.port=8076? 這個配置對應(yīng)的服務(wù)器上的端口號
motan.server.export=motan:8004? 這個配置是motan自己內(nèi)部調(diào)用的端口號和服務(wù)器無關(guān)
發(fā)布之后,運行成功就代表成功了,如果沒有,歡迎評論,加QQ2930824786討論