Spring结合三层架构

1 首先导入srping包 创建好spring的配置

2 创建好三层架构-action-service-dao-model(这里的层并不完整,只是为了做演示而创建)

3 在各个层里面写入要调用层的字段,必须封装,不然spring的配置无法set注入。



在model层里面先创建UserInfo类----在这里用UserInfo类做例子


   先在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"
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.1.xsd">

     <bean id="userInfoDao" class="com.gxa.bj.UserInfoDao">//配置dao层

    </bean>

     <bean id="userInfoService" class="com.gxa.bj.service.UserInfoService">//配置service层

      <property  name="userInfoDao" ref="userInfoDao"></property>

    </bean>

     <bean id="userInfoAction"  class="com.gxa.bj.action.UserInfoAction">//配置service层

          <property name="userInfoAction" ref="userInfoService"></property>

     </bean>

     

   </beans>

比如dao层 在这里只做演示 并不实现实际功能

public void UserInfoDao()

{

      public void getInsert()

       {

            sysout("这是用户的信息的插入");

       }

}

    service层:

  public void UserInfoService()

{

      private UserInfoDao userInfoDao ;//封装要调用的dao层

      public  void    setUserInfoDao(UserInfoDao u)

     {

                this.userInfoDao = u;

     }

     public UserInfoDao  getUserInfo()

     {

              return  userInfoDao;

     }

          public  void getInsert()

          {

                   sysout("这是业务层的调用");

                   userInfoDao.getInsert();//调用dao层的方法并没有实际的new 对象  在spring内已经注入

          }

}


        action层:

         public   void   UserInfoAction()

       {

                  private UserInfoService userInfoService;//封装要调用的service层

                  public UserInfoService getUserInfoService()

                 {
             return userInfoService;
         }


        public void setUserInfoService(UserInfoService userInfoService)

                {
          this.userInfoService = userInfoService;
        }

                public    void    getInsert()

               {

                          System.out.println("这是界面层的处理");
           userInfoService.insertService();

               }

       } 

            

      测试Test

      public Test      

      {

            public   static   void   main(String[] agrs)

           {

                  ApplicationContext appContext = new ClassPathXmlApplicationContext("applicationContext.xml");

                  UserInfoAction   user = appContext.getBean("userInfoAction",UserInfoAction.class);

                 user.getInsert();//一层掉一层

           }

      }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值