5分钟学会Java写一个接口
今天学习了如何用Java写一个简单的接口,方法简单好用(本人是前端,后端小白)
用的软件是idea,框架是spring boot,在spring boot中创建我们需要的项目就可以开始了。
注:开始运行前一定要把config中yml文件内的数据库连接名称和密码改成自己数据库的
链接已附上spring boot的基本教程
有过Java基础的应该都知道Java写接口的三层架构,不知道没关系可以看一下链接内容
把这三个层分别放在这两个项目里,framework我放了service层合mapper层,实体类entity,jianzhiwang放了Controllter层
framework项目中新建的文件
jianzhiwang项目中新建的文件
controller文件中
可以先写Mapper层来与数据库连接,再把数据逐层传递到前端
Mapper层内容
接口(interface)是和常量值的定义的集合。
从本质上讲,接口是一种特殊的,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。
如果要想实现接口,就要有一个实现类去实现,而且要实现它其中的抽象方法,并且要用implements关键字。形式为实现类名 implements 接口名。
@Mapper @Component /** * 注解 这是Mapper层 * @param pageVO * @return */ //@Select这段代码是sql语句,可以用来操控数据库数据 //定义一个公有方法,让entity实体类的PromoterVo 把数据传到service层中 //@Param("id") 是String id 重命名,以便识别 public interface PromoterMapper { @Select("select a.id,a.user_id,a.user_num,a.user_grad,b.user_name from promoter a,users b where a.user_id = b.id and a.user_id=#{id}") public PromoterVo getPromoterById(@Param("id") String id); }
entity内容
用来在各层中传输数据
//@Data是用来把方法类引出去的 class类里面要与数据库字段一致 @Data public class PromoterVo { private String userNum; private String userGrad; private String userId; private String userName; private String userImg; private String id; }
Service层内容
Service接口
/** * 可以写注解 * @param pageVO * @return */ //Service接口文件用来声明方法 //定义了一个getPromoterById方法 public interface PromoterService { public PromoterVo getPromoterById(String id); }
ServiceImpl类
与Service接口文件一一对用,用来写Service接口文件的方法体
/** * * @param pageVO * @return */ @Service public class PromoterServiceImpl implements PromoterService { //引入Mapper方法并定义一个对象 @Autowired PromoterMapper promoterMapper; //引用entity的getPromoterById方法来返回Mapper层的值 @Override public PromoterVo getPromoterById(String id) { return promoterMapper.getPromoterById(id); } }
Controller层内容
@CrossOrigin @RestController @RequestMapping("/manager/promoter") //方法地址 public class PromoterController { @Autowired PromoterService promoterService; @RequestMapping("/getPromterByid") //请求地址 //ResultMessage为固有格式,PromoterVo是entity实体类的一个类,getPromterByid是自定义名称 //@RequestParam:将请求参数绑定到你控制器的方法参数上(是springmvc中接收普通参数的注解) //return返回数据ResultUtil.data,调用service层中的getPromoterById方法来获取Service中的值 public ResultMessage<PromoterVo> getPromterByid(@RequestParam String id){ return ResultUtil.data(promoterService.getPromoterById(id)); } }
经过数据的层层获取与传递,拼接一下方法地址和请求地址组成一个http地址就可以获取数据库中被处理的数据值了
上一篇:
通过多线程提高代码的执行效率例子
下一篇:
第三章:OAuth协议流程