Mybatis学习(五)——Mybatis与spring整合方法

1. 部署包 

2. 创建项目结构 mapper,service,controller,domain,config,utils

3. resource里创建spring-mvc.xml与applicationContext.xml与sqlMapperConfig-spring.xml

4. 编写spring-mvc.xml与web.xml发布是否能正确访问

5. 编写applicationContext.xml与web.xml

6. 在resource里创建xyz/javaswing/mapper。里面放置xxxMapper.xml映射文件

 

 

      (使用xml实现接口) 

Mybatis本质:使用xxxMapper.xml实现接口Mapper,通过@Autowrited 注入到对象来调用该方法 

 

使用

  applicationContext.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="com.mysql.jdbc.Driver"/>
        <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8"/>
        <property name="user" value="root"/>
        <property name="password" value="844597608a"/>
    </bean>

    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="configLocation" value="classpath:mybatis-spring.xml"/>
        <property name="mapperLocations" value="classpath:xyz/javaswing/mapper/*.xml"/>
        <property name="typeAliasesPackage" value="xyz.javaswing.domain"/>
    </bean>

    <bean id="mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="xyz.javaswing.mapper"/>
    </bean>

    <bean id="roleService" class="xyz.javaswing.service.impl.RoleServiceImpl">

    </bean>

</beans>

 

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

    <context:component-scan base-package="xyz.javaswing.controller"/>
    <mvc:annotation-driven/>
    <mvc:default-servlet-handler/>

</beans>

 

  sqlMapperConfig-spring.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

 

  mapper映射文件,xxxMapper.xml

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

<mapper namespace="xyz.javaswing.mapper.RoleMapper">

    <select id="list" resultType="role">
        select * from sys_role
    </select>

    <insert id="save" parameterType="role">
        insert into sys_role (roleName,roleDesc) values(#{roleName} , #{roleDesc})
    </insert>

</mapper>

 

  web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>

  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>

  <filter>
    <filter-name>CharacterEncoding</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>
  </filter>
  <filter-mapping>
    <filter-name>CharacterEncoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

  <servlet>
    <servlet-name>DispatcherServlet</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>DispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

</web-app>

 

posted @ 2022-03-13 15:41  remix_alone  阅读(73)  评论(0)    收藏  举报