桂林论坛网站有哪些,友情链接网,电子商务网站建设期中,软件工程文档文章目录 一、创建各种类二、MyBatis的各种功能 1、查询select2、增加insert3、修改update4、删除delete三、总结 前言
在MyBatis项目中编写代码实现对MySql数据库的增删查改 一、创建各种类
1、在Java包的mapper文件下创建一个接口
我创建…
文章目录 一、创建各种类二、MyBatis的各种功能 1、查询select2、增加insert3、修改update4、删除delete三、总结 前言
在MyBatis项目中编写代码实现对MySql数据库的增删查改 一、创建各种类
1、在Java包的mapper文件下创建一个接口
我创建的接口名为SelectMapper
注意接口名之后要和写sql的xml文件名保持一致
这个接口专门用来写增删查改的方法和sql分离开 2、在resources包的mapper文件下创建一个xml文件
我的xml文件名为SelectMapper,和接口名保持一致
这个xml文件专门用来写sql语句 3、在text包的java文件下创建一个测试类
我的测试类名为SelectMapperText这个名称没有固定的要求
这个测试类专门用来测试对数据库的操作是否成功 二、MyBatis的各种功能
在stu库下有一张名为User的表下面对这张表进行各种功能实现 1、查询功能select 查询User表所有用户的信息 因为查询的内容返回的数据不止一条因此我们用List集合作为返回值
SelectMapeer接口下定义方法名ListUser getAllUser()
public interface SelectMapper {/*若查询多条不能用实体类对象为返回值否则报错*///查询所有信息ListUser getAllUser();}
SelectMapper的xml文件下写sql语句
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.mybatis.mapper.SelectMapper!-- ListUser getAllUser();--select idgetAllUser resultTypeUserselect *from user/select/mapper
注意mapper的namespace必须对应接口名select的id必须是我们写的方法名两个必须要一样。查询结果需要返回因此有resultType为实体类名 SelectMapperText类开始测试
import com.mybatis.Util.SqlSessionUtil;
import com.mybatis.mapper.SelectMapper;
import com.mybatis.pojo.User;
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;import javax.crypto.spec.PSource;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;public class SelectMapperText {Testpublic void getAllUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);ListUser allUser mapper.getAllUser();allUser.forEach(s- System.out.println(s));}}运行getAllUser后为 成功查到所有用户信息 2、增加功能insert 向User表增加一个用户用户信息为 用户名sb,密码123456年龄20性别男邮件123456qq.com SelectMapeer接口下定义方法名void insertUser(User user);
package com.mybatis.mapper;import com.mybatis.pojo.User;
import org.apache.ibatis.annotations.Param;import java.util.List;
import java.util.Map;public interface SelectMapper {//查询所有信息ListUser getAllUser();//插入用户信息void insertUser(User user);
}SelectMapper的xml文件下写sql语句
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.mybatis.mapper.SelectMapper!-- ListUser getAllUser();--select idgetAllUser resultTypeUserselect *from user/select!-- void insertUser(User user);--insert idinsertUserinsert into user values (null,#{username},#{password},#{age},#{sex},#{email})/insert/mapper
SelectMapperText类开始测试
import com.mybatis.Util.SqlSessionUtil;
import com.mybatis.mapper.SelectMapper;
import com.mybatis.pojo.User;
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;import javax.crypto.spec.PSource;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;public class SelectMapperText {Testpublic void getAllUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);ListUser allUser mapper.getAllUser();allUser.forEach(s- System.out.println(s));}Testpublic void insertUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);User user new User(null,sb,123456,20,男,123456qq.com);mapper.insertUser(user);}}成功添加用户信息 3、修改功能update 修改用户名为admin的信息将性别改为女 SelectMapeer接口下定义方法名 void updateUser(String username)
package com.mybatis.mapper;import com.mybatis.pojo.User;
import org.apache.ibatis.annotations.Param;import java.util.List;
import java.util.Map;public interface SelectMapper {//查询所有信息ListUser getAllUser();//插入用户信息void insertUser(User user);//修改用户信息void updateUser(Param(username) String username);//用注释当sql名
}SelectMapper的xml文件下写sql语句
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.mybatis.mapper.SelectMapper!-- ListUser getAllUser();--select idgetAllUser resultTypeUserselect *from user/select!-- void insertUser(User user);--insert idinsertUserinsert into user values (null,#{username},#{password},#{age},#{sex},#{email})/insert!-- void updateUser(Param(username) String username);--update idupdateUserupdate user set sex 女 where username#{username}/update/mapper
SelectMapperText类开始测试
import com.mybatis.Util.SqlSessionUtil;
import com.mybatis.mapper.SelectMapper;
import com.mybatis.pojo.User;
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;import javax.crypto.spec.PSource;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;public class SelectMapperText {Testpublic void getAllUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);ListUser allUser mapper.getAllUser();allUser.forEach(s- System.out.println(s));}Testpublic void insertUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);User user new User(null,sb,123456,20,男,123456qq.com);mapper.insertUser(user);}Testpublic void updateUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);mapper.updateUser(admin);}}成功修改用户信息 4、删除功能update 删除用户为“root”的所有信息 SelectMapeer接口下定义方法名void deleteUser(String username)
package com.mybatis.mapper;import com.mybatis.pojo.User;
import org.apache.ibatis.annotations.Param;import java.util.List;
import java.util.Map;public interface SelectMapper {//查询所有信息ListUser getAllUser();//插入用户信息void insertUser(User user);//修改用户信息void updateUser(Param(username) String username);//用注释当sql名//删除用户信息void deleteUser(Param(username) String username);
}SelectMapper的xml文件下写sql语句
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.mybatis.mapper.SelectMapper!-- ListUser getAllUser();--select idgetAllUser resultTypeUserselect *from user/select!-- void insertUser(User user);--insert idinsertUserinsert into user values (null,#{username},#{password},#{age},#{sex},#{email})/insert!-- void updateUser(Param(username) String username);--update idupdateUserupdate user set sex 女 where username#{username}/update!-- void deleteUser(Param(username) String username)--delete iddeleteUserdelete from user where username #{username}/delete
/mapper SelectMapperText类开始测试
import com.mybatis.Util.SqlSessionUtil;
import com.mybatis.mapper.SelectMapper;
import com.mybatis.pojo.User;
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;import javax.crypto.spec.PSource;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;public class SelectMapperText {Testpublic void getAllUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);ListUser allUser mapper.getAllUser();allUser.forEach(s- System.out.println(s));}Testpublic void insertUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);User user new User(null,sb,123456,20,男,123456qq.com);mapper.insertUser(user);}Testpublic void updateUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);mapper.updateUser(admin);}Testpublic void deleteUser() throws IOException {InputStream is Resources.getResourceAsStream(mybatis-config.xml);SqlSessionFactory sessionFactory new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession sessionFactory.openSession(true);SelectMapper mapper sqlSession.getMapper(SelectMapper.class);mapper.deleteUser(root);}
}成功删除用户信息 三、总结 首先创造好接口写入要进行的方法名然后创建xml文件专门写sql语句值得注意的是namespace要和接口名相同id名要和接口里面的方法名相同在测试类中先获取映射文件然后创建数据会议工厂生成数据会议最后创建mapper使用接口的函数。
总之流程为 1、创建接口写方法名。 2、创建xml文件写sql语句。 3、测试类进行测试 如果本篇文章对你有用的话请一键三连支持一下博主一起共同学习共同进步