MyBatis笔记----Mybatis3.4.2与spring4整合:增删查改
Posted Stay Hungry, Stay Foolish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MyBatis笔记----Mybatis3.4.2与spring4整合:增删查改相关的知识,希望对你有一定的参考价值。
结构图
刚之前没什么区别,多了一个applicationContext.xml
包图
由于之前出了一点错误,有些包可能多加上了
数据库图
model
User.java
package com.ij34.model; public class User { private int id; private String name; private int age; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String toString() { return "User [id=" + id + ", name=" + name + ", age=" + age + "]"; } }
UserMapper.java
package com.ij34.model; public interface UserMapper { public User selectUser(int id); public void insertUser(User user); public void updateUser(User user); public void deleteUser(String name); }
xml
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.ij34.model.UserMapper"> <select id="selectUser" parameterType="int" resultType="User"> select * from users where id=#{id}; </select> <update id="updateUser" keyProperty="id"> update users set name=#{name},age=#{age} where id=#{id} </update> <insert id="insertUser" > insert into users(name,age)values(#{name},#{age}) </insert> <delete id="deleteUser" > delete from users where name=#{name} </delete> </mapper>
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> <typeAliases> <typeAlias type="com.ij34.model.User" alias="User"/> </typeAliases> <!-- <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> --> <mappers> <mapper resource="com/ij34/mybatis/UserMapper.xml"/> <!-- <mapper class="com.ij34.model.UserMapper"/> --> </mappers> </configuration>
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" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd"> <!-- Showcase\'s CustomFreemarkerManager example --> <bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://localhost:3306/mybatis"></property> <property name="username" value="root"></property> <property name="password" value="123456"></property> </bean> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="configLocation" value="com/ij34/mybatis/mybatis-config.xml"></property> </bean> <bean id="UserMapperFactory" class="org.mybatis.spring.mapper.MapperFactoryBean"> <property name="sqlSessionFactory" ref="sqlSessionFactory"></property> <property name="mapperInterface" value="com.ij34.model.UserMapper"></property> </bean> </beans>
测试
package com.ij34.bean; import java.io.IOException; //import java.io.InputStream; //import java.util.List; // //import org.apache.ibatis.io.Resources; //import org.apache.ibatis.session.SqlSession; //import org.apache.ibatis.session.SqlSessionFactory; //import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.ij34.model.*; public class Test { public static void main(String[] args) throws IOException { @SuppressWarnings("resource") ApplicationContext ac=new ClassPathXmlApplicationContext("com/ij34/mybatis/applicationContext.xml"); UserMapper mapper=(UserMapper) ac.getBean("UserMapperFactory"); User user=mapper.selectUser(3); //查找 System.out.println(user); /* User user=new User(); user.setId(9); user.setName("小测01"); user.setAge(22); mapper.insertUser(user); //添加 System.out.println(user);*/ /* User user=mapper.selectUser(8); user.setName("大大A"); user.setAge(28); mapper.updateUser(user); //更改 System.out.println(user);*/ // mapper.deleteUser("小测01"); //删除 // System.out.println("已经删除:小测01"); } }
结果
查
添加
更改
删除
---------多动手,少打字
以上是关于MyBatis笔记----Mybatis3.4.2与spring4整合:增删查改的主要内容,如果未能解决你的问题,请参考以下文章
java web开发入门七(mybatis)基于intellig idea
mybatis传多个参数(不使用@param注解情况下),3.4.2版本之后出现#{0}-#{n}参数绑定异常