<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                本文地址:[http://blog.csdn.net/sushengmiyan/article/details/43487751](http://blog.csdn.net/sushengmiyan/article/details/43487751) 本文作者:[sushengmiyan](http://blog.csdn.net/sushengmiyan) ------------------------------------------------------------------------------------------------------------------------------------ sencha extjs 5 增加一個struts2的配置,這樣可以在設置好前臺布局之后,與后臺交互獲取數據顯示。現在有一個問題是struts2對于url的跳轉action支持比較良好,但是對于像Extjs這樣,ajax請求的,無url跳轉的實現,還是需要一點點技巧的。本文實例講解一個Ext.Ajax.request的請求實例,返回后臺處理之后的結果。 ### 步驟一:創建struts2的配置文件struts.xml ~~~ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <package name="basicstruts2" extends="struts-default"> <action name="index"> <result>/index.jsp</result> </action> </package> </struts> ~~~ 這個文件需要放置在src目錄下,可以在下載的struts2中的webapp下找一個文件來直接使用,不需要自己一行代碼一行代碼的去敲,畢竟我們會使用就可以了。 ### 步驟二:對web.xml修改,增加struts2的支持 ~~~ <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ~~~ 這表示struts2會接管所有的請求,這樣我們前臺的請求都會納入struts2的支持了 ### 步驟三:增加struts2核心jar包以及struts2依賴的jar包 需要的jar包郵以下幾個:? 1.commons-fileupload-1.3.1.jar 2.commons-io-2.2.jar 3.commons-lang3-3.2.jar 4.freemarker-2.3.19.jar 5.javassist-3.11.0-GA.jar 6.ognl-3.0.6.jar 7.struts2-core-2.3.20.jar 8.xwork-core-2.3.20.jar 這8個jar包都可以在struts2的lib包里面找到,拷貝到項目lib目錄下就可以了,依賴的jar包之前有專門羅列過,參照: [http://blog.csdn.net/sushengmiyan/article/details/43272061](http://blog.csdn.net/sushengmiyan/article/details/43272061) 到此為止,我們的項目就配置成功了struts2,怎么去驗證成功與否呢?我們使用extjs寫一個ajax的request ### 步驟四:書寫前臺ajax請求 ~~~ Ext.Ajax.request({ url: 'foo', async: false, success: function(response) { debugger; var data = Ext.decode(response.responseText); console.log(data); } }); ~~~ 這里使用Ext.Ajax.request發送請求,指定了url為foo這個url就對應著struts2的一個action連接。我這里不太喜歡配置xml文件,而是喜歡使用struts2的注解的方式來實現跳轉,所以下一步,增加一個注解插件 ### 步驟五 增加struts2的注解插件 jar包增加struts2-convention-plugin-2.3.20.jar 步驟六:熟悉后臺實現代碼 在src目錄下增加自己的實現類 我這里新建了一個包com.oasystem.action 新增一個類TestAction ~~~ package com.oasystem.action; import java.io.IOException; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.ServletActionContext; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Result; import com.opensymphony.xwork2.ActionSupport; public class TestAction extends ActionSupport { private static final long serialVersionUID = 5316344216452587235L; private String _dc; //這里就是使用注解指定struts2 action調用的地方 @Action(value = "/foo") //方法設置成了void 不需要返回數據之間將數據寫回到response中了 public void foo() { HttpServletResponse response = ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); String abc = "{'a':'測試'}"; try { response.getWriter().write(abc); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }; public String get_dc() { return this._dc; }; public void set_dc(String dc) { this._dc = dc; }; } ~~~ OK測試一下,啟動tomcat服務器,執行這個ajax請求: ![](https://box.kancloud.cn/2016-02-03_56b214ec7c97f.jpg) 命令行輸出內容: ![](https://box.kancloud.cn/2016-02-03_56b214ec96d91.jpg) OK到現在,就已經成功將struts2與sencha extjs實現了關聯。所有的后臺都可以由struts2來接管了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看