Java是如何连接数据库的?

原生方法是通过Jdbc(Java Database Connectivity),由数据库厂商实现数据库驱动接口,开发者使用该接口操作数据库。但JDBC比较简陋,每次都要加载驱动,并且最后会释放连接资源,不适合更高效率的操作。

通过ORM框架可以更优雅地解决连接问题,对象关系映射(Object Relational Mapping, ORM) 将数据库中的表和Java中的对象做映射,把SQL查询的结果集映射为Java中对应的对象。

国内用的最多的是Mybatis,一个持久层框架,免除了几乎所有的 Jdbc 代码以及设置参数和获取结果集的工作,通过简单的 XML 或注解来配置和映射 Java对象到数据库中的记录

核心流程简要如下:从xml配置文件处构建SqlSessionFactory实例,并创建SqlSession,SqlSession提供了执行SQL的所有方法。Mybatis还有很多高级功能,此处不做讨论。

那么具体在一个Springboot项目里是如何访问到的呢?

首先建立相应的Mybatis配置文件,编写mapper.xml,其中namespace属相和Java里的mapper相联系,namespace是用于绑定Dao(Java里的mapper层)接口。绑定后,Mybatis会通过该绑定帮你找到对应要执行的SQL语句,

然后编写Dao层(以下用mapper代替),mapper层与数据库打交道(执行SQL语句),接口提供给service层。

service层,先编写service接口,然后实现对应的service类,service类中包含mapper对象,然后编写controller层,controller 里有service对象,通过service的接口来控制业务流程,也可通过接收前端传过来的参数进行业务操作。

controller在接受到前端的请求时,调用service中相应的服务,service再调用mapper中相应的服务,mapper和相应的xml相关联,通过mybatis执行相关的SQL语句,得到查询结果并一层层返回,最终展现之(通过Json返回至前端,由前端处理)。

符合mvc架构模式,用户通过浏览器发送指令至控制器,控制器负责对模型的访问,最后通过视图将访问的内容转换至浏览器进行显示

原生方法是通过Jdbc(Java Database Connectivity),由数据库厂商实现数据库驱动接口,开发者使用该接口操作数据库。但JDBC比较简陋,每次都要加载驱动,并且最后会释放连接资源,不适合更高效率的操作。 通过ORM框架可以更优雅地解决连接问题,对象关系映射(Object Relational Mapping, ORM) 将数据库中的表和Java中的对象做映射,把SQL查询的结果集映射为Java中对应的对象。 国内用的最多的是Mybatis,一个持久层框架,免除了几乎所有的 Jdbc 代码以及设置参数和获取结果集的工作,通过简单的 XML 或注解来配置和映射 Java对象到数据库中的记录 核心流程简要如下:从xml配置文件处构建SqlSessionFactory实例,并创建SqlSession,SqlSession提供了执行SQL的所有方法。Mybatis还有很多高级功能,此处不做讨论。 那么具体在一个Springboot项目里是如何访问到的呢? 首先建立相应的Mybatis配置文件,编写mapper.xml,其中namespace属相和Java里的mapper相联系,namespace是用于绑定Dao(Java里的mapper层)接口。绑定后,Mybatis会通过该绑定帮你找到对应要执行的SQL语句, 然后编写Dao层(以下用mapper代替),mapper层与数据库打交道(执行SQL语句),接口提供给service层。 service层,先编写service接口,然后实现对应的service类,service类中包含mapper对象,然后编写controller层,controller 里有service对象,通过service的接口来控制业务流程,也可通过接收前端传过来的参数进行业务操作。 controller在接受到前端的请求时,调用service中相应的服务,service再调用mapper中相应的服务,mapper和相应的xml相关联,通过mybatis执行相关的SQL语句,得到查询结果并一层层返回,最终展现之(通过Json返回至前端,由前端处理)。 符合mvc架构模式,用户通过浏览器发送指令至控制器,控制器负责对模型的访问,最后通过视图将访问的内容转换至浏览器进行显示
经验分享 程序员 微信小程序 职场和发展