首页 > 编程语言 >Java创建接口详细过程

Java创建接口详细过程

时间:2024-09-22 19:21:37浏览次数:3  
标签:Java Service 创建 接口 public 方法 id

在Java中,创建mapper、dao(数据访问对象)、service、serviceImpl(service实现类)、controller等组件是构建企业级应用常见的分层架构模式。这种分层架构有助于实现高内聚低耦合的设计,提高代码的可维护性和可扩展性。

mapperr XML文件创建

Mapper XML文件用于定义Java对象和数据库表之间的映射关系,以及SQL语句。

创建XML文件:在项目中创建一个新的XML文件,比如UserMapper.xml

编写映射关系:在XML文件中定义resultMap,用于映射Java对象的属性和数据库表的列。

编写SQL语句:在XML文件中为Mapper接口中的每个方法编写对应的SQL语句。

<?xml version="1.0" encoding="UTF-8" ?>
        <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 
<mapper namespace="com.oacloud.dao.UsersDao">
<sql id="usersClo">
    id,user_name userName,password,email,role,department_id departmentId
</sql>
<select id="selectUsersAll" resultType="Users">
    select <include refid="usersClo"></include> from users
</select>
</mapper>

  DAO接口创建

DAO接口侧重于业务逻辑层与数据访问层之间的接口定义。

定义接口:在项目中创建一个新的接口文件,比如UserDao.java

编写方法:在接口中定义与数据访问相关的方法,如User findById(int id);等。

public interface UserDao {  
    User findById(int id);  
    // 其他方法  
}

 Service接口与ServiceImpl类创建

Service接口定义了业务逻辑层的方法,而ServiceImpl类则实现了这些方法。

定义Service接口:在项目中创建一个新的接口文件,比如UserService.java

编写Service接口方法:在接口中定义业务逻辑层的方法,如User getUserById(int id);等。

实现Service接口:创建一个新的类文件,比如UserServiceImpl.java,实现Service接口中定义的方法。

// Service接口  
public interface UserService {  
    User getUserById(int id);  
    // 其他方法  
}  
  
// Service实现类  
public class UserServiceImpl implements UserService {  
    @Autowired  
    private UserMapper userMapper; // 假设使用MyBatis  
  
    @Override  
    public User getUserById(int id) {  
        return userMapper.getUserById(id);  
    }  
    // 其他方法的实现  
}

 Controller层创建

Controller层负责接收用户请求、调用Service层方法处理业务逻辑,并返回响应给客户端。

创建Controller类:在项目中创建一个新的类文件,比如UserController.java,并使用@RestController@Controller注解标记。

编写请求处理方法:在Controller类中编写请求处理方法,使用@RequestMapping@GetMapping@PostMapping等注解定义请求的URL和HTTP方法。

@RestController  
@RequestMapping("/users")  
public class UserController {  
  
    @Autowired  
    private UserService userService;  
  
    @GetMapping("/{id}")  
    public User getUserById(@PathVariable int id) {  
        return userService.getUserById(id);  
    }  
    // 其他请求处理方法的实现  
}

 通过以上步骤,可以在Java项目中创建mapper、dao、service、serviceImpl、controller等组件,并实现一个基本的分层架构。需要注意的是,在不同的项目和框架中,这些组件的具体实现和命名可能会有所不同。

标签:Java,Service,创建,接口,public,方法,id
From: https://blog.csdn.net/weixin_52394366/article/details/142441810

相关文章

  • 从代码到部署:GitHub Actions实现Java项目CI/CD的完整实践
    从代码到部署:GitHubActions实现Java项目CI/CD的完整实践在现代软件开发中,持续集成和持续部署(CI/CD)已经成为了团队高效交付代码的关键策略。通过GitHubActions,可以轻松配置CI/CD流水线,实现从代码提交到部署的自动化工作流。本文将基于英语听力网站(studytool.site)项目介......
  • Java反射机制
    1、什么是Java反射机制?Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。2、......
  • 使用java做一个微信机器人
    微信机器人这个功能,目前在市面上运用的还是不是很多,每个人实现机器人的目的也不一样,有的为了自动加好友;有的为了自动拉群:也有的为了机器人对话聊天等等一系列。想必大家对微信机器人感兴趣的伙伴,也在aithub上面搜索了很多吧,但是大多数走到一半遇到各种bug就没有继续坚持走下去,原......
  • java基础
    java基础语法对象/类/方法/实例/继承对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色,名字,品种;行为有:摇尾巴,叫,吃等。类:类是一个模版,它描述一类对象的行为和状态方法:方法就是行为,一个类可以有很多方法。逻辑运算,数据修改以及所有动作都是在方法......
  • java计算机毕业设计抗疫资源调配平台(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在全球抗击新冠疫情的持久战中,资源的有效调配成为决定战役成败的关键因素之一。面对突如其来的疫情高峰,各地医院对医疗物资、人力资源的需求急剧增加......
  • java计算机毕业设计篮球论坛系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景:在数字化时代,篮球运动作为一项广受欢迎的全民健身活动,其爱好者群体日益庞大且需求多元化。随着互联网的普及,篮球爱好者们渴望一个集信息交流、技术分......
  • java计算机毕业设计吕梁学院微门户(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在信息化高速发展的今天,高等教育领域正经历着深刻的变革。吕梁学院作为一所充满活力与潜力的高等学府,其信息化建设对于提升教学质量、优化管理效率、......
  • 论 JAVA 集合框架中 接口与类的关系
    前言这是笔者在学习过程中的一篇"备忘录",其目的是能用最EZ最粗鄙的语言口述出JAVA集合框架中所有类与接口的关系本人在不断地学习中,总会混淆集合框架中的类和接口,以及它们的作用关系,虽然不影响我的使用,但是我也不想一直糊涂下去,故而趁知识还没混淆之际,赶紧写下来.......
  • JavaScript二进制浮点数和四舍五入错误
    二进制浮点数和四舍五入错误实数有无数个,但JS通过浮点数的形式,只能表示有限个数,JS表现的常常是真实值的近似表示。二进制无法表示类似于0.1这样的十进制数字,只能机器近似于0.1,看如下代码:<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>3......
  • JavaScript中的Math对象详解
    JS中的算术运算基本运算:加减乘除求余数,+-*/%.复杂运算:通过Math对象的属性定义的函数和常量来实现。代码实现:<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>3.1.3JS中的算术运算</title></head><body>......