{"id":863,"date":"2022-01-05T11:41:49","date_gmt":"2022-01-05T03:41:49","guid":{"rendered":"https:\/\/blog.frost-s.com\/?p=863"},"modified":"2022-01-06T09:41:55","modified_gmt":"2022-01-06T01:41:55","slug":"863","status":"publish","type":"post","link":"https:\/\/blog.frost-s.com\/index.php\/2022\/01\/05\/863\/","title":{"rendered":"MapStruct \u62f7\u8d1d\u7c7b\u5c5e\u6027"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\u80cc\u666f<\/h2>\n\n\n\n<p>\u6211\u4eec\u6709\u8fd9\u6837\u4e00\u4e2a\u573a\u666f\uff0c\u6709\u4e00\u4e2a<code>StudentDto<\/code>\u7c7b\uff0c\u8fd8\u6709\u4e00\u4e2a<code>StudentVo<\/code>\u7c7b<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@Data\npublic class StudentDto {\n    private String id;\n    private String code;\n    private String sex;\n    private String userName;\n}\n@Data\npublic class StudentVo {\n    private String id;\n    private String name;\n    private String code;\n    private String age;\n    private String score;\n    private String sex;\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u95ee\u9898<\/h3>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201c<\/p><p>\u5982\u679c\u6211\u4eec\u77e5\u9053<code>StudentVo<\/code>\u7684\u503c\uff0c\u9700\u8981\u5c06<code>StudentVo<\/code>\u7684\u5c5e\u6027\u62f7\u8d1d\u5230<code>StudentDto<\/code>\u4e2d\uff0c\u4f60\u4f1a\u600e\u4e48\u505a\u3002<\/p><p>\u201d<\/p><\/blockquote>\n\n\n\n<p><code>StudentVo<\/code>\u7684\u503c\u5982\u4e0b<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public StudentVo initVo() {\n    StudentVo studentVo = new StudentVo();\n    studentVo.setId(\"1\");\n    studentVo.setAge(\"27\");\n    studentVo.setName(\"Lvshen\");\n    studentVo.setCode(\"001\");\n    studentVo.setScore(\"100\");\n    studentVo.setSex(\"male\");\n    return studentVo;\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u89e3\u51b3\u4e00<\/h2>\n\n\n\n<p>\u4f20\u7edf\u7684\u89e3\u51b3\u65b9\u6cd5\uff0c\u901a\u8fc7<code>getter\/setter<\/code>\u65b9\u6cd5\u5c06\u5bf9\u5e94\u7684\u5c5e\u6027\u503c\u8fdb\u884c\u62f7\u8d1d\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@org.junit.Test\npublic void test3() {\n    StudentVo studentVo = initVo();\n    StudentDto studentDto = new StudentDto();\n    studentDto.setCode(studentVo.getCode());\n    studentDto.setId(studentVo.getId());\n    studentDto.setSex(studentVo.getSex());\n    studentDto.setUserName(studentVo.getName());\n\n    System.out.println(studentDto);\n}<\/code><\/pre>\n\n\n\n<p><strong>\u6d4b\u8bd5\u7ed3\u679c<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-1.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1100\" height=\"210\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-1.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-866\"  sizes=\"(max-width: 1100px) 100vw, 1100px\" \/><\/div><\/figure>\n\n\n\n<p>\u770b\u4e86\u4e0a\u9762\u7684\u65b9\u6cd5\uff0c\u4f60\u53ef\u80fd\u89c9\u5f97\u4e0d\u662f\u5f88\u7b80\u5355\u4e48\u3002\u4f46\u5982\u679c\u5c5e\u6027\u975e\u5e38\u591a\uff0c\u6bd4\u5982\u670920\u591a\u4e2a\u3002\u7528\u4e0a\u9762\u7684\u65b9\u6cd5\u5c31\u4f1a\u4e0d\u7f8e\u89c2\uff0c\u6ee1\u5c4f\u7684<code>getter\/setter<\/code>\u65b9\u6cd5\uff0c\u770b\u7740\u90fd\u773c\u82b1\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u89e3\u51b3\u4e8c<\/h2>\n\n\n\n<p>\u8fd9\u65f6\u6211\u4eec\u5c31\u53ef\u4ee5\u4f7f\u7528<code>BeanUtils.copyProperties<\/code>\u65b9\u6cd5\u5566\uff0c\u8fd9\u91cc\u7684<code>BeanUtils<\/code>\u662fSpring\u7684\uff0c\u800c\u4e0d\u662f<code>apache<\/code>\u7684\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@org.junit.Test\npublic void test2() {\n    StudentVo studentVo = initVo();\n    StudentDto studentDto = new StudentDto();\n    BeanUtils.copyProperties(studentVo,studentDto);\n\n    System.out.println(studentDto);\n}<\/code><\/pre>\n\n\n\n<p><strong>\u6d4b\u8bd5\u7ed3\u679c<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-2.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1090\" height=\"217\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-2.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-867\"  sizes=\"(max-width: 1090px) 100vw, 1090px\" \/><\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u89e3\u51b3\u4e09\uff08\u63a8\u8350\uff09<\/h2>\n\n\n\n<p>\u6211\u4eec\u8fd8\u53ef\u4ee5\u4f7f\u7528\u6027\u80fd\u66f4\u4f18\u8d8a\u7684<code>MapStruct<\/code>\uff0c\u4f60\u53ef\u80fd\u6ca1\u6709\u542c\u8fc7\u8fd9\u4e2a\u4e1c\u897f\u3002\u6ca1\u5173\u7cfb\uff0c\u6211\u4eec\u76f4\u63a5\u4e0a\u4ee3\u7801\u3002<\/p>\n\n\n\n<p><strong>MapStruct<\/strong>\u662f\u4e00\u4e2a\u53ef\u4ee5\u751f\u6210\u7c7b\u578b\u5b89\u5168\u7684\uff0c\u9ad8\u6027\u80fd\u7684\u4e14\u65e0\u4f9d\u8d56\u7684 JavaBean \u6620\u5c04\u4ee3\u7801\u7684\u6ce8\u89e3\u5904\u7406\u5668\uff0c\u53ef\u4ee5\u5728\u7f16\u8bd1\u671f\u751f\u6210\u5bf9\u5e94\u7684mapping\uff0c\u65e2\u6ca1\u6709<strong>BeanUtils<\/strong>\u7b49\u5de5\u5177\u4f7f\u7528\u53cd\u5c04\u7684\u6027\u80fd\u95ee\u9898\uff0c\u53c8\u514d\u53bb\u4e86\u81ea\u5df1\u5199\u6620\u5c04\u4ee3\u7801\u7684\u7e41\u7410\u3002<\/p>\n\n\n\n<p>\u5f15\u5165Maven\u4f9d\u8d56<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;dependency&gt;\n    &lt;groupId&gt;org.mapstruct&lt;\/groupId&gt;\n    &lt;artifactId&gt;mapstruct&lt;\/artifactId&gt;\n    &lt;version&gt;1.3.1.Final&lt;\/version&gt;\n&lt;\/dependency&gt;\n\n&lt;dependency&gt;\n    &lt;groupId&gt;org.mapstruct&lt;\/groupId&gt;\n    &lt;artifactId&gt;mapstruct-processor&lt;\/artifactId&gt;\n    &lt;version&gt;1.3.1.Final&lt;\/version&gt;\n&lt;\/dependency&gt;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u5b9e\u4f53\u62f7\u8d1d<\/h3>\n\n\n\n<p>\u6211\u4eec\u5148\u7f16\u5199\u4e00\u4e2a<code>StudentConverter<\/code>\u7c7b<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@Mapper\npublic interface StudentConverter {\n    StudentConverter INSTANCE = Mappers.getMapper(StudentConverter.class);\n\n    @Mappings(@Mapping(source = \"name\",target = \"userName\"))\n    StudentDto vo2dto(StudentVo vo);\n}<\/code><\/pre>\n\n\n\n<p>\u8fd9\u91cc\u7684<code>@Mapper<\/code>\u6765\u6e90\u4e8e<code>org.mapstruct.Mapper<\/code>\uff0c\u7528\u6765\u8bf4\u660e\u8fd9\u662f\u4e00\u4e2a\u5b9e\u4f53\u8f6c\u6362\u7c7b\u63a5\u53e3\u3002<\/p>\n\n\n\n<p><code>@Mappings<\/code>\u7528\u6765\u58f0\u660e\u6210\u5458\u5c5e\u6027\u7684\u6620\u5c04\uff0c<code>source = \"name\",target = \"userName\"<\/code>\u5373\u5c06<code>StudentVo<\/code>\u4e2d<code>name<\/code>\u7684\u503c\u62f7\u8d1d\u7ed9<code>StudentDto<\/code>\u4e2d\u7684<code>userName<\/code>\uff0c\u5982\u679c\u5c5e\u6027\u540d\u79f0\u76f8\u540c\uff0c\u5c31\u4e0d\u9700\u8981\u505a\u8fd9\u4e2a\u6620\u5c04\u3002<\/p>\n\n\n\n<p><strong>\u6d4b\u8bd5\u7ed3\u679c<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@org.junit.Test\npublic void test1() {\n    StudentVo studentVo = initVo();\n    StudentDto studentDto = StudentConverter.INSTANCE.vo2dto(studentVo);\n\n    System.out.println(studentDto);\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-3.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1098\" height=\"210\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-3.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-868\"  sizes=\"(max-width: 1098px) 100vw, 1098px\" \/><\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">List\u96c6\u5408\u62f7\u8d1d<\/h3>\n\n\n\n<p>\u4f60\u4ee5\u4e3a<code>MapStruct<\/code>\u53ea\u80fd\u8fdb\u884c\u5b9e\u4f53\u4e4b\u95f4\u7684\u62f7\u8d1d\uff1fNO\uff0c<code>MapStruct<\/code>\u8fd8\u53ef\u4ee5\u8fdb\u884cList\u4e4b\u95f4\u7684\u62f7\u8d1d\uff0c\u8fd9\u4e2a\u5c31\u592a\u725b\u4e86\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@Mapper\npublic interface StudentConverter {\n    StudentConverter INSTANCE = Mappers.getMapper(StudentConverter.class);\n\n    @Mappings(@Mapping(source = \"name\",target = \"userName\"))\n    StudentDto vo2dto(StudentVo vo);\n\n    List&lt;StudentDto&gt; listVo2dto(List&lt;StudentVo&gt; vos);\n}<\/code><\/pre>\n\n\n\n<p><strong>\u6d4b\u8bd5<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-4.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1155\" height=\"423\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-4.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-869\"  sizes=\"(max-width: 1155px) 100vw, 1155px\" \/><\/div><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>public void test() {\n        List&lt;StudentVo&gt; voList = initVoList();\n        List&lt;StudentDto&gt; studentDtos = StudentConverter.INSTANCE.listVo2dto(voList);\n        System.out.println(studentDtos);\n    }<\/code><\/pre>\n\n\n\n<p><strong>\u6d4b\u8bd5\u7ed3\u679c<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-5.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1207\" height=\"151\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-5.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-870\"  sizes=\"(max-width: 1207px) 100vw, 1207px\" \/><\/div><\/figure>\n\n\n\n<p>\u5f53\u7136<code>MapStruct<\/code>\u7b49\u529f\u80fd\u8fdc\u6bd4\u4f60\u60f3\u8c61\u7684\u8981\u591a\uff0c\u6709\u5174\u8da3\u7684\u53ef\u4ee5\u770b\u770b\u8fd9\u7bc7\u6587\u7ae0<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201c<\/p><p>https:\/\/www.cnblogs.com\/homejim\/p\/11313128.html<\/p><p>\u201d<\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">\u6211\u4e3a\u4ec0\u4e48\u63a8\u8350\u4f7f\u7528<code>MapStruct<\/code><\/h2>\n\n\n\n<p>\u5e02\u9762\u4e0a <code>BeanUtils<\/code>\u5e95\u5c42\u662f\u4f7f\u7528\u53cd\u5c04\u7684\uff0c\u6211\u4eec\u77e5\u9053\u4f7f\u7528\u53cd\u5c04\u4f1a\u5f71\u54cd\u6027\u80fd\u3002\u800c\u4e14<code>BeanUtils<\/code>\u9700\u8981\u7c7b\u578b\u548c\u540d\u79f0\u90fd\u4e00\u6837\u624d\u4f1a\u8fdb\u884c\u6620\u5c04\uff0c \u4f46\u5728\u5f88\u591a\u65f6\u5019\uff0c \u7531\u4e8e\u4e0d\u540c\u7684\u56e2\u961f\u4e4b\u95f4\u4f7f\u7528\u7684\u540d\u8bcd\u4e0d\u4e00\u6837\uff0c \u8fd8\u662f\u9700\u8981\u5f88\u591a\u7684\u624b\u52a8\u4f7f\u7528<code>getter\/setter<\/code>\u3002<\/p>\n\n\n\n<p>\u4e8e\u662f<code>MapStruct<\/code>\u8bde\u751f\u4e86\u3002<\/p>\n\n\n\n<p><code>MapSturct<\/code> \u662f\u4e00\u4e2a\u751f\u6210\u7c7b\u578b\u5b89\u5168\uff0c \u9ad8\u6027\u80fd\u4e14\u65e0\u4f9d\u8d56\u7684 JavaBean \u6620\u5c04\u4ee3\u7801\u7684\u6ce8\u89e3\u5904\u7406\u5668\uff08annotation processor\uff09\u3002<\/p>\n\n\n\n<p>\u5b83\u6709\u4e0b\u9762\u51e0\u4e2a\u7279\u70b9\uff1a<\/p>\n\n\n\n<p>\u201c<\/p>\n\n\n\n<ol><li>\u57fa\u4e8e\u6ce8\u89e3\u7684\u5904\u7406\u5668<\/li><li>\u53ef\u4ee5\u81ea\u5b9a\u4e49 <code>JavaBean<\/code> \u4e4b\u95f4\u7684\u5c5e\u6027\u6620\u5c04<\/li><li>\u7c7b\u578b\u5b89\u5168\uff0c \u9ad8\u6027\u80fd\uff0c \u65e0\u4f9d\u8d56\u6027<\/li><\/ol>\n\n\n\n<p>\u201d<\/p>\n\n\n\n<p>\u7f16\u8bd1\u4e4b\u540e\u4f1a\u751f\u6210\u65b9\u6cd5\u5b9e\u73b0<\/p>\n\n\n\n<p>\u5b9e\u73b0\u7684\u7c7b\u3001\u65b9\u6cd5\u5982\u4e0b<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-6.png'><img class=\"lazyload lazyload-style-2\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" width=\"1206\" height=\"979\" data-original=\"https:\/\/blog.frost-s.com\/wp-content\/uploads\/2022\/01\/image-6.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" class=\"wp-image-871\"  sizes=\"(max-width: 1206px) 100vw, 1206px\" \/><\/div><\/figure>\n\n\n\n<p>\u8be5\u5de5\u5177\u53ef\u4ee5\u5e2e\u6211\u4eec\u5b9e\u73b0 <code>JavaBean<\/code> \u4e4b\u95f4\u7684\u8f6c\u6362\uff0c \u901a\u8fc7\u6ce8\u89e3\u7684\u65b9\u5f0f\u3002\u901a\u8fc7 <code>MapStruct<\/code> \u6765\u751f\u6210\u7684\u4ee3\u7801\uff0c \u5176\u7c7b\u4f3c\u4e8e\u4eba\u624b\u5199\u3002\u901f\u5ea6\u4e0a\u53ef\u4ee5\u5f97\u5230\u4fdd\u8bc1\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u80cc\u666f \u6211\u4eec\u6709\u8fd9\u6837\u4e00\u4e2a\u573a\u666f\uff0c\u6709\u4e00\u4e2aStudentDto\u7c7b\uff0c\u8fd8\u6709\u4e00\u4e2aStudentVo\u7c7b \u95ee\u9898 \u201c \u5982\u679c\u6211\u4eec\u77e5\u9053S [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,8],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/posts\/863"}],"collection":[{"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/comments?post=863"}],"version-history":[{"count":2,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/posts\/863\/revisions"}],"predecessor-version":[{"id":874,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/posts\/863\/revisions\/874"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/media\/873"}],"wp:attachment":[{"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/media?parent=863"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/categories?post=863"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.frost-s.com\/index.php\/wp-json\/wp\/v2\/tags?post=863"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}