Mybatis-CRUD(注解)

2020-06-22  本文已影响0人  通灵路耳
@Update
@Select
@Delete
@Insert

代码

1、创建web应用,导入jar包
链接:https://pan.baidu.com/s/1uxLt_FUr2i2v7T7oGMUPLA 
提取码:nrji

创建数据库
create database how2java;
创建表
CREATE TABLE category_ (
  id int(11) NOT NULL AUTO_INCREMENT,
  name varchar(32) DEFAULT NULL,
  PRIMARY KEY (id)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
插入数据
INSERT INTO category_ VALUES (null,'category1');
INSERT INTO category_ VALUES (null,'category2');

2、src下创建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>
<!-- 扫描model -->
    <typeAliases>
      <package name="com.llhc.model"/>
    </typeAliases>
 <!-- 连接jdbc -->
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis1?characterEncoding=UTF-8"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
 <!-- 映射文件 -->
    <mappers>
        <mapper class="com.llhc.model.CategoryMapper"/>  
    </mappers>
</configuration>

3、Category

package com.llhc.model;

public class Category {
    private int id;
    private String name;
    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;
    }
    
}


4、CategoryMapper接口

package com.llhc.model;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

public interface CategoryMapper {
       @Insert(" insert into category_ ( name ) values (#{name}) ") 
        public int add(Category category); 
            
        @Delete(" delete from category_ where id= #{id} ") 
        public void delete(int id); 
            
        @Select("select * from category_ where id= #{id} ") 
        public Category get(int id); 
          
        @Update("update category_ set name=#{name} where id=#{id} ") 
        public int update(Category category);  
}


5、controller

package com.llhc.controller;
import java.io.IOException;
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 com.llhc.model.Category;
import com.llhc.model.CategoryMapper;
 
public class TestMybatis {
 
    public static void main(String[] args) throws IOException {
        System.out.println("fasdfda");
        //1、连接配置文件
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession session = sqlSessionFactory.openSession();
        CategoryMapper mapper = session.getMapper(CategoryMapper.class);
        
       /* 2、添加
        CategoryAdd(mapper);*/
        
        /*3、删除
        CategoryDelete(mapper);*/
        
        /*4、查询
        Category c=mapper.get(4);
        System.out.println(c.getName());*/
        
        /*5、修改
        CategoryUpdate(mapper);*/
    }
    //添加
    public static Category CategoryAdd(CategoryMapper cm){
        //执行添加操作
        Category c = new Category();
        c.setName("Categoryhehe");
        cm.add(c);
        return c;
    }
    //删除
    public static void CategoryDelete(CategoryMapper cm){
        //执行删除操作
        cm.delete(2);
    }
    //修改
    public static Category CategoryUpdate(CategoryMapper cm){
        Category c=cm.get(4);
        c.setName("Category名称");
        cm.update(c);
        return c;
    }
}

6、测试!
图片.png
上一篇 下一篇

猜你喜欢

热点阅读