輕鬆架設基於JimStoneAjax的Ajax運行環境

    JimStoneAjax是一套靈活的遠程調用JavaBean的Ajax框架,部署環境很簡單。 javascript

    (JimStoneAjax交流羣:366984517) html

    準備工做java

    進入[下載]頁面,選擇「完整包進行下載。完整包主要包含如下文件:

      jquery

    那麼咱們開啓這段旅程吧。 web

  1. 首先,建立一個Spring MVC的 web 項目並將相關包拖入項目庫目錄下。

        具體的 Spring MVC項目的建立細節不在本文的講解範圍以內。 ajax

       建立好項目後,啓用 Spring 註解,將相關的 Jar 包拷貝到項目的lib目錄下。

spring

             

    二、從jimstone-ajax-release-x.x.jar中將默認配置文件和控制器文件拉入項目 json

        從 jimstone-ajax-release-x.x.jar 中拖出配置文件jsajax.properties和控制器模版STAjaxCtrlDefault.java到咱們的項目資源src目錄下。其中STAjaxCtrlDefault.java 爲一個標準的Spring MVC控制器,咱們將這個文件放到 com.jsajax.test 包下。
api

        

        

    三、建立對外開放的Service服務類 app

        建立一個服務類FirstModel,最好繼承自 STAjaxRender 類。固然,也能夠經過實現接口 ISTAjaxModel 來把服務公開出來。

        

        把 FirstModel 類經過註解注入爲Service。


@Service("firstModel")
public class FirstModel extends STAjaxRender{

}


    四、編寫對外開放的方法

        從 FirstModel 中加入一個取最大值的方法。這裏要注意的是,JimStoneAjax 框架經過返回類型來限定是否方法對外公開的,全部全部純粹取運行返回結果的方法都須要經過 STDataResult 對象包裝一下。

public STDataResult<Long> testMax(Long a, Long b) {
	return STDataResult.successByDatas((a>b) ? a : b); 
}

         STDataResult 對象包裝的很好,很適合用做默認的 Ajax 應用返回值,下面給出幾個經常使用的構造方法說明:

             STDataResult.succ()

             - 返回狀態爲成功,直接返回

             STDataResult.succByMessage(message)
             - 返回狀態爲成功,而且設置一條自定義成功的消息

             STDataResult.succByMessage(message, data)
             - 返回狀態爲成功,而且設置一條自定義成功的消息同時返回成功的結果

             STDataResult.successByDatas(data)
             - 返回狀態爲
成功,而且直接返回成功的結果

             STDataResult.err()
             - 返回狀態爲失敗,直接返回

             STDataResult.err(message)
             - 返回狀態爲失敗,而且返回自定義的失敗消息

             STDataResult.err(errorCode)
             - 返回狀態爲失敗,經過錯誤碼設置失敗消息

             STDataResult.errorWithParams(errorCode, Object...params)
             - 返回狀態爲失敗,經過錯誤碼設置失敗消息,而且動態傳入變量組織失敗文本


        咱們再實現一個取最小值的方法。此次的要求是第一個參數不能小於5,第二個參數不能大於100,而且成功的時候有個友好的提示。

public STDataResult<Long> testMin(Long a, Long b) {
	if (a < 5) {
		return STDataResult.err("第一個參數不能小於5");
	}
	if (b > 100) {
		return STDataResult.err("第二個參數不能大於100");
	}
	return STDataResult.succByMessage("獲取最小值成功", (a>b) ? b : a); 
}

    五、從客戶端直接調用

        建立 index.jsp,加入標籤引用。

<%@ taglib uri="http://www.jimstone.com/ajax" prefix="ajax" %>
        JimStoneAjax默認生成器生成的客戶端JS要用到jquery,因此要加入 JQuery 引用。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        經過標籤作腳本引入。

<ajax:script value="firstModel" json="true"></ajax:script>
        在HTML內容段直接調用。

<a onclick="firstModel.testMax(15, 20, function(data) { alert(data.datas); });" href="javascript:void(0);">取最大值</a><br>
<a onclick="firstModel.testMin(50, 105, function(data) { alert(data.message); });" href="javascript:void(0);">取最小值</a><br>
<a onclick="firstModel.testMin(50, 30, function(data) { alert(data.message); alert(data.datas); });" href="javascript:void(0);">再取最小值</a>
        點擊連接能夠直接看到執行結果啦。


    完整的HTML請看下邊:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://www.jimstone.com/ajax" prefix="ajax" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>MyAjaxTest</title>
	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
	<ajax:script value="firstModel" json="true"></ajax:script>
  </head>
  <body>
    <a onclick="firstModel.testMax(15, 20, function(data) { alert(data.datas); });" href="javascript:void(0);">取最大值</a><br>
    <a onclick="firstModel.testMin(50, 105, function(data) { alert(data.message); });" href="javascript:void(0);">取最小值</a><br>
    <a onclick="firstModel.testMin(50, 30, function(data) { alert(data.message); alert(data.datas); });" href="javascript:void(0);">再取最小值</a>
  </body>
</html>

是否是很簡單啊!若是你的項目原本就是基於Spring的,調用 JimStoneAjax 基本上引入相關JAR包,寫個 Service,頁面上就能直接用啦。確實很方便。 

相關文章
相關標籤/搜索