当前位置: 首页 > 知识库问答 >
问题:

使用Spring Boot外部化mongo json查询

姚文轩
2023-03-14

我刚刚开始使用Spring-Boot的spring data MongoDb。

我主要想要实现的是将上面的本机mongo json查询外部化到配置文件中,并在上面的注释中引用它。

在Hibernate中使用jpa时,Spring数据支持类似的内容。但不确定我们是否可以使用spring data mongodb和spring Boot来做同样的事情。

共有1个答案

花飞尘
2023-03-14

像这样做(我只是为API解释)

假设您有一个实体用户

在顶部将有用户

public class User extends CoreDomain {
private static final long serialVersionUID = -4292195532570879677L;
@Length(min = 2)
private String name;
@Length(min = 2)
@UniqueUserName(message = "User name already registered,Please choose something Different")
private String userName;
@Length(min = 6)
private String password;
}
public class UserController extends CoreController {

@Autowired
private UserService userService;

/*
 * This controller is for getting the UserDetails on passing the UserId in
 * the @param Annotation
 */
@GET
@Path("{id}")
public User getUser(@PathParam("id") String UserId) {
    User user = new User();
    user = userService.findUserId(UserId);

    if (user == null)
        throw new NotFoundException();
    log.info("The userId you searched is having the details as :" + user);
    return user;
}}
public interface UserService {
// Boolean authenticateUser(User user);

User findUserId(String UserId);

}
public class UserServiceImpl implements UserService {
@Setter
@Autowired
private UserRepository userRepository;

/*
 * This method will find user on the basis of their userIds passed in the
 * parameter.
 */
@Override
public User findUserId(String UserId) {
    User userIdResult = userRepository.findOne(UserId);
    log.info("The userDetail is" + userIdResult);
    return userIdResult;
}

在针对user的mongoRepository中,我们将有:一个默认查询findbyid(String userId);

希望这能帮助你。

 类似资料:
  • 在springboot应用程序中,我有一个jar,然后是一个子目录config with application。属性,applicationContext。xml和log4j。。。属性文件。 我正在尝试外部化log4j配置。application.properties是这样外部化的。 但是,当springboot运行时,它使用jar文件中的log4j配置文件。通过使用-Dlog4j.debug选

  • 我有一个带有spring boot的java项目,我需要加载应用程序。外部文件夹中的属性和依赖项jar。 我使用该应用程序进行了测试。类路径和加载程序中的属性。路径属性工作正常。 当我使用外部属性文件(我确信它们已被使用)时,加载程序。路径工作不正常,结果为ClassNotFound,因为JAR未加载。 此外,当我启动应用程序与**-Dloader.path=**xxx它的工作正常。 如何使用外部

  • 我刚刚开始使用Spring Boot,我想使用RestTemplate调用一个查询并返回它的结果。 如何使用RESTTemplate调用查询?还是有更好的办法做这件事?

  • 问题内容: 我有以下查询,该查询通常可以正常工作,并且应该返回涵盖定义时间范围的所有行(如果没有绝对匹配,则采用最接近的前一行和后一行-在http://www.orafaq.com/node/1834中概述) 但是希望通过引用外部选择来减少两个表的子选择,但是显然它不喜欢它 有没有一种方法可以使查询不选择三个表? 问题答案: 您可以通过联接执行以下操作: 我不是MySQL专家,因此如果需要一些语法

  • 我有一个启动应用程序,部署到一个外部tomcat服务器,一切工作在我的本地与本地数据库。现在,我必须将代码推广到数据库配置不同的更高环境。我读了很多关于配置文件的etc...,但是当它是一个外部tomcat并且不使用

  • 我在GET api中有多个查询参数(如姓名、年龄、性别、位置等…n个数字)。现在我需要使用这些查询值来查询我的mongo数据库。现在用户可以发送从0到n的查询参数。 我正在尝试使用类似的东西 或者 但问题是,考虑到用户可以发送的所有排列和组合,我将不得不编写多个查询。有没有更好的方法来做到这一点?