zoukankan      html  css  js  c++  java
  • Mybatis

    User.java类

    定义数据属性:

    形参:

    public class User {
    private int id;
    private String username;
    private Date birthday;
    private String sex;
    private String address;
    public User()
    {
    super();
    }

    实参:

        public User(String username, Date birthday, String sex, String address){
    this.username = username;
    this.birthday = birthday;
    this.sex = sex;
    this.address = address;
    }

    App.java

    编写测试类:

      public class App {
    public static void main(String[] args){
    //解析全局配置文件
    String resource = "mybatis-config.xml";//全局配置文件的路径(相对于src的路径)
    try {
    InputStream inputStream =Resources.getResourceAsStream(resource);
    //输入流实例通过getResourceAsStream()获取配置文件
    SqlSessionFactory sqlSessionFactory = new       SqlSessionFactoryBuilder().build(inputStream);
    //SqlSessionFactory实例可以通过 SqlSessionFactoryBuilder 获得
    //调用Dao层接口方法完成SQL执行
    SqlSession sqlSession = sqlSessionFactory.openSession();
    //从 SqlSessionFactory 中获取 SqlSession
    //shift+alt+1
    UserDao userdao = sqlSession.getMapper(UserDao.class);
    //SqlSession 实例来直接执行已映射的 SQL 语句
    //获取相应接口实现类的类对象
    List<User> ulist = userdao.getAll();
    System.out.println(ulist);
    }catch(Exception e) {
    e.printStackTrace();//try catch进行异常错误处理
    }
    }
    }

    操作

    根据主键查询

    1.UserDao.xml映射文件

    2.UserDao.java接口方法

      User getUserById(int uid);

    3.App2.java

    public class App2 {
    UserDao userDao;//创建全局变量
    SqlSession sqlSession;//创建全局变量
    public void setup() throws IOException {
    String resource = "mybatis-config.xml";  
    InputStream inputStream =Resources.getResourceAsStream(resource);
    SqlSessionFactory sqlSessionFactory = new   SqlSessionFactoryBuilder().build(inputStream);
    sqlSession = sqlSessionFactory.openSession();
    userDao = sqlSession.getMapper(UserDao.class);
    }

    根据主键保存

    1.UserDao.xml映射文件

    2.UserDao.java接口方法

     int saveUser(User user);

    3.App2.java

      public void saveUser() {
    User user = new User("搜索",new Date(),"男","北京");
    int i = userDao.saveUser(user);
    sqlSession.commit(); //提交    
    System.out.println(user);//输出打印user表中数据  
    }

    根据主键更新

    1.UserDao.xml映射文件

    2.UserDao.java接口方法

      int updateUser(User user);

    3.App2.java

      public void update() {
    User user = new User();
    user.setId(1);
    user.setSex("男");
    user.setUsername("天天");
    userDao.updateUser(user);
    sqlSession.commit();
    }

    根据主键删除

    1.UserDao.xml映射文件

    2.UserDao.java接口方法

    int getDeleteById(User user);

    3.App2.java

    public void getDeleteById() {
    User user = userDao.getUserById(1);
    int i = userDao.getDeleteById(user);
    sqlSession.commit();
    System.out.println(user);
    }
  • 相关阅读:
    开发了套三维光学扫描仪,可以技术转让
    见微知著 带你透过内存看 Slice 和 Array的异同
    Goland 这些技巧,学会开发效率翻倍!
    不懂汇编,也能看懂的 Go interface 原理分析
    win10创建删除文件文件夹需刷新才更新问题
    转载:java中DAO层、Service层、Control层的说明
    代码习惯
    查看网站的服务器和使用的技术
    flutter: CSS规则映射flutter控件-position
    android对话框透传Touch事件
  • 原文地址:https://www.cnblogs.com/Hiramunderneath/p/14890989.html
Copyright © 2011-2022 走看看