当前位置: 首页 > news >正文

网站建设公众号小程序开发江苏省网架公司

网站建设公众号小程序开发,江苏省网架公司,哪里可以找到做网站的,在长沙阳光医院做网站编辑在些模块中汇总了一些web开发常用的配置和功能。 模块源码结构 Restful API常用定义 QueryParam请求参数 Data public class QueryParam {private String key;private String value; }RestfulController实现 RestfulController.java#xff0c;主要汇总一些常用的restful的… 在些模块中汇总了一些web开发常用的配置和功能。 模块源码结构 Restful API常用定义 QueryParam请求参数 Data public class QueryParam {private String key;private String value; }RestfulController实现 RestfulController.java主要汇总一些常用的restful的写法 Slf4j RestController RequestMapping(/api/load) public class RestfulController {/*默认 required true*/GetMapping(/v1/getMapping)public BaseResponseString getMapping( RequestParam(valueusername, required false) String name){log.info(getMapping:{}, name);return BaseResponse.success(name);}/*这处必须用 PathVariable 注解*/GetMapping(/v1/pathVariable/{name})public BaseResponse pathVariable(PathVariable(name) String name){log.info(getMapping:{}, name);return BaseResponse.success(name);}/*默认 required true*/PostMapping(value /v1/postMapping)public BaseResponse postMapping(RequestBody QueryParam queryParam){log.info(getMapping:{}, queryParam);return BaseResponse.success(queryParam);}RequestMapping(value /v1/allRequestMapping/{name})public BaseResponse allRequestMapping(PathVariable(name) String name){log.info(getMapping:{}, name);return BaseResponse.success(name);} }RestTemplate客户端 pom.xml dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpclient/artifactIdversion4.5.14/version/dependencydependencygroupIdorg.apache.httpcomponents.client5/groupIdartifactIdhttpclient5/artifactIdversion5.2.3/version/dependencyRestTemplate Bean实现 配置java-ben Configuration public class RestTemplateConfig {Beanpublic RestTemplate restTemplate() {RestTemplate restTemplate new RestTemplate();restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));return restTemplate;} }application.properties配置 spring.profiles.active dev spring.application.namespringbootCommonConfig server.port17000#自定义配置服务端 service-url.service http://www.baidu.com调用http接口 定义一个Controller来测试Rest调用 Slf4j RestController RequestMapping(/api/rmihttp) public class TemplateController {Autowiredprivate RestTemplate restTemplate;Value(${service-url.service})private String serviceUrl;GetMapping(/v1/hello-content)public BaseResponseString loadHelloContent(String uuid){String result restTemplate.getForObject(serviceUrl /s?wdspringboot, String.class, uuid);return BaseResponse.success(result);}}RestTemplate实现GET调用 //getForObject: 返回对象为响应体中数据转化成的对象 GetMapping(/{id}) public Result getUser(PathVariable Long id) {return restTemplate.getForObject(userServiceUrl /user/{1}, Result.class, id); }//getForEntity: 返回对象为ResponseEntity对象包含了响应中的一些重要信息比如响应头、响应状态码、响应体等举例如下 GetMapping(/getEntityByUsername) public Result getEntityByUsername(RequestParam String username) {ResponseEntityResult entity restTemplate.getForEntity(userServiceUrl /user/getByUsername?username{1}, Result.class, username);if (entity.getStatusCode().is2xxSuccessful()) {return entity.getBody();} else {return new Result(操作失败, 500);} }RestTemplate实现POST调用 // postForObject PostMapping(/insert) public Result insert(RequestBody User user) {return restTemplate.postForObject(userServiceUrl /user/insert, user, Result.class); }//postForEntity PostMapping(/insert) public Result insert(RequestBody User user) {return restTemplate.postForEntity(userServiceUrl /user/insert, user, Result.class).getBody(); }Swagger-UI测试Restful API application-dev.properties配置 以下全是自定义的属性需要有一个相应的配置类如下 #swagger springdoc.api-docs.enabledtrue springdoc.api-docs.path/api-schemaswagger-config.group default-group swagger-config.description The following is a restful-api list of {} application, and you can browse or test them to determine if they are working as you expect. swagger-config.versionV1.0 swagger-config.urlPattern/** swagger-config.base-packagecom.korgs swagger-config.authorization-key-nametoken swagger-config.wiki https://korgs.blog.csdn.net/关键配置只有swagger-config.base-package和swagger-config.urlPattern开发时最常修改的是swagger-config.base-package用来扫描API类。如果想关闭swagger功能可以设置springdoc.api-docs.enabledfalse。 OpenAPIConfig Bean实现 在OpenAPIConfig类中包含了一个内部类SwaggerPropertiesSwaggerProperties和上述application-dev.properties中相应的配置相对应。 Configuration public class OpenAPIConfig {Autowiredprivate SwaggerProperties swaggerProperties;Value(${spring.application.name})private String applicationName;Beanpublic OpenAPI openAPI() {return new OpenAPI().info(new Info().title(applicationName).description(StrUtil.format(swaggerProperties.getDescription(), applicationName)).version(swaggerProperties.getVersion())).externalDocs(new ExternalDocumentation().description(See details documentation, please click here!).url(swaggerProperties.getWiki()));}Beanpublic GroupedOpenApi applicationRestfulApi() {return GroupedOpenApi.builder().group(swaggerProperties.getGroup()).packagesToScan(swaggerProperties.getBasePackage().split(,)).pathsToMatch(swaggerProperties.getUrlPattern()).build();}DataComponentConfigurationProperties(prefix swagger-config)public static class SwaggerProperties{private String group;private String description;private String version;private String basePackage;private String authorizationKeyName;private String urlPattern;private String wiki;} }Log4j配置实现 定义一个名为log4j2.xml的文件并在application.properties中做如下配置 # log4j logging.configclasspath:log4j2.xml logging.level.rootINFO logging.level.org.springframework.webERRORlog4j2.xml ?xml version1.0 encodingUTF-8?!--scan当此属性设置为true时配置文件如果发生改变将会被重新加载默认值为true-- configuration scanfalse!--日志文件存储路径默认为项目根目录下默认值为logs--property nameLOG_PATH valuelogs/!-- 定义日志文件名称 --property nameappName valuespringbootBase/property!--控制台日志格式定义--appender nameSTDOUT classch.qos.logback.core.ConsoleAppenderencoder classch.qos.logback.classic.encoder.PatternLayoutEncoderpattern%d{yyyy-MM-dd HH:mm:ss} [%thread] [%level] [%c] %M %L - %msg%n/pattern/encoder/appender!--所有日志--appender nameFILE classch.qos.logback.core.rolling.RollingFileAppenderfile${LOG_PATH}/${appName}.info.log/fileencoder classch.qos.logback.classic.encoder.PatternLayoutEncoderpattern%d{yyyy-MM-dd HH:mm:ss} [%thread] [%level] [%c] %M %L - %msg%n/pattern/encoder!--按天存档日志最多存储30天--rollingPolicy classch.qos.logback.core.rolling.TimeBasedRollingPolicyFileNamePattern${LOG_PATH}/${appName}.info.%d{yyyy-MM-dd}.log.gz/FileNamePatternMaxHistory30/MaxHistory/rollingPolicy/appender!--error日志--appender nameERROR classch.qos.logback.core.rolling.RollingFileAppenderfilter classch.qos.logback.classic.filter.LevelFilterlevelERROR/levelonMatchACCEPT/onMatchonMismatchDENY/onMismatch/filterfile${LOG_PATH}/${appName}.err.log/filerollingPolicy classch.qos.logback.core.rolling.TimeBasedRollingPolicyfileNamePattern${LOG_PATH}/${appName}.err.%d{yyyy-MM-dd}.log.gz/fileNamePatternmaxHistory30/maxHistory/rollingPolicyencoderpattern%d{yyyy-MM-dd HH:mm:ss} [%thread] [%level] [%c] %M %L - %msg%n/pattern/encoder/appender!--设置哪些日志会生效--root levelINFOappender-ref refSTDOUT/appender-ref refFILE /appender-ref refERROR //root /configuration!--1 %d{yyyy-MM-dd HH:mm:ss, SSS} 日志产生时间,输出到毫秒的时间-- !--2 %level 输出日志级别-- !--3 %logger 或 %c logger 的名称通常为包名类名-- !--4 %thread 或 %t 输出当前线程名称-- !--5 %p 日志输出格式-- !--6 %message 或 %msg 或 %m 日志内容即 http://logger.info(message)-- !--7 %n 换行符-- !--8 %class 或 %C 输出 Java 类名-- !--9 %file 或 %F 输出文件名-- !--10 %L 输出错误行号-- !--11 %method 或 %M 输出方法名-- !--12 %l 输出语句所在的行数, 包括类名、方法名、文件名、行数-- !--13 hostName 本地机器名-- !--14 hostAddress 本地 ip 地址--线程跟踪日志 这个日志跟踪功能只能在本应用中适用如果想在分布式环境中需要更高级的设计或是采用类似ELK之间的中间件。不过这个跟踪功能在分析问题时也非常有用。其输出格式如下 2024-05-07 23:54:22 [http-nio-18081-exec-8] [INFO] [com.korgs.framework.logger.AccessLogInterceptor] accessLog 119 - tid179864225215371860 appIdnoSet ip0:0:0:0:0:0:0:1 uri/helloworld methodcom.korgs.SpringbootWebApplication.helloWorld param{} inTime1715097262676 2024-05-07 23:54:22 [http-nio-18081-exec-8] [INFO] [com.korgs.SpringbootWebApplication] helloWorld 28 - tid179864225215371860 msgI am busy to handle this request. 2024-05-07 23:54:22 [http-nio-18081-exec-8] [INFO] [com.korgs.framework.logger.AccessLogInterceptor] accessLog 119 - tid179864225215371860 uri/helloworld exec14tid随机生成的事务ID每次请求唯一并在同一线程内有效inTime表示接收请求的时间exec表示当前请法响应的总时间appId表示调用的客户端标识ip表示调用的客户端IPuri表示客户端调用的APImethod表示客户端调用的API实现的java方法 源码下载 涉及模块 springboot-common-config:17000 源码下载 基础框架源码下载封装Springboot基础框架功能-03 源码运行方法 模块详细功能说明和运行测试方法
http://www.w-s-a.com/news/202507/

相关文章:

  • 合肥推广外包公司佛山seo
  • 成都网站品牌设计策划课堂网站开发
  • 做直播网站赚钱公司网站空间怎么续费
  • 企业网站制作公司有哪些太原网站建设 thinkphp3.2
  • 云集网站哪个公司做的百度竞价排名怎么做
  • 做网站公司赚钱吗网站建设英语翻译
  • 网络公司除了做网站产品设计作品
  • dede网站模板替换湘潭建设路街道网站
  • 东莞网站优化效果如何网络设计工作
  • 网站备案系统验证码出错的解决方案任丘建设银行网站
  • 个人博客建站wordpress叮当app制作
  • 网站式的公司记录怎么做二手书网站策划书
  • 营销型网站的建设重点是什么帝国程序和WordPress
  • 正能量网站推荐不需要下载巴中网站建设开发公司
  • 学生模拟网站开发西安seo平台
  • 免费的app推广平台免费网站seo
  • 建一个个人网站网站建设中小企业广西
  • 优惠券网站做淘客违规吗个人建网站运营.
  • 旅游网站制作建设华大基因 网站建设
  • sem推广竞价托管南京seo网站优化
  • 网站优化网站建站教程网站建设 成都
  • 网站 配色表html代码在线
  • 城乡和建设部建造师网站众筹平台网站建设
  • 外贸网站模板免费下载微网站制作软件
  • 一个新的网站怎么做宣传技术先进的网站建
  • 福建网站建设有限公司需求网站
  • 生物科技企业网站做的比较好的企业培训网站模板
  • 南京 高端网站建设网站备案密码怎么找回
  • 蛋糕店网站模板建设电子商务系统网站
  • 海口网站建设优化公司网站开发要加班吗