zoukankan      html  css  js  c++  java
  • springMVC和mybatis的框架搭建

    1 .pom.xml引入spring和mybatis的jar包

    2.spring的mvc.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:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
    http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">

    <!-- 使用Annotation自动注册Bean,只扫描@Controller -->
    <context:component-scan base-package="qianliyan.controller" use-default-filters="false"><!-- base-package 如果多个,用“,”分隔 -->
    <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
    </context:component-scan>
    <mvc:annotation-driven />
    <mvc:resources mapping="/static/**" location="/static/" cache-period="31536000"/>
    <!-- 视图解析器
    解析jsp解析,默认使用jstl标签,classpath下的得有jstl的包
    -->
    <bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!-- 配置jsp路径的前缀 -->
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <!-- 配置jsp路径的后缀 -->
    <property name="suffix" value=".jsp"/>
    </bean>
    </beans>

    3. 配一下spring和mybatis整合文件applicationContext-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:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd
    http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">
    <!-- 引入配置文件 -->
    <bean id="propertyConfigurer"
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location" value="classpath:iluxday.properties" />
    </bean>
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
    destroy-method="close">
    <property name="driverClassName" value="${jdbc.driver}" />
    <property name="url" value="${jdbc.url}" />
    <property name="username" value="${jdbc.username}" />
    <property name="password" value="${jdbc.password}" />

    <!-- 连接池最大数量 -->
    <property name="maxActive" value="30"></property>
    <!-- 连接池最大空闲 -->
    <property name="maxIdle" value="5"></property>

    </bean>
    <!--spring与mybatis整合-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <!-- 自动扫描mapping.xml文件 -->
    <!--
    <property name="mapperLocations" value="classpath:com/ssm/mapping/*.xml"></property>
    -->
    <!-- 全局配置 -->
    <!-- 若不保留mybatis配置文件用上面那条替换这一条 -->
    <property name="configLocation" value="classpath:sqlMapConfig.xml"/>
    </bean>

    <!-- DAO接口所在包名,Spring会自动查找其下的类 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!-- 扫描包路径,需要扫描多个包中间用逗号隔开 -->
    <property name="basePackage" value="qianliyan.dao" />
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
    </bean>

    <context:component-scan base-package="qianliyan.service.impl"/>
    </beans>

    4再配置mybatis的配置文件sqlMapConfig.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
    <configuration>
    <mappers>
    <!-- 注册userMapper.xml文件 -->
    <mapper resource="qianliyan/mapping/ProductSaleTopMapper.xml"/>

    </mappers>
    </configuration>

    5.web.xml文件中配置spring和springmvc的容器

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">
    <display-name>Archetype Created Web Application</display-name>
    <!-- Context ConfigLocation -->
    <!-- Spring容器和mybatis的配置文件 -->
    <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath*:/applicationContext-*.xml</param-value>
    </context-param>
    <!-- Spring监听器 -->
    <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
    <param-name>forceEncoding</param-name>
    <param-value>true</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <!-- 防止Spring内存溢出监听器 -->
    <!-- MVC servlet -->
    <servlet>
    <servlet-name>springServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath*:/spring-mvc*.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>springServlet</servlet-name>
    <url-pattern>/</url-pattern>
    </servlet-mapping>
    </web-app>

    6. 创建pojo类

    package qianliyan.pojo;

    public class ProductSaleTopModel {
    private Integer productItemID;
    private String ordersDate;

    private Integer quanlity;

    public Integer getProductItemID() {
    return productItemID;
    }

    public void setProductItemID(Integer productItemID) {
    this.productItemID = productItemID;
    }

    public String getOrdersDate() {
    return ordersDate;
    }

    public void setOrdersDate(String ordersDate) {
    this.ordersDate = ordersDate;
    }

    public Integer getQuanlity() {
    return quanlity;
    }

    public void setQuanlity(Integer quanlity) {
    this.quanlity = quanlity;
    }
    }

    7。创建mapper.xml和Dao接口

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="qianliyan.dao.ProductSaleTopDao" >

    <resultMap id="productSaleTopMap" type="qianliyan.pojo.ProductSaleTopModel">

    <result column="ProductItemID" property="productItemID" jdbcType="INTEGER"/>
    <result column="OrdersDate" property="ordersDate" jdbcType="VARCHAR"/>
    <result column="Quantity" property="quanlity" jdbcType="INTEGER"/>
    </resultMap>
    <!-- 查询所有 -->
    <select id="getAll" resultMap="productSaleTopMap">
    select * from SaleProductTOP
    </select>
    </mapper>

    package qianliyan.dao;
    import java.util.List;

    import qianliyan.pojo.*;

    public interface ProductSaleTopDao {

    public List<ProductSaleTopModel> getAll();
    }

    8。创建UserService 和UserServiceImp

    package qianliyan.service;

    import java.util.List;

    import qianliyan.pojo.ProductSaleTopModel;

    public interface ProductSaleTopService {
    public List<ProductSaleTopModel> getAll();
    }

    package qianliyan.service.impl;

    import java.util.List;

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

    import qianliyan.dao.ProductSaleTopDao;
    import qianliyan.pojo.ProductSaleTopModel;
    import qianliyan.service.ProductSaleTopService;

    @Service("productSaleTopService")
    public class ProductSaleTopServiceImpl implements ProductSaleTopService{

    @Autowired
    private ProductSaleTopDao productSaleTopDao;
    @Override
    public List<ProductSaleTopModel> getAll() {
    // TODO Auto-generated method stub
    return productSaleTopDao.getAll();
    }

    }

    9。创建控制层Controller.java

    package qianliyan.controller;

    import java.util.List;

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

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;

    import qianliyan.pojo.ProductSaleTopModel;
    import qianliyan.service.ProductSaleTopService;

    @Controller
    public class ProductSaleTop {
    @Autowired
    private ProductSaleTopService productSaleTopService;
    @RequestMapping(value="/demo")
    public String index(HttpServletRequest request, HttpServletResponse response, Model model){
    System.out.println("Hello world!");

    List<ProductSaleTopModel> list= productSaleTopService.getAll();
    for(ProductSaleTopModel product : list)
    {
    System.out.println(product.getProductItemID()+":"+product.getQuanlity());
    }
    return "ProductSale";
    }
    }

    10 在WEB-INF/jsps/下创建ProductSale.jsp

  • 相关阅读:
    每周工作进度及工作量统计
    debug阶段工作期站立会议2(进度推进)
    new NABCD
    事后诸葛亮会议 (尸体解剖)
    debug阶段工作期站立会议1
    用户使用报告
    Scrum会议10(Beta版本) 补交
    历年学生作品点评
    关于词频统计的效能测试
    敏捷开发之Scrum站立会议
  • 原文地址:https://www.cnblogs.com/lovefendi/p/7526828.html
Copyright © 2011-2022 走看看