mybatis简单应用

来源:互联网 发布:美国gdp数据公布时间 编辑:程序博客网 时间:2024/06/06 08:34

1.导包:
mybatis-3.4.5.jar
2. 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><!-- 导入数据库文件配置  -->    <properties resource="db.properties">    </properties>    <!-- 将具体映射的返回类型实体名 配置别名, 或者只写类名,不用加包名  -->    <typeAliases>        <package name="mybatis.domain"/>    </typeAliases><!-- 配置数据库  -->    <environments default="development">        <environment id="development">            <transactionManager type="JDBC" />            <dataSource type="POOLED">                <property name="driver" value="${jdbc.driverClassName}" />                <property name="url" value="${jdbc.url}" />                <property name="username" value="${jdbc.username}" />                <property name="password" value="${jdbc.password}" />            </dataSource>        </environment>    </environments><!-- 将包名下的映射文件下所有xml导入 , 也可以单个添加 -->    <mappers>        <package name="mybatis.mapper"/>    </mappers></configuration>

3.具体实现类的配置文件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"> <!-- namespace  映射的接口     id 接口中的方法--><mapper namespace="mybatis.mapper.UserMapper">  <select id="queryUser" resultType="User">    SELECT * FROM user  </select>  <select id="queryById" resultType="User">    SELECT * FROM user where id = #{id}  </select>  <select id="queryNameandAddress" resultType="User">    SELECT * FROM user where name = #{name} and address = #{address}  </select>  <!-- useGeneratedKeys id自增长     keyProperty  匹配实体的setId 插入id  -->  <insert id="insertUser" useGeneratedKeys="true" keyProperty="id">    insert into user(name,address,vip) values (#{name},#{address},#{vip})  </insert>  <update id="update">    update user set name=#{name},address = #{address},vip = #{vip} where id = #{id}  </update>  <delete id="delete">    delete user where id = #{id}  </delete></mapper>

4.接口:

public interface UserMapper {    List<User> queryUser();    User queryById(Long id);    //只接受一个参数,多个参数封装成集合    User queryNameandAddress(@Param("name") String name,@Param("address")String address);    int insertUser(User user);    int update(User user);    int delete(Long id);}

5.测试:

String resource = "mybatis-config.xml";        InputStream inputStream = Resources.getResourceAsStream(resource);        //创建工厂        SqlSessionFactory sqlSessionFactory =                 new SqlSessionFactoryBuilder().build(inputStream);        //创建session        SqlSession session = sqlSessionFactory.openSession();        try {            UserMapper mapper = session.getMapper(UserMapper.class);            List<User> users = mapper.queryUser();            System.out.println(users);            session.commit();//自开启事务,必须自动提交事务            }finally{            session.close();            }
原创粉丝点击