Java后臺接口開發(fā)初步實(shí)戰(zhàn)教程

上圖是查詢列表的接口,get方式

上圖是用戶注冊的接口,同樣是get,post方式也很簡單
開發(fā)工具:IntelliJ IDEA 2016.3.5
ORM框架:MyBatis
數(shù)據(jù)庫:MySql
服務(wù)器:tomcat7.0
公司使用的的orm框架是Hibernate,使用起來感覺比mybatis好用多了,畢竟經(jīng)過了公司這么多項(xiàng)目的考驗(yàn),總比自己用mybatis寫的項(xiàng)目可靠,但以下分享的還是mybatis的代碼
注冊接口方法:http://192.168.1.116:8080/register?username=111&password=222
@RequestMapping(value = "register", method = RequestMethod.GET)
@ResponseBody
public Map<String, Object> register(@RequestParam("username") String username, @RequestParam("password") String password) {
out.println("welcome to register,username=" + username + ";password=" + password);
Map<String, Object> map = new HashMap<>();
ResultBean result = onRegister(username, password);
out.println("result==>" + result);
map.put("code", result.getCode());
map.put("reason", result.getReason());
map.put("success", result.isSuccess());
return map;
}
具體的注冊方法,獲取session基本和Hibernate差不多
private ResultBean onRegister(String username, String password) {
ResultBean resultBean = new ResultBean();
SqlSession session = null;
try {
session = sqlSessionFactory.openSession();
LoginMapper loginMapper = session.getMapper(LoginMapper.class);
Map<String, Object> map = new HashMap<>();
map.put("name", username);
map.put("password", password);
LoginBean bean = new LoginBean();
bean.setName(username);
bean.setPassword(password);
// 查詢用戶是否存在
LoginBean userExist = loginMapper.findUserByName(map);
if (userExist != null) {
// 存在后無法注冊
resultBean.setCode("001");
resultBean.setSuccess(false);
resultBean.setReason("用戶已存在");
} else {
loginMapper.addUser(bean);
session.commit();// 重要,一定要commit,否則無法insert
System.out.println("當(dāng)前增加的用戶id為:" + bean.getId());
resultBean.setCode("200");
resultBean.setSuccess(true);
resultBean.setReason("注冊成功");
}
} catch (Exception e) {
e.printStackTrace();
out.println("注冊異常==>" + e.getMessage());
resultBean.setCode("001");
resultBean.setSuccess(false);
resultBean.setReason("注冊異常");
} finally {
session.close();
}
return resultBean;
}
這個Mapper需要在配置文件中指定
public interface LoginMapper {
public LoginBean findUserByName(Map<String,Object> map) throws Exception;
public void addUser(LoginBean bean) throws Exception;
}
這是對應(yīng)的LoginMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<mapper namespace="com.xm.travel.LoginMapper">
<select id="loadRunList" parameterType="java.util.Map" resultType="com.xm.travel.RunBean">
select * from run
</select>
<select id="loginUser" parameterType="java.util.Map" resultType="com.xm.travel.LoginBean">
select * from user where name = #{name} and password = #{password}
</select>
<select id="findUserByName" parameterType="java.util.Map" resultType="com.xm.travel.LoginBean">
select * from user where name = #{name}
</select>
<insert id="addUser" useGeneratedKeys="true" keyProperty="id" >
insert into user(id,name,password) values(#{id},#{name},#{password})
</insert>
</mapper>
以上這篇 Java后臺接口開發(fā)初步實(shí)戰(zhàn)教程就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- java后臺實(shí)現(xiàn)支付寶支付接口和支付寶訂單查詢接口(前端為APP)
- Java 調(diào)用Restful API接口的幾種方式(HTTPS)
- 淺談java調(diào)用Restful API接口的方式
- java中接口(interface)及使用方法示例
- java開發(fā)微信分享接口的步驟
- 淺談Java 三種方式實(shí)現(xiàn)接口校驗(yàn)
- Java編程調(diào)用微信接口實(shí)現(xiàn)圖文信息推送功能
- java為移動端寫接口開發(fā)實(shí)例
- JAVA利用HttpClient進(jìn)行HTTPS接口調(diào)用的方法
- 詳解java接口基礎(chǔ)知識附思維導(dǎo)圖
相關(guān)文章
SpringBoot訪問接口自動跳轉(zhuǎn)login頁面的問題及解決
這篇文章主要介紹了SpringBoot訪問接口自動跳轉(zhuǎn)login頁面的問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12
Java中的線程池ThreadPoolExecutor深入解析
這篇文章主要介紹了Java中的線程池ThreadPoolExecutor深入解析,線程池,thread pool,是一種線程使用模式,線程池維護(hù)著多個線程,等待著監(jiān)督管理者分配可并發(fā)執(zhí)行的任務(wù),需要的朋友可以參考下2023-11-11
SpringBoot調(diào)用第三方WebService接口的兩種方法
本文主要介紹了SpringBoot調(diào)用第三方WebService接口的兩種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
java如何實(shí)現(xiàn)自動生成數(shù)據(jù)庫設(shè)計(jì)文檔
以前我們還需要手寫數(shù)據(jù)庫設(shè)計(jì)文檔、現(xiàn)在可以通過引入screw核心包來實(shí)現(xiàn)Java?數(shù)據(jù)庫文檔一鍵生成。本文將具體介紹一下如何通過java自動生成數(shù)據(jù)庫設(shè)計(jì)文檔,需要的朋友可以參考下2021-11-11

