09Mybatis_入门程序——删除用户以及更新用户

删除用户:

 还是前面的的案例,别的都不改,就修改两处地方。1.user.xml文件以及2.Mybatis_first.java文件

user.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">
<!-- nanmespace:命名空间。 作用就是对sql进行分类话管理,理解Sal分离

注意:使用mapper代理方式,namespace有特殊重要的作用
-->

<mapper namespace="test">
    
  

    
    <!-- 删除用户 -->
      <delete id="deleteUser" parameterType="java.lang.Integer">
          delete from user where id=#{id}
         
      </delete>
   
</mapper>

Mybatis_first.java代码如下:

package cn.itcast.mybatis.first;

import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.List;

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.Before;
import org.junit.Test;

import cn.itcast.mybatis.po.User;

public class Mybatis_first {
    
    //会话工厂
    private SqlSessionFactory sqlSessionFactory;
    //这些事必备的,所以放在Before这里了
    @Before
    public void createsqlSessionFactory() throws IOException
    {
        //配置文件
        String resource="SqlMapConfig.xml";
        InputStream inputStream=Resources.getResourceAsStream(resource);
        //使用SqlSessionFactoryBuilder从配置文件中创建SqlSessionFactory.
        sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
    }
    @Test
    //根据id查询用户的信息
    public void testFindUseById()
    {    //数据库会话实例
        SqlSession sqlSession=null;
        try {
            //创建数据库会话实例sqlSession;
            sqlSession=sqlSessionFactory.openSession();
            
            sqlSession.delete("test.deleteUser", 30);
            //手动提交事务
            sqlSession.commit();
            //关闭会话
            sqlSession.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        finally{
            //如果sqlSession实例是创建的那么把他关闭掉
            if(sqlSession!=null)
            {sqlSession.close();
                
            }
        }
}
    
}

运行结果一切正常。

------------------------------------------------------------------------------------------------------------------------------------------------------------

更新用户:

还是只修改user.xml文件以及Mybatis_first.java文件

user.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">
<!-- nanmespace:命名空间。 作用就是对sql进行分类话管理,理解Sal分离

注意:使用mapper代理方式,namespace有特殊重要的作用
-->

<mapper namespace="test">
    
  
    
    
      <!-- 更新用户 -->
      <update id="updetaUser" parameterType="cn.itcast.mybatis.po.User">
        update user set username=#{username},birthday=#{birthday},sex=#{sex},address=#{address}
        where id=#{id}
         
      </update>
   
</mapper>

Mybatis_first.java文件:

package cn.itcast.mybatis.first;

import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import java.util.List;

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.Before;
import org.junit.Test;

import cn.itcast.mybatis.po.User;

public class Mybatis_first {
    
    //会话工厂
    private SqlSessionFactory sqlSessionFactory;
    //这些事必备的,所以放在Before这里了
    @Before
    public void createsqlSessionFactory() throws IOException
    {
        //配置文件
        String resource="SqlMapConfig.xml";
        InputStream inputStream=Resources.getResourceAsStream(resource);
        //使用SqlSessionFactoryBuilder从配置文件中创建SqlSessionFactory.
        sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
    }
    @Test
    //根据id查询用户的信息
    public void testFindUseById()
    {    //数据库会话实例
        SqlSession sqlSession=null;
        try {
            //创建数据库会话实例sqlSession;
            sqlSession=sqlSessionFactory.openSession();
    
            
            User user=new User();
            user.setAddress("jiali");
             user.setBirthday(new Date());
             user.setSex("1");
             user.setId(29);
             user.setUsername("王王");
             sqlSession.update("test.updetaUser", user);
             
            //手动提交事务
            sqlSession.commit();
            //关闭会话
            sqlSession.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        finally{
            //如果sqlSession实例是创建的那么把他关闭掉
            if(sqlSession!=null)
            {sqlSession.close();
                
            }
        }
}
    
}

运行结果一切正常。

原文地址:https://www.cnblogs.com/shenxiaoquan/p/5774477.html