mybatis详解-(7)增删改查
来源:互联网 发布:大数据时代来临 编辑:程序博客网 时间:2024/05/17 18:24
1.新建对象
新建对象Employee
package org.mybatis.crud;public class Employee { private Integer id; private String lastName; private String email; private String gender; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } @Override public String toString() { return "Employee [id=" + id + ", lastName=" + lastName + ", email=" + email + ", gender=" + gender + "]"; }}
2.新建Mapper接口
新建EmployeeMapper接口
package org.mybatis.crud;public interface EmployeeMapper { public Employee getEmployeeById(int id); public void addEmployee(Employee employee); public void updateEmployee(Employee employee); public void deleteEmployee(int id);}
3.新建Mapper配置文件
新建配置文件crudmapper.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="org.mybatis.crud.EmployeeMapper"> <!-- 查询方法 --> <!-- 传递单个参数,不用做特殊处理直接使用:#{任意名称的参数} --> <select id="getEmployeeById" resultType="org.mybatis.crud.Employee"> select * from mybatis_employee where id = #{id} </select> <!-- 插入方法 --> <insert id="addEmployee" parameterType="org.mybatis.crud.Employee"> insert into mybatis_employee (last_name,email,gender) values (#{lastName},#{email},#{gender}); </insert> <!-- 更新方法 --> <update id="updateEmployee"> update mybatis_employee set last_name = #{lastName}, email = #{email}, gender = #{gender} where id = #{id} </update> <!-- 删除方法 --> <delete id="deleteEmployee"> delete from mybatis_employee where id = #{id} </delete></mapper>
4.新建主配置文件
新建mybatis-config-crud.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> <properties resource="db.properties"></properties> <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="${mysql.driver}" /> <property name="url" value="${mysql.url}" /> <property name="username" value="${mysql.username}" /> <property name="password" value="${mysql.password}" /> </dataSource> </environment> </environments> <mappers> <mapper resource="mapper/crudmapper.xml"/> </mappers></configuration>
6.新建测试类
package org.mybatis.crud;import java.io.IOException;import java.io.InputStream;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.junit.Test;/** * 使用接口式編程 * @author tang * */public class MybatisTest { public SqlSessionFactory getSqlSessionFactory() throws IOException{ String resource = "mybatis-config-crud.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); return sqlSessionFactory; } @Test public void testMybatisSelect() {//测试查询 SqlSessionFactory sqlSessionFactory = null; SqlSession sqlSession = null; try { sqlSessionFactory = getSqlSessionFactory(); sqlSession = sqlSessionFactory.openSession(); EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class); Employee employee = mapper.getEmployeeById(1); System.out.println("--------------------------" + employee + "--------------------------"); } catch (IOException e) { e.printStackTrace(); } finally { sqlSession.close(); } } @Test public void testMybatisAdd() {//测试添加 SqlSessionFactory sqlSessionFactory = null; SqlSession sqlSession = null; try { sqlSessionFactory = getSqlSessionFactory(); //openSession可以添加参数,无参数表示不会自动提交,需要手动提交// sqlSession = sqlSessionFactory.openSession(); sqlSession = sqlSessionFactory.openSession(true); EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class); Employee employee = new Employee(); //mysql数据库设置id自增,oracle数据库待续 employee.setLastName("huanhuan"); employee.setEmail("tang_man@sina.com"); employee.setGender("2"); mapper.addEmployee(employee);// sqlSession.commit(); } catch (IOException e) { e.printStackTrace(); } finally { sqlSession.close(); } } @Test public void testMybatisUpdate() {//测试修改 SqlSessionFactory sqlSessionFactory = null; SqlSession sqlSession = null; try { sqlSessionFactory = getSqlSessionFactory(); sqlSession = sqlSessionFactory.openSession(); EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class); Employee employee = new Employee(); //数据库设置id自增 employee.setId(3); employee.setLastName("panpan"); employee.setEmail("tang_man@sohu.com"); employee.setGender("1"); mapper.updateEmployee(employee); sqlSession.commit(); } catch (IOException e) { e.printStackTrace(); } finally { sqlSession.close(); } } @Test public void testMybatisDelete() {//测试删除 SqlSessionFactory sqlSessionFactory = null; SqlSession sqlSession = null; try { sqlSessionFactory = getSqlSessionFactory(); sqlSession = sqlSessionFactory.openSession(); EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class); mapper.deleteEmployee(1); sqlSession.commit(); } catch (IOException e) { e.printStackTrace(); } finally { sqlSession.close(); } }}
阅读全文
0 0
- mybatis详解-(7)增删改查
- Mybatis 增删改查
- mybatis增删改查
- mybatis增删改查
- mybatis 增删改查
- MyBatis增删改查
- mybatis--增删改查
- MyBatis增删改查
- MyBatis增删改查
- mybatis增删改查
- Mybatis增删改查
- mybatis增删改查
- mybatis增删改查
- mybatis增删改查
- MyBatis 查增删改
- mybatis之增删改查
- mybatis 增删改查操作
- Mybatis-实现增删改查
- 数据集
- 设计模式_24:访问者模式
- hello
- java对前台增删改操作后数据的处理方法
- ros中kobuki(turtlebot)+rplidar 跑gmapping 发布时间:2016年11月23日 13:32:20 浏览数:828次 来自:kint_zhao 由于手头目
- mybatis详解-(7)增删改查
- redis学习
- 飞机大战(关于JavaFX注意点)
- 深入理解C++中public、protected及private用法
- 字符串匹配问题
- 最长重复词问题(java)
- 百度天工IoT 快速上手
- 使用jquery实现文字滚动,鼠标悬停效果
- android自定义的RadioButton