如何简化数据库操作

这篇文章主要介绍“如何简化数据库操作”,在日常操作中,相信很多人在如何简化数据库操作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何简化数据库操作”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联公司专业为企业提供庐江网站建设、庐江做网站、庐江网站设计、庐江网站制作等企业网站建设、网页设计与制作、庐江企业网站模板建站服务,十余年庐江做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

我们在写代码的时候,什么东西让我们最痛苦?  我想大部分人都会说是重复的工作,但是重复的工作又是指什么呢?  我想了想可能包含以下几点:

  1. 实体类

  2. 建sqlMapper.xml,或者其他框架的注解映射

  3. 建DAO去关联sqlMapper.xml,或者用代码去替代sql

  4. Controller

所以我在想,如果可以不需要实体类,不需要sqlMapper.xml,不需要Controller就好了,这样一来,如果需要开发一个后端功能,只需要写Service就好了,而这一段几乎是编程中最有乐趣的地方(仅限应用层编程,底层研发的当我没说)

而Mars-java就是在这样的一个思路下诞生的

  1. 只需要在Service的父接口上加上两个注解,即可对外提供一个http接口,又或者可以重新创建一个interface+注解 去代替Controller

  2. 操作数据库只需要一行注解,没有sqlMapper.xml

  3. 如果你能够接受无实体类编程的话,可以不创建实体类,而采用Map

简单示例

如果我们需要写一个登录接口只需要这么几步

创建一个DAO
@MarsDao
public abstract class UserInfoDAO {

    // 可以返回Map也可以返回实体类
    @MarsSelect(sql = "select * from `userinfo` where uname=#{uname} and passwd=#{passwd}")
    public abstract List selectUserInfo(Map userInfo);
}
创建Service

按照惯例来说,我们需要先写一个interface,再写一个实现类

Interface

public interface UserInfoService {

  UserInfo login(Map userInfo);
}

实现类

@MarsBean
public interface UserInfoServiceImpl implements  UserInfoService {

  public UserInfo login(Map userInfo){
    // 在这里面调用DAO
  }
}

开放一个http接口

只需要在UserInfoService上加两个注解即可

@MarsApi
public interface UserInfoService {

  @MarsReference(beanName = "userInfoServiceImpl",refName = "login")
  UserInfo login(Map userInfo);
}

整个流程省掉了很多重复性的代码,让我们专注在Service这一层

到此,关于“如何简化数据库操作”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


网站名称:如何简化数据库操作
网站网址:http://scyanting.com/article/jjsiie.html