搭建项目学习框架(四,数据库部分实现)

Posted 韶光不负

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建项目学习框架(四,数据库部分实现)相关的知识,希望对你有一定的参考价值。

目录

需求:查询数据库表中的全部内容,以json方式进行输出(实现dao文件与pojo文件内容)

实现

1,先熟悉数据库当中的表格结构、了解表的字段与作用。

2,根据数据库表借助MyBatis逆向工程生存表对应的实体类(每完成一个模块都要进行代码的install(跟新操作))

MyBatis逆向工程:

2.1 :借助MyBatis逆向工程生存表对应的实体类

2.2:借助MyBatis逆向工程生成数据访问层的接口以及映射器

2.3:编写接口(商品服务接口,也可以使用代码生成器生成)

@Service注解作用:

@Autowired注解作用:

@Reference

 @RestController注解作用:

@RequestMapping注解作用:

3.现象展示

3.1,确定监控中心Dubbo是否启动(查看系统状态) 

3.2 启动服务(先启动服务者,再启动消费者)

3.3现象展示

com.xxx.文件名称的错误提示(储存代码生成器的代码文件夹):

实体类或者接口与映射器发生错误(代码生成器粘贴的时候过来爆红)


需求:查询数据库表中的全部内容,以json方式进行输出(实现dao文件与pojo文件内容)

实现

1,先熟悉数据库当中的表格结构、了解表的字段与作用。

2,根据数据库表借助MyBatis逆向工程生存表对应的实体类(每完成一个模块都要进行代码的install(跟新操作)

MyBatis逆向工程:

以前根据Java的对象来设计数据库当中对应的表,逆向工程就是根据表生存对应的对象实体类。

2.1 :借助MyBatis逆向工程生存表对应的实体类

一般情况下,一个表对应一个类,开发工程师根据表字段生成对应的类,但是速度太慢,就借助工程快速开发。

2.2:借助MyBatis逆向工程生成数据访问层的接口以及映射器

有版权,所有不能发,小编也没有,老师发,自己复制粘贴!!!(使用代码生成器:解决了对数据库CRUD的基本操作)

2.3:编写接口(商品服务接口,也可以使用代码生成器生成)

2.3.1在服务端接口上先创建接口,写接口

 

package com.xxx.sellergoods.service; 
//包名

import com.xxx.pojo.TbBrand;
//导入生成器下的实体类

import java.util.List;

public interface TbBrandService 
    /*查询所有的品牌数据*/
    public List<TbBrand> findAll();

 2.3.2 在服务端实现接口

package com.xxx.sellergoods.service.impl;

import com.alibaba.dubbo.config.annotation.Service;
import com.xxx.mapper.TbBrandMapper;
import com.xxx.pojo.TbBrand;
import com.xxx.sellergoods.service.TbBrandService;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;


@Service 
//@Service  注解说明这个是一个服务

    public class TbBrandServiceImpl implements TbBrandService

    @Autowired
    //@Autowired 是自动注入的注解
    private TbBrandMapper brandMapper;

    public List<TbBrand> findAll() 

        return brandMapper.selectByExample(null);//查询所有的品牌数据
    

  2.3.3 在消费端实现接口的调用

package com.xxx.sellergoods.controller;

import com.alibaba.dubbo.config.annotation.Reference;
import com.xxx.pojo.TbBrand;
import com.xxx.sellergoods.service.TbBrandService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/brand")
public class BrandController 

    @Reference
    private TbBrandService brandService;

    @RequestMapping("/findAll")
    public List<TbBrand> findAll()
        return brandService.findAll();
    

@Service注解作用:

Service处于绑定状态,Service内部同样也可以执行后台计算,但是处于这种状态的Service可以很方便地和外界进行通信。 Service组件的主要作用是在后台执行计算任务,执行任务的结果可以和外界进行通信。

@Autowired注解作用:

@Autowired 是一个注释,它可以对类成员变量、方法及构造函数进行标注,让 spring 完成 bean 自动装配的工作

​​​​​​​@Reference

@Reference 用于dubbo消费者服务指明引用哪个提供者接口服务

 @RestController注解作用:

@RestController是@Controller和@ResponseBody的结合体,两个标注合并起来的作用。 @Controller类中的方法可以直接通过返回String跳转到jsp、ftl、html等模版页面。

@RequestMapping注解作用:

是一个用来处理请求地址映射的注解,可用于类或方法上。

3.现象展示

3.1,确定监控中心Dubbo是否启动(查看系统状态) 

3.2 启动服务(先启动服务者,再启动消费者

第一种IDEA启动方式:(插件启动

第二种IDEA启动方式:

 

 

 

 

 

3.3现象展示

 

 

 

 

com.xxx.文件名称的错误提示(储存代码生成器的代码文件夹):

当我们需要在IDEA中创建com.xxx.文件名时,我们应该一层一层的创建,要不然容易报错,查找不到文件位置(下面二者创建都是文件夹,但不是同一文件夹)

正确示范:

错误示范:

实体类或者接口与映射器发生错误(代码生成器粘贴的时候过来爆红

1,com.xxx.文件名称不正确

2,没有install跟新模块。

2,配置的xml文件有问题,接口配置差为,地址配置错误。

以上是关于搭建项目学习框架(四,数据库部分实现)的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC搭建MVC框架

搭建项目学习框架(三,创建一个完整电商项目)

搭建项目学习框架(三,创建一个完整电商项目)

Spring+SpringMvc+Mybatis框架集成搭建教程四(项目部署及测试)

gin框架学习-Gin框架和Gorm框架搭建一个简单的API微服务

手把手带你从0搭建一个Golang ORM框架(全)!