一项目框架图:
二,整合jar包
三,整合实现
db.properties
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.username=root
jdbc.password=123456
jdbc.url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC
1,mybatis-config.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>
<!-- mybatis框架的个性化配置可在此配置 -->
<typeAliases>
<package name="com.xfu.pojo"/>
</typeAliases>
</configuration>
2,applicationContext.xml(整合的具体展现)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
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
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
">
<context:component-scan base-package="com.xfu" />
<!-- 读取外部配置文件到spring容器中 -->
<context:property-placeholder
location="classpath:db.properties" />
<!-- 数据源 -->
<bean id="dataSource"
class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<bean id="sqlSessionFactory"
class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- <property name="typeAliasesPackage" value="com.xfu.pojo" /> -->
<property name="mapperLocations">
<array>
<!-- 配置单个映射文件 -->
<!-- <value>classpath:com/xfu/mapper/UserMapper.xml</value> -->
<!-- 配置多个映射文件使用 * 通配符 -->
<value>classpath:com/xfu/mapper/*Mapper.xml</value>
</array>
</property>
<!-- 配置mybatis-confg.xml主配置文件(注配置文件可以保留一些个性化配置,缓存,日志,插件) -->
<property name="configLocation"
value="classpath:mybatis-config.xml" />
<!-- 配置别名,使用包扫描 -->
<!-- <property name="typeAliasesPackage" value="com.xfu.pojo"></property> -->
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 配置SqlSessionFactoryBean的名称 -->
<property name="basePackage" value="com.xfu.mapper" />
<!-- 可选,如果不写,Spring启动时候。容器中。自动会按照类型去把SqlSessionFactory对象注入进来 -->
<!-- <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> -->
<property name="sqlSessionFactoryBeanName"
value="sqlSessionFactory" />
</bean>
</beans>
3,实体类
package com.xfu.pojo;
import lombok.Data;
@Data
public class User {
int id;
String name;
String pwd;
}
4,UserMapper
package com.xfu.mapper;
import java.util.List;
import com.xfu.pojo.User;
public interface UserMapper {
List<User> findAllUser();
User findAllUserBuId(int id);
int UpadtefindById(User user);
}
5,UserMapper.xml
<?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="com.xfu.mapper.UserMapper">
<select id="findAllUser" resultType="user">
select * from tbuser
</select>
<select id="findAllUserBuId" resultType="user" parameterType="int">
select * from tbuser where id=#{id}
</select>
<update id="UpadtefindById" parameterType="user">
update tbuser set name=#{name},pwd=#{pwd} where id=#{id}
</update>
</mapper>
6,Userservice
package com.xfu.service;
import java.util.List;
import com.xfu.pojo.User;
public interface UserService {
public List<User> findAllUser();
public User findAllUserBuId(int id);
public int UpadtefindById(User user);
}
7,UserServiceImpl
package com.xfu.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.xfu.mapper.UserMapper;
import com.xfu.pojo.User;
import com.xfu.service.UserService;
@Service
public class UserServiceImpl implements UserService{
@Resource
UserMapper usermapper;
@Override
public List<User> findAllUser() {
return usermapper.findAllUser();
}
@Override
public int UpadtefindById(User user) {
return usermapper.UpadtefindById(user);
}
@Override
public User findAllUserBuId(int id) {
return usermapper.findAllUserBuId(id);
}
}
8,测试类
package com.xfu.test;
import java.util.List;
import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.xfu.pojo.User;
import com.xfu.service.UserService;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations= {"classpath:applicationContext.xml"})
public class UserTest {
@Resource
UserService userservice;
@Test
public void test() {
List<User> list = userservice.findAllUser();
list.forEach(System.out::println);
}
@Test
public void tset2() {
User user = userservice.findAllUserBuId(1);
System.out.println(user);
}
public void test3() {
User user=new User();
user.setId(1);
user.setName("admin");
user.setPwd("admin");
String a=userservice.UpadtefindById(user)>0?"恭喜你修改成功":"修改失败";
System.out.println(a);
}
}
四:运行结果