您好,登錄后才能下訂單哦!
接下來我們來編寫一個測試接口,測試整個項目能否成功運行
首先我們在數據庫的“user”表中增加一條記錄,作為測試使用;
這里我們做這樣一個測試,編寫一個方法去通過userid,去查詢用戶的信息,并且將信息返回到頁面
逆向工程中已經為我們提供了selectUserByPrimarykey()的方法,所以只要調用此方法就可以。
現在我們在ycshop-manager-interfaces模塊創建包cn.yuechenc.ycshop.manager.interfaces;
在此包里面創建接口:
package cn.yuechenc.ycshop.manager.interfaces;
import cn.yuechenc.pojo.User;
public interface UserService {
public User selectUserByPrimarykey(String userid);
}
然后在ycshop-manager-service模塊下創建包cn.yuechenc.ycshop.manager.service.impl
在此包里創建UserServiceImpl實現了,實現UserService接口
package cn.yuechenc.ycshop.manager.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.yuechenc.manager.dao.mapper.UserMapper;
import cn.yuechenc.pojo.User;
import cn.yuechenc.ycshop.manager.interfaces.UserService;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public User selectUserByPrimarykey(String userid) {
return userMapper.selectByPrimaryKey(userid);
}
}
此時我們的service層就算完成了,接下來,我們對修改過得項目進行install,
此時我們會發現,在對ycshop-manager進行install的時候回報一個錯,如圖:
此處請參考下面的解決方法:
Maven Install報錯:Perhaps you are running on a JRE rather than a JDK?
解決之后,對ycshop-manager工程進行build,看到下圖,表示已經成功將接口暴露到dubbo服務了
下面,我們就需要在ycshop-manager-web工程中去接收測試能否獲取到接口服務
在web模塊下編寫UserController
package cn.yuechenc.ycshop.manager.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import cn.yuechenc.pojo.User;
import cn.yuechenc.ycshop.manager.interfaces.UserService;
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/getUser")
@ResponseBody
private User getUser(){
return userService.selectUserByPrimarykey("1a");
}
}
此處在注入service是會注入不進來,是因為之前搭建工程是沒有在web工程的pom文件中加入對接口的依賴,補充:
<!-- 對 dao 的依賴 -->
<dependency>
<groupId>cn.yuechenc</groupId>
<artifactId>ycshop-manager-dao</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<!-- 對接口的依賴 -->
<dependency>
<groupId>cn.yuechenc</groupId>
<artifactId>ycshop-manager-interfaces</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
現在保持依次[build]
ycshop-manager
和ycshop-manager-web
在瀏覽器輸入http://localhost:8080/user/getUser進行訪問,報如圖錯誤
是因為dubbo服務之間通行時會將信息序列化之后以流的形式傳輸,所以就要求傳輸的對象是可以序列化的,此處只需讓我們的pojo類實現Serializable接口即可
在此install項目并運行,并且訪問http://localhost:8080/user/getUser
可以在瀏覽器中看到如下信息
到這里,我們所有的后臺項目環境就算是搭建好了,接下來就是業務邏輯的開發
我們下節見。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。