Spring+Struts2 整合

利用Spring+Struts2实现列表显示

编写DAO

  1. 引入spring开发包和applicationContext.xml

    
    
      org.springframework
      spring-context
      4.3.12.RELEASE
    
    
     
    
      org.springframework
      spring-jdbc
      4.3.12.RELEASE
    
    
    
      mysql
      mysql-connector-java
      5.0.2
    
    
      c3p0
      c3p0
      0.9.1.2
    
    
  2. 在Spring中配置DataSource组件

    
    
        
        
        
        
    
    
  3. 在Spring中配置JdbcTemplate组件

    
        
    
    
  4. 根据操作表编写实体类

    Direction.java

  5. 编写Dao接口和实现类

    • 接口

      public interface DirectionDao {
          public List findAll();
      }
      
    • 实现类(扫描、注入JdbcTemplate)

      @Repository("directionDao")
      public class DirectionDaoImpl implements DirectionDao{
      
          @Autowired
          private JdbcTemplate template;
      
          public List findAll() {
              String sql  = "select * from direction";
              RowMapper rowMapper = new BeanPropertyRowMapper(Direction.class);
              List list = template.query(sql, rowMapper);
              return list;
          }
      
      }
      
    • 扫描配置

      
      

Struts2和Spring结合

  1. 将Action扫描到Spring容器,注入DAO

    @ParentPackage("struts-default")
    //@Namespace("/")
    @Controller
    @Scope("prototype")
    public class ListAction {
    
        private List list;
    
        @Autowired
        private DirectionDao directionDao;
    
        @Action(value="list",results={@Result(location="/list.jsp")})
        public String list(){
            //调用DAO查询数据表集合
            list = directionDao.findAll();
            return "success";
        }
        //省略set和get
    }
    
  2. 引入struts2-spring-plugin.jar包

    作用:能使Struts2框架访问Spring容器,从容器中调用Action对象。

    
    
      org.apache.struts
      struts2-spring-plugin
      2.3.12
    
    
  3. 在web.xml配置ContextLoaderListener

    作用:在服务器启动时,实例化Spring容器以及内部组件对象。

      
      
        
        org.springframework.web.context.ContextLoaderListener
        
      
      
      
        contextConfigLocation
        classpath:applicationContext.xml
      
    

你可能感兴趣的:(java,架构,后台)