开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
CWIKIUS.CN
一个有独立思考和温度的清新站
Computer Science

Spring Boot API 的 Controller 如何获得发送的 JSON 数据

我们知道可以发送 JSON 数据到 API 上面。 通常我们都会使用 POST 方法,在实际编程的时候我们应该如何获得发送的 JSON 数据呢? Controller 获得 JSON 数据 在客户端通过 API 发送 JSON 数据到 Controller 的时候,我们可以在 Controller 使用 RequestBody 注解来获得 JSON 数据。 考察下面的代码: /** * Search Question Index * * @return */ @PostMapping("/sold") public ResponseEntity<?> searchUser(@RequestBody RealEstateRequest realEstateRequest) { logger.debug("realEstateRequest - {}" , realEstateRequest.getPropertyTown()); REListing reListing= listingService.getREListingById(); return new ResponseEntity<REListing>(reListing, HttpStatus.OK); }     在 API 获得 JSON 数据后,将会尝试将 JSON 数据的内容设置到对象 RealEstateRequest 中。 所以,我们还需要在代码中定义一个对象 RealEstateRequest。 RealEstateRequest 对象的代码如下,在下面的代码中,我们省下了上面需要导入的 package 等 public class RealEstateRequest implements Serializable { private static final long serialVersionUID = 6474765081240948885L; private String propertyTown; public String getPropertyTown() { return propertyTown; } public void setPropertyTown(String propertyTown) { this.propertyTown = propertyTown; } } 在这里需要注意的是,为了能够设置正确的值到对象中,你 propertyTown 的这个变量需要和 JSON 对象中的变量相同。 所以你的 JSON 测试数据应该为: { "propertyTown" : "Manchester" } 通过 API 查看对象,你会看到从客户端传递的 JSON 数据已经被设置为正常的数据了。     POSTMAN 从客户端发送的数据如下:     JSON 数据字段名 在上面的示例中,我们定义的一个 JSON 字段名为:propertyTown。 如果不做任何设置的话,你的对象是需要使用与这个字段名完全相同的名字才能获得需要的数据的,有时候我们可能不希望这样。我们希望使用不同的名字,例如我们希望设置字段名为:property_town,但是我们还是希望 propertyTown 变量能够获得值。 这个时候你就需要使用:JsonProperty 注解了。 可以在定义的对象中使用 @JsonProperty(“property_town”) 注解。 原因是 RequestBody 使用 jackson 来映射对象的,所以 JsonProperty 这个是 jackson 的注解,主要告诉 jackson 来如何对字段中的数据来进行映射。 在完成上面的修改后,你的 JSON 数据应该是如下的:     然后再对 API 进行测试,你会看到 propertyTown 也能够设置上你传递的参数。   https://www.ossez.com/t/spring-boot-api-controller-json/13217

2021年01月27日 0Comments 553Browse 0Like Read more
Computer Science

Spring 发送 JSON 数据到 API 的时候提示 Unsupported Media Type 错误

在我们调试 API 的时候,我们可以向服务器发送 POST 数据。 在 POST 数据的时候,我们可能会使用 JSON 为数据源,但是在发送后,我们得到下面的错误信息: { "timestamp": 1611687768255, "status": 415, "error": "Unsupported Media Type", "message": "", "path": "/re/sold" } 问题和解决办法 出现这个错误的原因是你发送的数据是 JSON 格式没有错,但是 HTTP 不知道你发送的数据是 JSON 格式,这个时候 API 会没有办法识别你的数据的话,会提示上面的错误。 修改办法为在 POSTMAN 的类型中,选择 JSON 格式后重新发送请求。 如果你的 API 配置正常的话,你就可以正确的看到 API 的返回了。 同时也能够看到 API 返回的正确数据。   https://www.ossez.com/t/spring-json-api-unsupported-media-type/13216

2021年01月27日 0Comments 561Browse 0Like Read more
Computer Science

中南大学 「关于开展电子邮件系统账号清理的通知」 怎么看

.edu 的邮箱不是一点含金量都没有。有时候申请个试用版,学生注册啥的还能半价或者免费。 偶尔发个邮件还能装B 一下,表示自己曾经来过。 学生毕业候注销邮件,这个很正常。学校又不是商业公司,没有必要维护庞大的邮件量,中文姓名重名的多,会占用不少用户名,更多人就是个情怀,真正工作后用学校邮件的不多。很多都是单位邮件+几个私人邮箱。 这个就是学校的选择,其实很多学校都会在学生毕业后几个月注销掉邮箱。   https://www.ossez.com/t/topic/13215

2021年01月27日 0Comments 1205Browse 0Like Read more
文化旅游

欠了花呗,怎么跟父母坦白

首先不知道你认识到自己的问题在那里了吗? 网贷,其实就是金融中的一种小额融资方式。这里有 APR 的很多概念。正常来说信用卡的的 APR 在 20% 也有好点的能做到 13% 左右。 住房贷款的 APR ,公积金在 5 % 到 6%,其他商业贷款也不会高于百分之 10%。 你再查下活期存款利率,国债收益率这些都随便能查到的数字,你就知道小额网贷的利率有多么高和离谱。 所谓的日均利率,就是 APR / 365,当然 APR,在国内会有一个上线,是不允许高于一个值的,这个值忘了,高于这个就是高利贷,高利贷不受法律保护。 使用网贷就是因为来钱太方便了,你根本没有想到还不上怎么办。如果你这次和父母坦白了,下次还是去贷的话,你的结果就是死循环,无穷无尽。 如果你能认识到问题,诚实坦白,把自己欠款的和父母说明,并且尽量说明你要这个钱干什么去了。相信所有父母都知道你这个钱是挥霍掉了。中国的父母一般不会见死不救,估计你应该没有欠个几十万吧,几万的话,父母想想办法还是比较容易都能解决。 关键的关键,你认识到这里面的金融学知识和利率的算法,以及你是不是真的想明白了。   https://www.ossez.com/t/topic/13214

2021年01月27日 0Comments 1018Browse 2Like Read more
U.S.

美国房地产交易中贷款的 Escrow Account

Escrow 用土话来说就是保证金。在美国房地产交易中可能有 2 个地方涉及到 Escrow 的定义。 第一类就是房地产合同中的 Escrow 定义 第二类就是房地产贷款中的 Escrow 账号的定义。 有关的第一类保证金定义,请参考:美国房地产合同中的 Escrow Deposit 中的内容。 第一类保证金这部分主要说的是针对房地产合同买卖中需要缴纳的保证金,这一部分的保证金的用途主要是保障合同的执行,同时也表达出买家的一个购买意向。     这部分的保证金将会在 Closing 的时候被使用,作为全部购房的一部分。 第二类贷款保证金 Escrow Account 这里我们主要说一下第二类保证金,这类的保证金主要是金融机构,包括贷款公司,银行持有的。 这部分的保证金账户很多时候和你的月供是绑定在一起的是你月供的一部分。比如说你月供 2000,其中贷款和利息有可能是 1600,那么有 400 会每个月存入到你保证金账户中。 这部分保证金主要的用途是支付房地产税,保险等等一些经常性资产项目的开支。 Escrow Account 必须要开吗 根据贷款类型的不同,Escrow Account 不是强制开户的,通常情况下如果你的首付低于 20%,贷款公司或者银行会要求你强制开 Escrow Account,而且这部分的存入资金会算到你的月供里面。 通常你月供高了,如果的收入不好的话,很有可能会影响到你贷款的批准。 除此情况,好处就是每个月往里面存钱,你不再需要管地税等的按时缴纳。如果你资产比较多,其实开个 Escrow Account 也没有什么太大影响。 Escrow Account 里面的存款根据情况不一样而不一样,一般来说有几千到几万都有。 如果你在购房的时候没有被问到或者说到 Escrow Account 的事情,那么就说明你不需要开,或者开不开随便你。 Escrow Account 应该怎么选 不同的人对 Escrow Account 的要求不一样,有些人怕麻烦就一次性存入的,也维持不是好事。 这笔钱就在银行放着罢了,和普通存款一样,没啥不一样的地方,就是取出来麻烦点,或者说不是那么容易想取就能取的,尤其是强制性的 Escrow Account。 另外一个问题就是资金流动性,我们都知道经济就是 Time Value of Money (TVM),说白了钱得流动了才有价值,才有意义。 在这里无缘无故每个月存钱冻结流动性,还不能随时取出来,其实还是比较麻烦的,毕竟地产税 1 年 2 次,保险也就 1 年一次。 很多人都不愿意使用 Escrow Account ,而且确实使用也比较麻烦。根据多年的经验,除非银行强制要求设置 Escrow Account 之外,主动要求设置 Escrow Account 的人并不多。 撤销 Escrow Account 一般来说根据合同的不同,可以选择在贷款低于 80% 的时候主动要求银行撤销 Escrow Account ,当贷款低于 78 % 的时候,一般银行会主动撤销 Escrow Account。 这个时候,你需要主动联系银行,银行首先会查看是否满足撤销的条件,一般来说满足的话,就会通知你将撤销的文件签字扫描或者邮件方式发过去,有时候可以电话就直接撤销了。 在撤销后,银行会对里面的余款进行结算,在付掉必须的费用和可能需要的其他费用后,会将余款多以支票的方式邮寄回给你。 如何撤销,不同的公司不一样,不同金融机构也不一样,所以还需要具体联系你的贷款公司。 简单来说,没有 Escrow Account 可能比 Escrow Account 要更好一点。   https://www.ossez.com/t/escrow-account/13213

2021年01月26日 0Comments 625Browse 0Like Read more
U.S.

美国房地产合同中的 Escrow Deposit

Escrow 用土话来说就是保证金。在美国房地产交易中可能有 2 个地方涉及到 Escrow 的定义。 第一类就是房地产合同中的 Escrow 定义 第二类就是房地产贷款中的 Escrow 账号的定义。 在第二个定义,我们统称为 Escrow Account,土话来说就是保证金账号,这个账号统称是由金融系统来设置的,包括有贷款公司,银行等。 因为我们在这里讨论的是房地产合同中的 Escrow ,其实就是针对的第一类,这类是你在于房地产经纪公司进行交易和处理的时候需要涉及到的,不涉及第二类。     合同中 Escrow 定义 合同中 Escrow 的定义就是在房地产进行交易的是买家需要存入的保证金。通常就是当合同在双方都签字后,买家需要在一定的时间内将一定金额存入到房地产经纪公司。 这个房地产经纪公司可以是买家的房地产经纪公司,也可以是卖家的房地产经纪公司。 一般来说为了方便都会存入卖家的房地产经纪公司,以保障房地产销售合同的正常执行。 保证金存多少 需要存的保证金在合同设立的时候就已经在合同中说明了。 具体金额没有约束,你可以存 100 美元,你也可以存 100 万美元,这些都是没有关系的。 一般来说会在 1000 美元到 1 万美元之间。一般来说见过比较多的都是 5000, 8000, 1 万这种的保证金,比较难看到超过 1 万的。 其实这个保证金多少意义并不是非常大,因为在合同执行后买家以其他理由拿回去而不接受惩罚。 常见的理由就是贷款不能获批,房屋检查出现了不可以接受的问题,或者买家通过房屋检查后不愿意继续执行等等。 存多一点,最多表示在提交 Offer 的一种诚意罢了,以便于卖家更加倾向选择你的合同。 什么时候存入 在合同双方签字生效后的 3 到 5 天。 一般来说这个存入时间都会在合同中说明的,基本上是 3 到 5 给到房地产经纪公司即可。 谁需要存保证金 在房地产合同中,一旦生效后,买家需要在指定的时间内给出保证金。 保证金给谁 一般来说保证金都会由买家给到卖家的房地产经纪公司。 但是这个也不是绝对的,买家也可以存到买家的房地产经纪公司,这个都需要在合同中说明,由谁来获得这笔保证金。 这笔保证金一定是对公的存入,不会允许对私人的存入或者转账。 资金方式 一般来说,这笔资金个人支票是可以接受的,电汇,现金都是可以的。 为了方便来说,一般这笔保证金都会使用支票的方式来进行支付。好处是双方都会有个凭据,在获得保证金的房地产经纪公司,一般都会对存入的保证金支票进行扫描后存入。 扫描后的电子版都会在双方经纪公司备案,同时参与交易的经纪人都应该会获得这个支票的复印件或者电子扫描件。 保证金撤回 因为在房地产交易的过程中,可能会遇到任何问题。 因为某些问题导致交易无法进行的话,买家是可以获得保证金的撤回的。通常来说由买家的代理经纪人提出申请,然后买方双方在保证金撤回通知或者附件中签字,在持有保证金的公司可以签发一张新的支票,将保证金撤回给买方。 撤回的金额可能是全款,也有可能是在合同中约束的,比如说买方需要补偿卖方的一些成本后扣除的余款。 详细内容都应该在合同中说明。   https://www.ossez.com/t/escrow-deposit/13212

2021年01月26日 0Comments 1025Browse 0Like Read more
Computer Science

Spring Boot 在升级到 2.4 的时候 EnableResourceServer 提示将会丢弃

在升级 Spring Boot 从 2.3.3 到 2.4 的时候提示: @EnableResourceServer 将会被丢弃。 @EnableResourceServer 开启资源服务配置,会配置资源服务相关的安全配置。 一个资源服务(可以和授权服务在同一个应用中,当然也可以分离开成为两个不同的应用程序)提供一些受token令牌保护的资源,Spring OAuth提供者是通过Spring Security authentication filter 即验证过滤器来实现的保护,你可以通过 @EnableResourceServer 注解到一个 @Configuration 配置类上,并且必须使用 ResourceServerConfigurer 这个配置对象来进行配置     Convenient annotation for OAuth2 Resource Servers, enabling a Spring Security filter that authenticates requests via an incoming OAuth2 token. 需要在升级的时候注意这个将要丢弃的版本。 https://www.ossez.com/t/spring-boot-2-4-enableresourceserver/13211

2021年01月26日 0Comments 757Browse 0Like Read more
Computer Science

Spring Boot 测试错误 SQLFeatureNotSupported

提示的错误信息如下: Caused by: java.sql.SQLFeatureNotSupportedException     问题和解决 不知道为什么一直提示上面的错误。 return useCredentials ? dataSource.getConnection( user, pass ) : dataSource.getConnection(); 因为上面的这句话 dataSource.getConnection( user, pass ) 在给出用户名和密码的时候提示不能获得连接池的错误。 这是因为在 hibernate.properties 文件中,设置了参数: hibernate.connection.username=edtestbank 如果要解决上面的问题,需要将用户名和用户名和密码设置到 hibernate.connection.url= 参数中,而不能设置 hibernate.connection.username= 和 hibernate.connection.password= 参数。     说是具体的原因是 JDBC 参数的问题。 如果有知道的同学欢迎进行讨论。 在现在的解决方案就是需要将用户名和密码设置到 URL 参数中。 https://www.ossez.com/t/spring-boot-sqlfeaturenotsupported/13210

2021年01月26日 0Comments 674Browse 0Like Read more
Computer Science

Spring Boot 测试提示错误 TestEngine with ID ‘junit-vintage’ failed to discover tests

提示错误信息: TestEngine with ID 'junit-vintage' failed to discover tests 错误和修改 错误的原因是因为在升级 Spring Boot 2.3 到 2.4 的时候。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> 这是因为 Spring Boot 2.3 升级到 2.4 之前,我们会 exclude junit-vintage-engine 在升级到 2.4 的时候,我们可以取消掉掉这个。     升级到 2.4 后,不再需要上面的代码。 https://www.ossez.com/t/spring-boot-testengine-with-id-junit-vintage-failed-to-discover-tests/13209

2021年01月26日 0Comments 3510Browse 6Like Read more
Computer Science

Spring Boot 进行测试提示 TestContextAnnotationUtils 错误

在 Spring Boot 运行测试的时候提示错误: java.lang.NoClassDefFoundError: org/springframework/test/context/TestContextAnnotationUtils 问题和解决办法 出现上面的问题是因为我们将 Spring Boot 从版本 2.3.3 升级到了 2.4 在依赖 spring-test 中,我们还是定义 5.2.8.RELEASE 了这个版本。 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>5.2.8.RELEASE</version> <scope>test</scope> </dependency> 如果升级版本到 Spring Boot 2.4 的版本的话,你可以首先取消掉 5.2.8.RELEASE 这个版本的限制。 如果取消掉版本的话,你可以看到 Spring 的测试使用的是 5.3.1 的版本。 上面的错误信息就是因为版本的不同,如果你升级了 Spring Boot 的话,相应的测试版本也需要升级。 当取消掉版本后,再次运行测试。 通过控制台测试就可以看到版本兼容性问题已经解决没有了。 https://www.ossez.com/t/spring-boot-testcontextannotationutils/13208

2021年01月26日 0Comments 780Browse 0Like Read more
12345…8
Archives
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,367)
    • Confluence (663)
    • Gradle (12)
  • U.S. (511)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1