springboot实现简单的数据查询接口(无实体类)

目录

前言:springboot整体架构

1、ZjGxbMapper.xml

2、ZjGxbMapper.java

3、ZjGxbService.java

4、ZjGxbController.java

5、调用接口测试数据是否正确

6、打包放到服务器即可


前言:springboot整体架构

文件架构,主要编写框选的这几类

1、ZjGxbMapper.xml

编写业务相关的增删改查语句

<?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.appport.mapper.ZjGxbMapper">
<!--   查询工程信息 根据需求编写sql语句-->
    <select id="selectGcxx" resultType="java.util.HashMap" >
        select a,b,c from table3  
    </select>
</mapper>

2、ZjGxbMapper.java

定义接口

package com.appport.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
@Mapper
public interface ZjGxbMapper {
    /**
     * 查询所有的工程项目
     */
    public List<Map<String,?>> selectGcxx();
}

3、ZjGxbService.java

调用接口

package com.appport.service;

import com.appport.mapper.ZjGxbMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * @Author xiao_jiajia
 * @Description TODO $
 * @Date $ $
 * @Param $
 * @return $
 **/

@Service
public class ZjGxbService {
    @Autowired
    private ZjGxbMapper zjGxbMapper;
    
    //工程信息
    public List<Map<String,?>> selectGcxx(){
        List<Map<String,?>> gclist = zjGxbMapper.selectGcxx();
        return gclist;
    };
}

4、ZjGxbController.java

package com.appport.controller.system;

import com.alibaba.fastjson.JSONObject;
import com.appport.service.ZjGxbService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;
import java.util.Map;

/**
 * @Author xiao_jiajia
 * @Description TODO $
 * @Date $ $
 * @Param xiao_jiajia$
 * @return $
 **/
@Controller
public class ZjGxbController {
    @Autowired
    private ZjGxbService zjGxbService;

    
    /**
     * 查询工程信息
     */
    @RequestMapping(value="project",method = RequestMethod.POST)
    @ResponseBody
    public JSONObject project(){
        JSONObject object = new JSONObject();
        List<Map<String,?>> projectList = zjGxbService.selectGcxx();
        object.put("projectList",projectList);
        object.put("code",200);
        return object;
    }

}

5、调用接口测试数据是否正确

6、打包放到服务器即可

Spring Boot实现一个简单的查询接口通常包含以下几个步骤: 1. **创建项目及依赖**: 首先,你需要有一个基于Spring Boot的Maven或Gradle项目。在pom.xml或build.gradle文件中添加Spring Web和其他数据访问相关的依赖,如`spring-boot-starter-web`和数据库驱动。 ```xml <!-- pom.xml --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> <!-- H2仅用于测试环境 --> </dependency> ``` 2. **配置数据源**: 在application.properties或application.yml中设置JPA的数据源配置,包括URL、用户名和密码等信息。 ```properties spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1 spring.datasource.username=sa spring.datasource.password= spring.jpa.hibernate.ddl-auto=update ``` 3. **创建实**: 创建一个或多个代表数据库表的Java(Entity),比如User.java。 ```java @Entity public class User { @Id private Long id; private String name; // getters and setters... } ``` 4. **定义Repository接口**: 使用Spring Data JPA的CrudRepository接口或自定义Repository接口来定义查询操作。 ```java import org.springframework.data.jpa.repository.JpaRepository; public interface UserRepository extends JpaRepository<User, Long> { List<User> findByLastName(String lastName); } ``` 5. **服务层(Service)**: 创建一个Service,注入对应的Repository,并实现查询逻辑。 ```java @Service public class UserService { private final UserRepository userRepository; public UserService(UserRepository userRepository) { this.userRepository = userRepository; } public List<User> searchUsersByLastName(String lastName) { return userRepository.findByLastName(lastName); } } ``` 6. **控制器(Controller)**: 在Controller中处理HTTP请求,调用Service中的查询方法。 ```java @RestController @RequestMapping("/api/users") public class UserController { private final UserService userService; public UserController(UserService userService) { this.userService = userService; } @GetMapping("/{lastName}") public ResponseEntity<List<User>> getUsersByLastName(@PathVariable String lastName) { try { List<User> users = userService.searchUsersByLastName(lastName); return new ResponseEntity<>(users, HttpStatus.OK); } catch (Exception e) { return new ResponseEntity<>(e.getMessage(), HttpStatus.BAD_REQUEST); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神仙姐姐QAQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值