<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    小菜毛毛技術分享

    與大家共同成長

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks
    經過兩天工作閑余時間的奮戰,終于flex3+struts 1.3+spring +ibatis 2.x 整合成功,下面介紹下詳細的步驟和核心代碼:
    IDE:myeclipse
    (當然:前提是FLEX+java整合成功的情況下,關于flex+java整合的文章就比較多,google下就OK):
    1.成功整合FLEX+JAVA后,右鍵單擊項目選擇 MyEclipse---》add struts(添加STRUTS比較簡單這里就不多說了),下面貼代碼:
    (1)
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">
    <struts-config>
      
    <form-beans />
      
    <global-exceptions />
      
    <action-mappings >
        
    <action 
        path
    ="/user" 
        type
    ="com.yinhai.struts.action.UserAction" 
         scope
    ="request"
       
    >
        
    <forward name="sucess" path="/index.jsp" />
        
    </action>
      
    </action-mappings>
    </struts-config>
    在web-info下的struts-config.xml中添加如上代碼
    (2)UserAction
     1package com.yinhai.struts.action;
     2
     3import java.io.IOException;
     4import java.io.PrintWriter;
     5import java.sql.Connection;
     6import java.sql.DriverManager;
     7import java.sql.SQLException;
     8import java.util.List;
     9
    10import javax.servlet.http.HttpServletRequest;
    11import javax.servlet.http.HttpServletResponse;
    12
    13import model.User;
    14
    15import org.apache.struts.action.Action;
    16import org.apache.struts.action.ActionForm;
    17import org.apache.struts.action.ActionForward;
    18import org.apache.struts.action.ActionMapping;
    19import org.springframework.beans.factory.BeanFactory;
    20import org.springframework.context.support.ClassPathXmlApplicationContext;
    21
    22import dao.ContextHelper;
    23import dao.UserDaoImpl;
    24
    25/** 
    26 * MyEclipse Struts
    27 * Creation date: 08-05-2009
    28 * 
    29 * XDoclet definition:
    30 * @struts.action parameter="method" validate="true"
    31 * @struts.action-forward name="fail" path="/fail.jsp"
    32 * @struts.action-forward name="sucess" path="/sucess.jsp"
    33 */

    34public class UserAction extends Action  {
    35    /*
    36     * Generated Methods
    37     */

    38
    39    /** 
    40     * Method execute
    41     * @param mapping
    42     * @param form
    43     * @param request
    44     * @param response
    45     * @return ActionForward
    46     * @throws IOException 
    47     */

    48    public ActionForward execute(ActionMapping mapping, ActionForm form,
    49            HttpServletRequest request, HttpServletResponse response)  {
    50//        ClassPathXmlApplicationContext ctxss = new ClassPathXmlApplicationContext("applicationContext.xml");
    51//        BeanFactory ctx=(BeanFactory)ctxss; 
    52//       UserDaoImpl um = (UserDaoImpl) ctx.getBean("userDao"); 
    53        UserDaoImpl um =(UserDaoImpl)ContextHelper.getContext().getBean("userDao");
    54        List users = um.getUsers(); 
    55        User user=null;
    56        String xml="<?xml version=\"1.0\" encoding=\"utf-8\"?><users>";
    57        for(int i=0;i<users.size();i++){
    58            user=(User)users.get(i);
    59            xml=xml+"<user>"+
    60            "<usernumber>"+user.getUsernumber()+"</usernumber>" +
    61            "<name>"+user.getName()+"</name>"+
    62            "<password>"+user.getPassword()+"</password>"+
    63        "</user>";
    64        }

    65        xml=xml+"</users>";
    66        System.out.println(xml);
    67        PrintWriter p = null;
    68        try {
    69//            p=response.getWriter();
    70            response.getWriter().write(xml);
    71            
    72        }
     catch (Exception e) {
    73            // TODO Auto-generated catch block
    74            e.printStackTrace();
    75        }

    76        //p.write(xml);
    77//        p.print("<?xml version=\"1.0\" encoding=\"utf-8\"?><users><user><usernumber>1</usernumber><name>caicai</name><password>dddddd</password></user><user><usernumber>2</usernumber><name>yingying</name><password>dddddd</password></user><user><usernumber>3</usernumber><name>ceshi</name><password>dddddd</password></user><user><usernumber>4</usernumber><name>ceshi</name><password>dddddd</password></user>");
    78//        p.close();
    79        
    80        return null;

    (3)獲取bean的工具類
    package dao;

    import org.springframework.context.support.ClassPathXmlApplicationContext;

    /**
     * Date: 2008-3-20 Time: 17:28:48 To change this template use File | Settings |
     * File Templates.
     
    */

    public class ContextHelper {
        
    private static ClassPathXmlApplicationContext _ctx;

        
    static {
            _ctx 
    = new ClassPathXmlApplicationContext("/applicationContext.xml");
        }


        
    public static ClassPathXmlApplicationContext getContext() {
            
    return _ctx;
        }

        
    }

    2.添加SRPING
    右鍵單擊項目選擇 MyEclipse---》add spring
    spring的配置文件
    <?xml version="1.0" encoding="UTF-8"?>
    <beans
        xmlns
    ="http://www.springframework.org/schema/beans"
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation
    ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
        

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        
    <property name="url" value="jdbc:mysql://localhost:3306/test"/>
        
    <property name="username" value="root"/>
        
    <property name="password" value="root"/>
      
    </bean>

      
    <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
        
    <property name="configLocation" value="sqlmap-config.xml"/>
        
    <property name="dataSource" ref="dataSource"/>
      
    </bean>
      
    <bean id="userDao" class="dao.UserDaoImpl">
        
    <property name="sqlMapClient" ref="sqlMapClient"/>
      
    </bean>

    </beans>

    (3)添加IBATIS
    首先將ibatis的JAR包導入,放在LIB下即可
    IBTIS配置文件
    sqlmapconfig.xml
    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE sqlMapConfig      
        PUBLIC 
    "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"      
        
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

    <sqlMapConfig>

      
    <!-- Configure a built-in transaction manager.  If you're using an 
           app server, you probably want to use its transaction manager 
           and a managed datasource 
    -->


      
    <!-- List the SQL Map XML files. They can be loaded from the 
           classpath, as they are here (com.domain.data
    -->
      
    <sqlMap resource="dao/User.xml"/>
      
    <!-- List more here
      
    <sqlMap resource="com/mydomain/data/Order.xml"/>
      
    <sqlMap resource="com/mydomain/data/Documents.xml"/>
      
    -->

    </sqlMapConfig>
    User.xml
    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE sqlMap      
        PUBLIC 
    "-//ibatis.apache.org//DTD SQL Map 2.0//EN"      
        
    "http://ibatis.apache.org/dtd/sql-map-2.dtd">

    <sqlMap namespace="User">

      
    <!-- Use type aliases to avoid typing the full classname every time. -->
      
    <typeAlias alias="user" type="model.User"/>

      
    <!-- Select with no parameters using the result map for Account class-->
      
    <select id="getUsers" resultClass="user" >
        select 
    * from user;
      
    </select>


    </sqlMap>

    注意:User.xml一定要和相應的DAO的實現類放一個包下
    4.FLEX文件
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
        
    <![CDATA[
            
    import mx.rpc.events.FaultEvent;
            
    import mx.controls.Alert;
            
    import mx.rpc.events.ResultEvent;
            
    import mx.controls.DataGrid;
        [Bindable]
        
    public var gridXml:XML;
        
    public function httpHandler(event:ResultEvent):void{
            Alert.show(
    "hello2");
            gridXml
    =XML(event.result);
            
            griddata.dataProvider
    =gridXml.children();//XMLList
        }

        
    public function initHandler():void{
            testHttp.url
    ="http://localhost:8080/LCSYS/user.do";
            Alert.show(
    "hello1");
            testHttp.send();
            
        }

        
    public function httpFail(event:FaultEvent):void{
            Alert.show(
    "調用失敗");
            Alert.show(event.message.toString());
        }

        ]]
    >
    </mx:Script>
    <mx:HTTPService id="testHttp" result="httpHandler(event)" fault="httpFail(event)" resultFormat="e4x" />
        
    <mx:Panel x="171" y="64" width="670" height="342" layout="absolute" id="userPannel" title="userPannel1">
            
    <mx:DataGrid x="0" y="0" width="100%" height="100%"   id="griddata">
                
    <mx:columns>

                     
    <mx:DataGridColumn dataField="usernumber" headerText="usernumber"/>
                    
    <mx:DataGridColumn dataField="name" headerText="name"/>
                    
    <mx:DataGridColumn dataField="password" headerText="password"/>
               
                
    </mx:columns>
            
    </mx:DataGrid>
            
    <mx:ControlBar height="34" y="262">
                
    <mx:Button label="查詢人員列表" click="initHandler()"/>
            
    </mx:ControlBar>
        
    </mx:Panel>
    </mx:Application>

    5.其他文件:
    工具類,解決亂碼
    package dao;

    import java.io.UnsupportedEncodingException;

    import org.springframework.context.support.ClassPathXmlApplicationContext;

    public class Tool {
         
    public static String change(String str){
             String str2;
            
    try {
                 str2 
    = new String(str.getBytes("iso-8859-1"),"UTF-8"); 
                
    return str2;
            }
     catch (UnsupportedEncodingException e) {
                
    // TODO Auto-generated catch block
                e.printStackTrace();
            }

             
    return null;
            
         }

        
    }

    userDaoImpl
    package dao;

    import java.util.List;

    import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

    public class UserDaoImpl extends SqlMapClientDaoSupport implements UserDao  {

        
    public List getUsers() {
            
    // TODO Auto-generated method stub
            return this.getSqlMapClientTemplate().queryForList("getUsers");
        }


    }

    時間關系,介紹得比較粗糙也沒撒說明,不過只要對框架較熟悉的應該很快能搭建起環境
    本文章主要是集成框架介紹

    注意:需要IBATIS的JAR吧,dbcp連接池的包,還有相應的驅動包
    posted on 2009-08-13 14:38 小菜毛毛 閱讀(2713) 評論(4)  編輯  收藏 所屬分類: J2EE相關技術與框架

    Feedback

    # re: flex3+struts 1.3+spring +ibatis 2.x 整合實例---讓新人少走彎路(myeclipse)[未登錄] 2011-07-07 11:26 aaa
    都不說明一下,直接發一堆代碼,寫了跟沒寫有什么區別,新人能看懂嗎  回復  更多評論
      

    # re: flex3+struts 1.3+spring +ibatis 2.x 整合實例---讓新人少走彎路(myeclipse) 2012-11-16 15:27 王志國
    挺好的  回復  更多評論
      

    # re: flex3+struts 1.3+spring +ibatis 2.x 整合實例---讓新人少走彎路(myeclipse) 2012-11-16 15:28 王志國
    原來都是錯誤,這次到反映點東西回來。
    將struts中Action后的jsp網頁給傳回來了。神奇!  回復  更多評論
      

    # re: flex3+struts 1.3+spring +ibatis 2.x 整合實例---讓新人少走彎路(myeclipse) 2014-04-13 21:33 最代碼
    最代碼上轉載了你的文章,有問題請回復,地址:http://www.zuidaima.com/share/1778657261997056.htm  回復  更多評論
      

    主站蜘蛛池模板: 四虎影院免费视频| 成人免费视频网址| 亚洲国产精品一区二区第四页 | 手机在线看永久av片免费| 亚洲视频2020| 亚洲欧美日韩中文字幕在线一区| 国产久爱免费精品视频| 8888四色奇米在线观看免费看| 亚洲av最新在线网址| 一级毛片在线免费看| 亚洲Av无码乱码在线znlu| 国产亚洲视频在线观看网址| 97无码人妻福利免费公开在线视频 | 在线观看无码的免费网站| 亚洲av无码有乱码在线观看| 日韩av无码久久精品免费| 亚洲视频一区二区在线观看| 一区二区视频免费观看| 亚洲无线码一区二区三区| 国产亚洲精品成人久久网站| 亚洲另类少妇17p| 国产精品区免费视频| 亚洲最大av无码网址| 亚洲成av人在线观看网站| 四虎AV永久在线精品免费观看| 黄色视屏在线免费播放| 久久亚洲AV成人出白浆无码国产| 国产亚洲精品免费视频播放| 亚洲国产人成精品| a级黄色毛片免费播放视频| 亚洲综合无码精品一区二区三区| 免费看一级高潮毛片| 久久久亚洲精品蜜桃臀| 久久午夜夜伦鲁鲁片免费无码影视| 亚洲午夜久久久影院| xxxx日本免费| 亚洲一区二区三区在线观看网站| 亚洲AV无码乱码在线观看牲色| 任你躁在线精品免费| 亚洲高清中文字幕免费| 午夜dj免费在线观看|