mybatis入门程序
来源:互联网 发布:酒店美工工作职责 编辑:程序博客网 时间:2024/06/13 11:59
导入依赖包和驱动包
实体类User 放在pojo包下
package xyz.db361.mybatis.pojo;import java.io.Serializable;import java.util.Date;public class User implements Serializable { /** * */ private static final long serialVersionUID = 1L; private Integer id; private String username;// 用户姓名 private String sex;// 性别 private Date birthday;// 生日 private String address;// 地址 public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } @Override public String toString() { return "User [id=" + id + ", username=" + username + ", sex=" + sex + ", birthday=" + birthday + ", address=" + address + "]"; }}
创建User.xml映射文件,放在sqlmap包下
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace:命名空间,用于隔离sql,还有一个很重要的作用,后面会讲 --><!-- 写Sql语句 --><mapper namespace="xyz.db361.mybatis.mapper.UserMapper"> <!-- 通过id查询一个用户 --> <select id="findUserById" parameterType="Integer" resultType="xyz.db361.mybatis.pojo.User"> select * from user where id = #{v} </select> <!-- #{}占位符 ? = ‘ ’ = ‘五’ ${} 字符串拼接 不带单引号 = ‘%五%’ --> <select id="findUserByUserName" parameterType="String" resultType="User"> select * from user where username like '%${value}%' <!-- select * from user where username like "%"#{value}"%" --> </select> <!-- 添加用户 --> <!-- User运用了别名 --> <insert id="insertUser" parameterType="User"> <selectKey keyProperty="id" resultType="Integer" order="AFTER"> select LAST_INSERT_ID() </selectKey> insert into user(username, birthday, address, sex) values(#{username}, #{birthday}, #{address}, #{sex}) </insert> <!-- 更新 --> <update id="updateUserById" parameterType="User"> update user set username = #{username}, sex = #{sex}, birthday = #{birthday}, address = #{address} where id = #{id} </update> <!-- 删除 --> <delete id="deleteUserById" parameterType="Integer"> delete from user where id = #{id} </delete></mapper>
创建mybatis配置文件SqlMapConfig.xml文件放在src下
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <properties resource="jdbc.properties"/> <!-- 别名 --> <typeAliases> <!-- <typeAlias type="xyz.db361.mybatis.pojo.User" alias="User"/> --> <!-- User user 都对 --> <package name="xyz.db361.mybatis.pojo"/> </typeAliases> <!-- 和spring整合后 environments配置将废除 --> <environments default="development"> <environment id="development"> <!-- 使用jdbc事务管理 --> <transactionManager type="JDBC" /> <!-- 数据库连接池 --> <dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}" /> <property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8" /> <property name="username" value="root" /> <property name="password" value="root" /> </dataSource> </environment> </environments> <!-- 告诉Mapper文件的位置 --> <mappers> <!-- resource class url其中一个 --> <mapper resource="sqlmap/User.xml"/> <!-- 要求mapper名称和映射文件相同且在同意目录下 --> <!-- <mapper class="xyz.db361.mybatis.mapper.UserMapper"/> --> </mappers></configuration>
使用Mapper动态代理开发,创建mapper接口放在mapper包下
package xyz.db361.mybatis.mapper;import xyz.db361.mybatis.pojo.User;public interface UserMapper { /** * 遵循四个原则 * 接口方法名 = User.xml文件中的id名 * 返回值类型与xml文件中返回类型一致 * 方法的入参类型与xml文件中入参的类型要一致 * 接口和xml文件绑定(在xml文件中进行) * */ public User findUserById(Integer id); public Integer deleteUserById(Integer id);}
进行测试,一段测试代码如下
@Test public void testMapper() throws IOException { // 加载核心配置文件 String resource = "SqlMapConfig.xml"; // Resources.get InputStream in = Resources.getResourceAsStream(resource); // 创建SqlSessionFactory SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(in); // 创建SqlSession SqlSession sqlSession = sqlSessionFactory.openSession(); //SqlSession帮我生成一个实现类(给接口) UserMapper userMapper = sqlSession.getMapper(UserMapper.class); User u = userMapper.findUserById(34); System.out.println(u); }
阅读全文
0 0
- 【Mybatis进阶】--mybatis 入门程序
- mybatis入门程序
- Mybatis入门程序
- Mybatis入门程序
- mybatis入门程序
- Mybatis实战-入门程序
- mybatis--入门程序
- MyBatis (二) 入门程序
- Mybatis入门程序一
- mybatis的入门程序
- mybatis入门程序
- MyBatis 入门程序
- MyBatis入门小程序
- Mybatis入门程序
- Mybatis入门程序
- mybatis入门HelloWorld程序
- 【Mybatis】入门程序
- mybatis入门程序
- 常用js函数整理汇总
- Swift
- hjr理解-集群、分布式、负载均衡、微服务
- Apple Watch开发和数据传输(三)
- iPhoneX适配方案
- mybatis入门程序
- 详解EBS接口开发之库存事务处理采购接收--补充
- 【LIS】【模板】nlogn算法
- 33. Search in Rotated Sorted Array
- Springmvc全局异常处理器
- spark官网首页翻译
- hive的理解
- cocos2dx lua 读取json数据
- Swift