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

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

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

    沉睡森林@漂在北京

    本處文章除注明“轉(zhuǎn)載”外均為原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處。

      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      152 隨筆 :: 4 文章 :: 114 評(píng)論 :: 0 Trackbacks

    Spring2.5MVC應(yīng)用實(shí)例

     

    首先在web.xml中配置spring相關(guān)servletlistener

           <!--  Spring 服務(wù)層的配置文件 -->

        <context-param>

            <param-name>contextConfigLocation</param-name>

            <param-value>classpath:applicationContext.xml,classpath:dataAccessContext-jdbc.xml</param-value>

        </context-param>

        

        <!--  Spring 容器啟動(dòng)監(jiān)聽(tīng)器 -->

        <listener>

            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

        </listener>

     

        <!--  Spring MVC Servlet,它將加載WEB-INF/annomvc-servlet.xml

               配置文件,以啟動(dòng)Spring MVC模塊-->

        <servlet>

            <servlet-name>greatwall</servlet-name>

            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

            <load-on-startup>0</load-on-startup>

        </servlet>

     

        <servlet-mapping>

            <servlet-name>greatwall</servlet-name>

            <url-pattern>*.do</url-pattern>

    </servlet-mapping>

     

    配置里面主要涉及三個(gè)xml配置文件,分別對(duì)應(yīng)的代碼如下:

    applicationContext.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <beans xmlns="http://www.springframework.org/schema/beans"

           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

           xmlns:context="http://www.springframework.org/schema/context"

           xmlns:tx="http://www.springframework.org/schema/tx"

           xmlns:p="http://www.springframework.org/schema/p"

           xsi:schemaLocation="http://www.springframework.org/schema/beans

               http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

                     http://www.springframework.org/schema/tx 

                  http://www.springframework.org/schema/tx/spring-tx-2.5.xsd

               http://www.springframework.org/schema/context

               http://www.springframework.org/schema/context/spring-context-2.5.xsd">

          

           <context:annotation-config />

          

        <context:component-scan base-package="com.example" />

    </beans>

    dataAccessContext-jdbc.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <beans xmlns="http://www.springframework.org/schema/beans"

           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"

           xmlns:tx="http://www.springframework.org/schema/tx"

           xsi:schemaLocation="http://www.springframework.org/schema/beans

               http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

                     http://www.springframework.org/schema/tx 

                  http://www.springframework.org/schema/tx/spring-tx-2.5.xsd

               http://www.springframework.org/schema/context

               http://www.springframework.org/schema/context/spring-context-2.5.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/greatwall" />

                  <property name="username" value="root" />

                  <property name="password" value="sa" />

           </bean>

           <!-- ibatis sqlMapClient config -->

        <bean id="sqlMapClient"   class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">

            <property name="configLocation">

                <value>classpath:sql\sql-map-config.xml</value>

            </property>

            <property name="dataSource">

                <ref bean="dataSource"/>

            </property>   

        </bean>

    </beans>

    greatwall-servlet.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <beans xmlns="http://www.springframework.org/schema/beans"

           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"

           xmlns:context="http://www.springframework.org/schema/context"

           xsi:schemaLocation="http://www.springframework.org/schema/beans

        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

        http://www.springframework.org/schema/context

        http://www.springframework.org/schema/context/spring-context-2.5.xsd">

           <context:component-scan base-package="com.example" />

           <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

           <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/app/" p:suffix=".jsp" />

    </beans>

     

    其中,dataAccessContext-jdbc.xml這個(gè)文件是為了ibatis需要的,如果你使用的hibernate或者jdbc的話,可以先將里面的bean全部去掉,保留一個(gè)空的beans節(jié)點(diǎn)既可。

     

    實(shí)例的java類如下:

    package com.example.controller;

     

    import java.io.IOException;

    import java.io.PrintWriter;

     

    import javax.servlet.http.HttpServletResponse;

     

    import net.sf.json.JSONObject;

     

    import org.springframework.beans.factory.annotation.Autowired;

    import org.springframework.beans.factory.annotation.Qualifier;

    import org.springframework.stereotype.Controller;

    import org.springframework.web.bind.annotation.RequestMapping;

     

    import com.example.domain.Customer;

    import com.example.exception.CustomerException;

    import com.example.service.ICustomerService;

    import com.example.util.ListRange;

     

    @Controller

    public class CustomerController {

          

           @Autowired(required = false)

           @Qualifier("customerService")

           private ICustomerService customerService = null;

     

           @RequestMapping("/listCustomer.do")

           public void list(HttpServletResponse response,int start,int limit) {

                  try {

                         ListRange<Customer> listRange = new ListRange<Customer>();

                         listRange.setLimit(limit);

                         listRange.setStart(start);

                        

                         customerService.queryRecords(listRange);

                         response.setContentType("text/javascript;charset=UTF-8");

                         try {

                                PrintWriter out = response.getWriter();

                                out.write(JSONObject.fromObject(listRange).toString());

                         } catch (IOException e) {

                               

                         }

                        

                  } catch (CustomerException e) {

                         e.printStackTrace();

                  }

           }

     

           @RequestMapping("/deleteCustomer.do")

           public void delete(HttpServletResponse response,String ids) {

                  ListRange<Customer> result = new ListRange<Customer>();

                  result.setSuccess(true);

                  try {

                         customerService.delete(ids);

                  } catch (CustomerException e) {

                         e.printStackTrace();

                         result.setSuccess(false);

                  }

                  response.setContentType("text/javascript;charset=UTF-8");

                  try {

                         PrintWriter out = response.getWriter();

                         out.write(JSONObject.fromObject(result).toString());

                  } catch (IOException e) {

                        

                  }

           }

     

           @RequestMapping("/updateCustomer.do")

           public void update(HttpServletResponse response,Customer customer) {

                  System.out.println(customer);

                  ListRange<Customer> result = new ListRange<Customer>();

                  result.setSuccess(true);

                  try {

                         customerService.update(customer);

                  } catch (CustomerException e) {

                         e.printStackTrace();

                  }

                  response.setContentType("text/javascript;charset=UTF-8");

                  try {

                         PrintWriter out = response.getWriter();

                         out.write(JSONObject.fromObject(result).toString());

                  } catch (IOException e) {

                        

                  }

           }

     

           @RequestMapping("/selectCustomer.do")

           public void select() {

                 

           }

     

           @RequestMapping("/insertCustomer.do")

           public void insert(HttpServletResponse response,Customer customer) {

                  System.out.println(customer);

                  ListRange<Customer> result = new ListRange<Customer>();

                  result.setSuccess(true);

                  try {

                         customerService.insert(customer);

                  } catch (CustomerException e) {

                         e.printStackTrace();

                  }

                  response.setContentType("text/javascript;charset=UTF-8");

                  try {

                         PrintWriter out = response.getWriter();

                         out.write(JSONObject.fromObject(result).toString());

                  } catch (IOException e) {

                        

                  }

           }

     

    }

     

    Spring會(huì)自動(dòng)的將http提交的參數(shù)對(duì)應(yīng)到javabean上,這里使用了一個(gè)ICustomerService的注入操作,還有一些javabean,可以直接去掉,保留一個(gè)最簡(jiǎn)單的版本進(jìn)行測(cè)試。

     

    posted on 2008-12-22 13:40 王總兵 閱讀(2258) 評(píng)論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 亚洲国产精品久久久久婷婷老年| 女人裸身j部免费视频无遮挡| 4虎永免费最新永久免费地址| 亚洲精品综合一二三区在线| 久久成人免费播放网站| 国产亚洲成AV人片在线观黄桃| 国产区在线免费观看| 国产亚洲一区区二区在线| 国产黄在线播放免费观看| ZZIJZZIJ亚洲日本少妇JIZJIZ| 一级毛片aaaaaa视频免费看| 亚洲国产精品尤物yw在线| 成在线人直播免费视频| 2048亚洲精品国产| 久久久久久国产a免费观看不卡 | 亚洲国产欧美日韩精品一区二区三区| 18禁无遮挡无码网站免费| 亚洲欧美成人综合久久久| 日本xxwwxxww在线视频免费| 国产精品亚洲一区二区三区| 亚洲国产精品嫩草影院久久| 亚洲免费在线观看| 亚洲国产综合无码一区| 久久精品国产大片免费观看| 老汉色老汉首页a亚洲| 97性无码区免费| 亚洲综合激情五月丁香六月| 国产福利免费在线观看| 美女被爆羞羞网站免费| 国产日产亚洲系列最新| 国产无遮挡无码视频免费软件| 亚洲精品免费在线观看| 免费精品国产自产拍在| 亚洲AV无码一区二区三区电影| 免费一级毛片在级播放| 国内精品99亚洲免费高清| 亚洲四虎永久在线播放| 久久精品无码一区二区三区免费 | 国产精品无码免费视频二三区| 牛牛在线精品免费视频观看| 亚洲乱码日产一区三区|