注解,lombok


使用注解开发

  • UserMapper
public interface UserMapper {
    @Select("select * from db4.user")
    List getUsers();
}
  • mybatis-config.xml

    

  • test
public class test {
    @Test
    public void test1(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        List users = mapper.getUsers();
        for (User user : users) {
            System.out.println(user); 
        }
        sqlSession.close();
    }
}

MybatisUtils.java自动提交事务

public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory;

    static {
        try {
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static SqlSession getSqlSession() {
        //自动提交事务
        return sqlSessionFactory.openSession(true);
    }
}

Lombok

说明

@Getter and @Setter
@FieldNameConstants
@ToString
@EqualsAndHashCode
@AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data
@Builder
@SuperBuilder
@Singular
@Delegate
@Value
@Accessors
@Wither
@With
@SneakyThrows
@val
@var

常用

@Data:无参构造,get,set,toString,hashcode,equals
@AllArgsConstructor
@NoArgsConstructor

步骤

  • 安装插件
  • 导入依赖

    org.projectlombok
    lombok
    1.18.12
    provided

  • 实体类上加注解
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    private int id;
    private String username;
    private String pwd;
}