软件工程综合实践(3)

软件工程综合实践(3)

 

注意事项:

1.  mybatis-config.xml

         a.实体类  和  别名设置  (让mybatis 能够识别项目中的实体类   将之与 数据库的   表名,列名,属性一一对应)

 

  <typeAliases>

    <!--  <typeAlias alias="User" type="com.neusoft.model.User" />-->

    <!--  <package name="com.neusoft.model"/>-->

    <typeAlias alias="Userinfo" type="cn.neusoft.pojo.Userinfo" />

  </typeAliases>

 

  说明:如果xxMapper.xml配置文件放在和xxMapper.java统一目录下,mappers也可以省略,因为org.mybatis.spring.mapper.MapperFactoryBean默认会去查找与xxMapper.java相同目录和名称的xxMapper.xml

  就不需要写

  <mapper resource="com/neusoft/mapper/userMapper.xml" />

 

  而   sql文所在 的 mapper.xml文件加载,我们可以通过mapper 扫描的方式进行处理,这里我们交给了spring 帮我们实现,具体内容在  spring-common.xml中操作了,具体方法如下:(在自己项目中,注意修改如下代码  加粗  标红的  包名)

 

  <!--

    3. mybatis自动扫描加载Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory

 

    basePackage:指定sql映射文件/接口所在的包(自动扫描)

  -->

  <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

    <property name="basePackage" value="cn.neusoft.mapper"></property>

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

  <!--        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>-->

  </bean>

 

  在spring-mvc.xml文件中,开发的时候,我们全用注解的方式加速开发,这个时候需要注意  对项目中注解的内容进行扫描,具体方法如下:(加粗标红的cn.neusoft  代表是你需要扫描的包所在位置)

 

  <!-- 注解扫描包 -->

  <context:component-scan base-package="cn.neusoft" />

 

  <!-- 开启注解 -->

  <mvc:annotation-driven />

 

在项目开发中  你们需要写:

1. controller

2. mapper 需要写一些常用方法(可以直接使用mybatis逆向工程生成的方法  生成mapper ,同时还可以生成 Userinfo 实体类)

逆向生成的方法,有些特殊的sql 操作是没有的,还是需要手写

3.Service的方法,需要写

4.Jsp 页面需要实现

 

 

package cn.neusoft.controller;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

import cn.neusoft.pojo.Userinfo;

public class UsersController1 implements Controller {

    public ModelAndView handleRequest(HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        // TODO Auto-generated method stub
        //模拟一下数据库中信息
        List<Userinfo> list = new ArrayList<Userinfo>();
        //向list  注入数据
        Userinfo user1 = new Userinfo();
        user1.setUserid(1);
        user1.setUsername("neusoft");
        user1.setPwd("123");
        Userinfo user2 = new Userinfo();
        user2.setUserid(2);
        user2.setUsername("东软");
        user2.setPwd("123");        
        
        list.add(user1);
        list.add(user2);
        
        ModelAndView mav = new ModelAndView();
        //在ModelAndView   把 list 的值  传递
        //相当于  实现了  request.setAttribute("users",list);
        mav.addObject("users",list);
        //指定一个显示的   jsp 页面
        mav.setViewName("/users");
        return mav;
    }

}

 

 

 

 

posted @ 2017-07-05 21:40  .Yan  阅读(148)  评论(0编辑  收藏  举报