在application.yml中配置java
server: port: 8080 context-path: /crm spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/crm username: root password: 136735 jpa: show-sql: true jackson: default-property-inclusion: non_null devtools: restart: enabled: true cxf: path: /services #使用service發佈服務,須要在/crm後面加上/service,
#要添加依賴:不然解析不了,作不了映射 "org.apache.cxf:cxf-spring-boot-starter-jaxrs:$boot_starter_jaxrs_version"
servlet.init: service-list-path: /info jaxrs: component-scan: true
service發佈服務mysql
package top.kylewang.crm.controller; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.ResponseBody; import javax.ws.rs.Consumes; import javax.ws.rs.GET; import javax.ws.rs.Path; @Path("path") @Service @Transactional(rollbackFor = Exception.class) public class TestPath { @Path("/p1") @GET @Consumes({"application/xml", "application/json"}) public String getString() { return "path"; } }
訪問 http://localhost:8080//crm/services/path/p1web
返回pathspring
帶參數的請求。sql
@Path("QueryProductService") public interface QueryProductService { /** * 查詢商品根據Uid * @return */ @Path("/QueryProductBypid") @GET //post 參數在請求體中,get在url中 @Consumes({"application/xml", "application/json"}) //返回void用consumes Product QueryProductBypid(@QueryParam("id") String id); }
url http://127.0.0.1:9001/background/services/QueryProductService/QueryProductBypid?id=556556887752apache