zoukankan      html  css  js  c++  java
  • mybitis实现增,删,改,查,模糊查询的两种方式:(1)

    方法一:没有接口,只需要xml配置文件 直接使用sqlsession的方法进行操作数据库

    1.新建一个java项目

    2.将mybatis的jar 和mysql的jar包添加到构建路径中

    3.连接好数据库(连接数据库的步骤在这里就省略了)

    4.建立一个测试表(t_login)

     5.新建一个pojo(普通的java对象 plain ordinary java object)类

    对应数据库表

    6.写一个xml文件

    7.写一个测试类测试一下

     8.整个工程的目录如下图所示

    package test;
    
    
    import java.io.InputStream;
    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 entity.Login;
    public class Login_Test {
    
        public static void main(String[] args) throws Exception {
            // TODO 自动生成的方法存根
            
            //读取配置文件
            String resource = "main_config.xml";
            InputStream is = Resources.getResourceAsStream(resource);
            
            //使用建造者 (builder)创建会话工厂
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
            //创建session
            SqlSession sqlSession = sqlSessionFactory.openSession();
            System.out.println(sqlSession+"数据库已经连接好了"+sqlSession);
            Login login2 = new Login();
        
            
            login2.setUsername("用户2");
            login2.setPassword("31134");
            /**
             * 使用sqlSession的插入方法
             * insertone 是mapper映射文件中插入语句的id(用id来唯一表示sql语句)
             */
            int insert = sqlSession.insert("insertone", login2);
            System.out.println("-------------插入一条记录-----------");
            System.out.println("insert="+insert);
            
            
            /**
             * 查询表中的所有用户,用集合接收
             */
            List<Login> selectList = sqlSession.selectList("selectAll", Login.class);
            List<Login> list = sqlSession.selectList("selectAll");
            System.out.println("-------------查询所有用户-----------");
            for (Login login : list) {
    
                System.out.println("用户id:"+login.getId()+"用户名:"+login.getUsername()+"用户密码:"+login.getPassword());
                
            }
            
            /**
             * 通过id来查询用户
             */
            System.out.println("----------通过id来查询用户---------");
            Login login = sqlSession.selectOne("selectbyid", 2);
            System.out.println("通过id查询到的数据"+login);
            
            /**
             * 更新一条数据
             */
            System.out.println("----------更新一条数据---------");
            Login login3 = new Login( 3, "333333","dhao");
            int update = sqlSession.update("updateone", login3);
            System.out.println("update="+update);
            /**
             * 提交数据
             */
            sqlSession.commit();
            /**
             * 关闭连接
             */
            sqlSession.close();
            
            
            
            
    
        }
    
    }         

  • 相关阅读:
    面向对象之继承
    面向对象之封装
    进程相关(一)
    面向对象之反射,元类
    实现效果从中间变大
    如何扒一个网站
    java例程练习(引用类型数据的排序和查找)[外篇]
    java例程练习(Iterator)
    java例程练习(增强的for循环)
    java例程练习(Map接口及自动打包、解包)
  • 原文地址:https://www.cnblogs.com/xyblogs/p/8878229.html
Copyright © 2011-2022 走看看