flio

             :: 首頁(yè) :: 聯(lián)系 ::  :: 管理
            0 Posts :: 6 Stories :: 6 Comments :: 0 Trackbacks
          本來(lái)準(zhǔn)備直接寫srping+hibernate的集成了,不過(guò)為了讓自己鞏固知識(shí),為了讓看到文章的更了解流程,所以把最開始搭建的流程走下。
          上篇講到了springmvc實(shí)現(xiàn)了控制層的helloworld實(shí)例,這篇接著寫service層,和dao層的整合。
          這里會(huì)需要幾個(gè)配置文件,applicationContext.xml,test-service.xml,test-dao.xml
          applicationContext主要就是包含后面兩個(gè)文件了。其實(shí)這三個(gè)文件可以寫在一個(gè)配置文件中,不過(guò)為了更好的分離,所以拆開了dao的配置文件,和service的配置文件。
          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"
              xsi:schemaLocation
          ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
              http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
              ">
              <!-- 數(shù)據(jù)訪問(wèn)層配置 -->
              
          <import resource="classpath:/configSource/test-dao.xml" />
               
          <!--服務(wù)層配置 -->
              
          <import resource="classpath:/configSource/test-service.xml" />
          </beans>
            

          test-dao.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:tx="http://www.springframework.org/schema/tx"
              xmlns:context
          ="http://www.springframework.org/schema/context"
              xmlns:p
          ="http://www.springframework.org/schema/p"
              xsi:schemaLocation
          ="
              http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
              http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
              http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
              <!-- 掃描com.baobaotao.dao包下所有標(biāo)注@Repository的DAO組件 -->
              
          <context:component-scan base-package="com.Integrat.*.dao"/>
              
          </beans>

          test-service.xml的配置內(nèi)容如下:

          <?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:tx="http://www.springframework.org/schema/tx"
              xmlns:aop
          ="http://www.springframework.org/schema/aop"
              xmlns:context
          ="http://www.springframework.org/schema/context"
              xmlns:p
          ="http://www.springframework.org/schema/p"
              xsi:schemaLocation
          ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
              http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
              http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd 
              http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
             <!-- 掃描com.baobaotao.service包下所有標(biāo)注@Service的服務(wù)組件 -->
              
          <context:component-scan base-package="com.Integrat.*.service"/>
              
          </beans>

          test-dao.xml,test-service.xml 都是經(jīng)過(guò)了簡(jiǎn)單的配置,并不是完整的,請(qǐng)注意,只是演示一個(gè)配置的過(guò)程,一步步的配置,記下每一步的作用,了解下原理。
          可以看到上面兩個(gè)配置文件每個(gè)里面都只有1行語(yǔ)句,就是自動(dòng)掃描注解的service和dao,如果這里不配置的話,在service和dao類上注解了也沒(méi)法解析,可能爆出bean創(chuàng)建錯(cuò)誤
          注意賦值的時(shí)候,需要改下目錄結(jié)構(gòu)(com.Integrat.*.service 這里改成自己的service路徑*表示通配符)
          配置好了就開始寫代碼吧,首先寫dao層吧代碼如下:

          @Repository
          public class DemoDao extends BaseDao<AdminDicVO>{
              
          public void demo(){
                  System.out.println(
          "demoDAO執(zhí)行了");
              }

              
          }

          如果調(diào)用了dao層會(huì)簡(jiǎn)單在控制臺(tái)輸出一段話,值得注意的是在類名上面要寫上注解@Repository ,表示這是dao層
          接著寫service層代碼如下:

          @Service
          public class DemoService{
              @Autowired
              
          private DemoDao dao;
              
          public void Test(){
                  System.out.println(
          "service調(diào)用dao層");
                  dao.demo();
              }

          }

          這里需要注意的是在類名上面需要寫上@service注解,表示這是一個(gè)service,在private DemoDao dao; 上面要寫上注解@Autowired,自動(dòng)注入這個(gè)dao,
          接下來(lái)就看controller層代碼了:

          @Controller
          @RequestMapping(
          "/demo")
          public class DemoController {
              @Autowired 
              
          private DemoService service;  //這里注入service
              @RequestMapping("/demo1")
              
          public String demo(){
                  System.out.println(
          "controller執(zhí)行demo,調(diào)用service");
                  service.Test();
                  
          return null;
              }

              
          }

          就這么簡(jiǎn)單的代碼就可以通過(guò)controller調(diào)用service,通過(guò)service調(diào)用dao層了
          接下來(lái)就訪問(wèn)下http://localhost:8080/項(xiàng)目名/demo/demo1.test  就可以看到控制臺(tái)打印出的數(shù)據(jù)了。
          這樣mvc3層就結(jié)合起來(lái)了。往后,只需要在在dao層加入hibernate,封裝basedao,在service層配置事務(wù),就ok了。
          整合hibernate待續(xù)...
          posted on 2012-05-30 20:33 flio 閱讀(2082) 評(píng)論(3)  編輯  收藏 所屬分類: 框架技術(shù)

          Feedback

          # re: SpringMVC+hibernate3(2.mvc三層實(shí)現(xiàn)) 2012-05-31 08:34 x7
          哥又頂了  回復(fù)  更多評(píng)論
            

          # re: SpringMVC+hibernate3(2.mvc三層實(shí)現(xiàn)) [未登錄](méi) 2012-09-19 10:51 ken
          期待樓主 出整合hibernate的代碼啊  回復(fù)  更多評(píng)論
            

          # re: SpringMVC+hibernate3(2.mvc三層實(shí)現(xiàn)) 2015-02-13 22:46 zuidaima
          spring mvc demo教程源代碼下載:http://zuidaima.com/share/kspringmvc-p1-s1.htm  回復(fù)  更多評(píng)論
            


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 吉木萨尔县| 舞阳县| 陇西县| 彭泽县| 固阳县| 张家界市| 琼海市| 诸城市| 宁波市| 新乐市| 嘉禾县| 乐山市| 宁都县| 江阴市| 岚皋县| 缙云县| 闸北区| 汶上县| 梓潼县| 个旧市| 呼玛县| 枣庄市| 西华县| 永宁县| 交口县| 富锦市| 呼玛县| 察雅县| 雷州市| 无棣县| 夏邑县| 肇源县| 乐平市| 大厂| 新建县| 呼和浩特市| 项城市| 德江县| 湘潭县| 新干县| 四子王旗|