mybatis进行CRUD操作

来源:互联网 发布:itools mac 查看cpu 编辑:程序博客网 时间:2024/04/29 03:47

一个简单例子:

User.java

package com.lx.bean;public class User {private int id;private String name;private int age;public User() {}public User(int id, String name, int age) {super();this.id = id;this.name = name;this.age = 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;}@Overridepublic String toString() {return "User [id=" + id + ", name=" + name + ", age=" + age + "]";}}

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.lx.test2.userMapper">       <!--         CRUD操作       -->       <insert id="addUser" parameterType="User">           insert into users(name,age) values(#{name},#{age})       </insert>             <delete id="deleteUser" parameterType="int">         delete from users where id=#{id}        </delete>              <update id="updateUser" parameterType="User">         update users set name=#{name},age=#{age} where id=#{id}        </update>      <select id="getUser" parameterType="int" resultType="User">          select * from users where id=#{id}      </select>            <select id="getAllUsers" resultType="User">        select * from users      </select></mapper>

conf.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"/>   <!--                 取别名    -->    <typeAliases>       <!-- <typeAlias type="com.lx.test1.User" alias="_User"/> -->       <package name="com.lx.bean"/>    </typeAliases>    <environments default="development"><environment id="development"><transactionManager type="JDBC" /><dataSource type="POOLED"><property name="driver" value="${driver}" /><property name="url" value="${url}" /><property name="username" value="${username}" /><property name="password" value="${password}" /></dataSource></environment></environments><mappers><!-- 添加映射文件 -->    <mapper resource="com/lx/test1/userMapper.xml"/>    <mapper resource="com/lx/test2/userMapper.xml"/>    <mapper class="com.lx.test2.UserOperation"/>    <mapper resource="com/lx/test3/orderMapper.xml"/></mappers></configuration>


查询所有的数据

   添加下面:

 <select id="getOrder" parameterType="int" resultMap="getOrder2Map">          select * from orders where id=#{id}       </select>                 <!--         resultMap:数据库表与类之间的映射关系           id:对应主键           result:属性       -->      <resultMap type="Order" id="getOrder2Map">         <id property="id" column="id"/>         <result property="orderNo" column="order_no"/>         <result property="orderName" column="order_name"/>      </resultMap>


以上是采用的xml方式进行操作,下面通过注解方式操作:

package com.lx.test2;import org.apache.ibatis.annotations.Delete;import org.apache.ibatis.annotations.Insert;import org.apache.ibatis.annotations.Select;import org.apache.ibatis.annotations.Update;import com.lx.bean.User;/** * 采用注解方式 * @author Administrator * */public interface UserOperation {@Insert("insert into users(name,age) values(#{name},#{age})")public void addUser(User user);@Delete("delete from users where id=#{id}")public void deleteUserById(int id);@Update("update users set name=#{name},age=#{age} where id=#{id}")public void updateUser(User user);@Select("select * from users where id=#{id}")public User getUserById(int id);}

测试函数:

@Testpublic void getUserById(){SqlSessionFactory factory =   FactoryUtil.getFactory();SqlSession session = factory.openSession();UserOperation operation = session.getMapper(UserOperation.class);User user = operation.getUserById(2);System.out.println(user);}







0 0
原创粉丝点击