Spring+SpringMVC+mybatis整合以及注解的使用

1.包结构:

 2.spring配置:基本的DAO配置以及扫描Mapper(扫描出来的Mapper为首字母小写)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
 4     xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
 5     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 6     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
 7     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
 8     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
 9     http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd">
10
11
12     <context:property-placeholder location="classpath:db.properties"/>
13
14     <!-- 数据库连接池 -->
15     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
16         destroy-method="close">
17         <property name="driverClassName" value="${jdbc.driver}" />
18         <property name="url" value="${jdbc.url}" />
19         <property name="username" value="${jdbc.username}" />
20         <property name="password" value="${jdbc.password}" />
21         <property name="maxActive" value="10" />
22         <property name="maxIdle" value="5" />
23     </bean>
24
25     <!-- Mybatis的工厂 -->
26     <bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
27         <property name="dataSource" ref="dataSource"/>
28         <!-- 核心配置文件的位置 -->
29         <property name="configLocation" value="classpath:sqlMapConfig.xml"/>
30     </bean>
31
32     <!-- Mapper动态代理开发   扫描 -->
33     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
34         <!-- 基本包 -->
35         <property name="basePackage" value="cn.qlq.springmvc.mapper"/>
36     </bean>
37
38     <!-- 注解事务 -->
39     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
40         <property name="dataSource" ref="dataSource"/>
41     </bean>
42
43     <!-- 开启注解 -->
44     <tx:annotation-driven transaction-manager="transactionManager"/>
45
46
47 </beans>

3.mybatis配置(主要就一个定义别名)

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE configuration
 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 4 "http://mybatis.org/dtd/mybatis-3-config.dtd">
 5 <configuration>
 6     <!-- 设置别名 -->
 7     <typeAliases>
 8         <!-- 2. 指定扫描包,会把包内所有的类都设置别名,别名的名称就是类名,大小写不敏感 -->
 9         <package name="cn.qlq.springmvc.pojo" />
10     </typeAliases>
11
12 </configuration>

4.springMVC配置(主要就是配置扫描Service和Controller)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
 4     xmlns:context="http://www.springframework.org/schema/context"
 5     xmlns:mvc="http://www.springframework.org/schema/mvc"
 6     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
 7         http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
 8         http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">
 9
10
11
12         <!-- 扫描@Controler  @Service   -->
13         <context:component-scan base-package="cn.qlq"/>
14
15         <!-- 处理器映射器 -->
16 <!--         <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> -->
17         <!-- 处理器适配器 -->
18 <!--         <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/> -->
19         <!-- 注解驱动 -->
20         <mvc:annotation-driven/>
21
22
23
24         <!-- 视图解释器 -->
25         <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
26             <property name="prefix" value="/WEB-INF/jsp/"/>
27             <property name="suffix" value=".jsp"/>
28         </bean>
29
30    </beans>

5.Service使用注解注入Mapper(主要就是自己添加service注释与内部注入mapper)

   5.1 接口(接口中不做任何声明)

1 package cn.qlq.springmvc.service;
2 import java.util.List;
3
4 import cn.qlq.springmvc.pojo.Items;
5 public interface ItemService {
6     public List<Items> findAllItems();
7 }

    5.2.Service实现类(自己添加service注释与内部注入mapper)

 1 package cn.qlq.springmvc.service;
 2
 3 import java.util.List;
 4
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Service;
 7
 8 import cn.qlq.springmvc.mapper.ItemsMapper;
 9 import cn.qlq.springmvc.pojo.Items;
10
11 @Service
12 public class ItemsServiceImpl implements ItemService {
13
14     @Autowired
15     private ItemsMapper itemsMapper;
16     @Override
17     public List<Items> findAllItems() {
18
19         List<Items> selectByExampleWithBLOBs = itemsMapper.selectByExampleWithBLOBs(null);
20         return selectByExampleWithBLOBs;
21     }
22
23 }

6. 控制层(声明自己是Controller层与自动注入Service)

package cn.qlq.springmvc.controller;

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

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

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

import cn.qlq.springmvc.pojo.Items;
import cn.qlq.springmvc.service.ItemService;

/**
 * 商品管理
 *
 * @author lx
 *
 */
@Controller
public class ItemController {
    @Autowired
    private ItemService itemService;
    //入门程序 第一   包类 + 类包 + 方法名
    @RequestMapping(value = "/item/itemlist.action")
    public ModelAndView itemList(){
        //从Mysql中查询
        List<Items> list = itemService.findAllItems();

        ModelAndView mav = new ModelAndView();
        //数据
        mav.addObject("itemList", list);
        mav.setViewName("itemList");
        return mav;
    }

}

总结:Service层注入时只用在实现类上声明service。注入时候注入接口名字。可以用自动装配@Autowired,也可以用

@Resource(name="baseDao")
private BaseDao baseDao; 
这种格式注入对象,name就是扫描后的名字。
时间: 2024-08-26 10:21:37

Spring+SpringMVC+mybatis整合以及注解的使用的相关文章

Spring+SpringMVC +MyBatis整合配置文件案例66666

Spring+SpringMVC +MyBatis整合配置文件案例 标签: springspringmvcmybatismvcjava 2017-04-13 19:12 228人阅读 评论(1) 收藏 举报 分类: java_javaSE(2) 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] Spring+SpringMVC +MyBatis整合配置文件案例 针对spring/SpringMVC/MyBatis三个框架的整合有很多的方式,经过最近的学习我来总结一下其配置文

ssm之spring+springmvc+mybatis整合初探

1.基本目录如下  2.首先是向lib中加入相应的jar包  3.然后在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/

spring+springMVC+mybatis整合并使用redis做缓存

1.用idea 构建一个maven 的web项目 点击下一步 继续下一步 选着maven home directory 自己的maven 安装目录,全选下一步,等一分钟就OK了 2.配置pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="h

Spring+SpringMvc+Mybatis整合注意事项

web.xml代码如下 <?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" xsi:schemaLocation="http://java.sun.com/xml/n

2016.5.19 SSM 框架(一) Spring SpringMVC Mybatis 整合思路

前言 : 内容 依然是根据 传智播客 燕青老师 视频 及自己理解所写 1. 总体框架图 2.理解 可能从后往前更好理解一点 底层: 数据库    mysql  sqlserver oracle 等等 持久层(DAO):                   ---调用数据库   提供mapper接口 持久层 生成 Mapper接口(DAO接口), 提供访问数据库的方法和数据. 业务层(Service):                --- 调用 mapper 接口     提供Service接口

Spring+SpringMVC+MyBatis整合应用

1)搭建Spring,SpringMVC和MyBatis环境 创建一个web工程 添加MyBatis相关环境 引入数据库驱动包和DBCP连接池开发包 引入MyBatis开发包 添加Spring,SpringMVC相关技术环境 引入Spring ioc,jdbc-tx,aop开发包 引入Spring web,webmvc开发包 在src下添加spring.xml配置文件 在web.xml中配置DispatcherServlet前端控制器和中文乱码 处理过滤器CharacterEncodingFil

Spring+SpringMVC+Mybatis整合 pom示例

<!-- SpringMVC,Spring --> <dependencies> <!-- Spring mvc --> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spri

Spring SpringMvc + MyBatis 整合

一.使用的jar包就不详细讲解了,下载了Mybatis 和 Spring 的jar包基本上都添加上去了. 一图概括:(这是我使用的ar包,有些不是Mybatis 和 Spring 的 )  二. web.xml配置文件 [html] view plaincopy <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSche

Spring+SpringMVC+MyBatis整合配置

前端控制器 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="