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

storyset自定义插画网站线上怎么做推广和宣传

storyset自定义插画网站,线上怎么做推广和宣传,百度推广助手手机版,lnmp利用wordpressSpringboot学习笔记——3 一、热部署1.1、手动启动热部署1.2、自动启动热部署1.3、热部署范围配置1.4、关闭热部署 二、配置高级2.1、第三方bean属性绑定2.2、松散绑定2.3、常用计量单位应用2.4、bean属性校验2.5、进制数据转换规则 三、测试3.1、加载测试专用属性3.2、加载测试… Springboot学习笔记——3 一、热部署1.1、手动启动热部署1.2、自动启动热部署1.3、热部署范围配置1.4、关闭热部署 二、配置高级2.1、第三方bean属性绑定2.2、松散绑定2.3、常用计量单位应用2.4、bean属性校验2.5、进制数据转换规则 三、测试3.1、加载测试专用属性3.2、加载测试类专用配置3.3、测试类中启动web环境3.4、发送虚拟请求3.5、匹配响应执行状态3.6、匹配响应体3.7、匹配响应头3.8、业务层测试事务回滚3.9、测试用例设置随机数据 四、数据层解决方案4.1、SQL4.1.1、内置数据源4.1.2、jdbcTemplate4.1.3、H2数据库 4.2、NoSQL4.2.1、redis下载安装与基本使用4.2.2、springboot整合redis4.2.3、Springboot读写Redis的客户端4.2.4、springboot操作Redis客户端实现技术切换jedis4.2.5、Mongodb4.2.6、Mongodb下载与安装 一、热部署 1.1、手动启动热部署 开启开发者工具 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-devtools/artifactIdoptionaltrue/optional /dependency激活热部署Ctrl F9 关于热部署 重启Restart)自定义开发代码包含类、页面、配置文件等加载位置restart类加载器重载ReLoad)jar包加载位置base类加载器 1.2、自动启动热部署 设置自动构建项目 IDEA失去焦点5秒以后启动热部署 1.3、热部署范围配置 默认不触发重启的目录列表 /META-INF/maven/META-INF/resources/resources/static/public/templates 自定义不参与重启排除项 devtools:restart:exclude: public/**,static/**1.4、关闭热部署 设置高优先级属性禁用热部署 SpringBootApplication public class SsmpApplication {public static void main(String[] args) {System.setProperty(spring.devtools.restart.enabled,false);SpringApplication.run(SsmpApplication.class);} }二、配置高级 2.1、第三方bean属性绑定 使用ConfigurationProperties为第三方bean绑定属性 Bean ConfigurationProperties(prefix datasources) public DruidDataSource dataSource(){DruidDataSource dataSource new DruidDataSource();return dataSource; }datasources:driverClassName: com.mysql.cj.jdbc.DriverEnableConfigurationProperties注解可以将使用ConfigurationProperties注解对应的类加入Spring容器 SpringBootApplication EnableConfigurationProperties(serverConfig.class) public class Springboot0701Application {BeanConfigurationProperties(prefix datasources)public DruidDataSource dataSource(){DruidDataSource dataSource new DruidDataSource();return dataSource;}public static void main(String[] args) {ConfigurableApplicationContext run SpringApplication.run(Springboot0701Application.class, args);DruidDataSource dataSource run.getBean(DruidDataSource.class);System.out.println(dataSource.getDriverClassName());serverConfig serverConfig run.getBean(serverConfig.class);System.out.println(serverConfig.toString());} }//Component Data ConfigurationProperties(prefix servers) public class serverConfig {private String ipAddress;private int port;private long timeout; }注意事项 EnableConfigurationProperties和Component不能同时使用 解除使用ConfigurationProperties注释警告 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-configuration-processor/artifactId /dependency2.2、松散绑定 ConfigurationProperties绑定属性支持属性名宽松绑定 public class serverConfig {private String ipAddress;private int port;private long timeout; }以下格式都支持 ip-Address: 189.176.0.1 ip_Address: 189.176.0.1 ipaddress: 189.176.0.1 IPADDRESS: 189.176.0.1 # 常量模式 ip-address: 189.176.0.1 # 烤肉串模式注意事项 宽松绑定不支持注解Value引用单个属性的方式 2.3、常用计量单位应用 Springboot支持JDK8提供的时间与空间计量单位 Component Data ConfigurationProperties(prefix servers) public class serverConfig {private String ipAddress;private int port;private long timeout;DurationUnit(ChronoUnit.HOURS)private Duration serverTimeout;DataSizeUnit(DataUnit.MEGABYTES)private DataSize dataSize; }2.4、bean属性校验 开启数据校验有助于系统安全性J2EE规范中JSR303规范定义了一组有关数据校验相关的API 添加3SR303规范坐标与Hibernate校验框架对应坐标 dependencygroupIdjavax.validation/groupIdartifactIdvalidation-api/artifactId /dependencydependencygroupIdorg.hibernate.validator/groupIdartifactIdhibernate-validator/artifactId /dependency对Bean开启校验功能 Component Data ConfigurationProperties(prefix servers) //2. 开启对当前bean的属性注入校验 Validated public class serverConfig { }设置校验规则 Component Data ConfigurationProperties(prefix servers) //2. 开启对当前bean的属性注入校验 Validated public class serverConfig {private String ipAddress;//3.设置具体的规则Max(value 8888,message 最大值不能超过8888)Min(value 202,message 最小值不能小于202)private int port;private long timeout;DurationUnit(ChronoUnit.HOURS)private Duration serverTimeout;DataSizeUnit(DataUnit.MEGABYTES)private DataSize dataSize; }2.5、进制数据转换规则 字面值表达式导致出现问题 int: 0123 # 会判断为八进制的123导致转换出现问题注意yaml文件中对于数字的定义支持进制书写格式如需使用字符串请使用引号明确标注 string: 0123三、测试 3.1、加载测试专用属性 启动测试环境时可以通过properties参数设置测试环境专用的属性 //properties属性可以为当前测试用例添加临时的属性配置 SpringBootTest(properties {test.proptestValue2}) public class propertiesAndArgsTest {Value(${test.prop})private String msg;Testvoid testProperties(){System.out.println(msg);} }优势比多环境开发中的测试环境影响范围更小仅对当前测试类有效 在启动测试环境时可以通过args参数设置测试环境专用的传入参数 //args属性可以为当前测试用例添加临时的命令行参数 SpringBootTest(args {--test.proptestValue3}) public class propertiesAndArgsTest {Value(${test.prop})private String msg;Testvoid testProperties(){System.out.println(msg);} }3.2、加载测试类专用配置 使用Import注解加载当前测试类专用的配置 SpringBootTest Import({MsgConfig.class}) public class ConfigTest {Autowiredprivate String msg;Testvoid test1(){System.out.println(msg);} }可以加载测试范围配置应用于小范围测试环境 3.3、测试类中启动web环境 模拟端口 package com.smulll;import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest;SpringBootTest(webEnvironment SpringBootTest.WebEnvironment.DEFINED_PORT) class Springboot0801ApplicationTests {Testvoid contextLoads() {} }3.4、发送虚拟请求 虚拟请求测试 SpringBootTest(webEnvironment SpringBootTest.WebEnvironment.DEFINED_PORT) //开启虚拟MVC调用 AutoConfigureMockMvc class Springboot0801ApplicationTests {Testvoid testWeb(Autowired MockMvc mvc) throws Exception {//创建虚拟请求当前访问/booksMockHttpServletRequestBuilder builder MockMvcRequestBuilders.get(/books);//执行请求ResultActions perform mvc.perform(builder);} }3.5、匹配响应执行状态 虚拟请求状态匹配 Test void testStatus(Autowired MockMvc mvc) throws Exception {//创建虚拟请求当前访问/booksMockHttpServletRequestBuilder builder MockMvcRequestBuilders.get(/books);//执行请求ResultActions perform mvc.perform(builder);//设置预期值与真实值进行比较测试成功通过失败测试停止//定义本次调用的预期值StatusResultMatchers status MockMvcResultMatchers.status();//预计本次调用的成功值状态200ResultMatcher ok status.isOk();//添加预计值到本次调用过程中进行匹配perform.andExpect(ok); }3.6、匹配响应体 虚拟请求体匹配 Test void testBody(Autowired MockMvc mvc) throws Exception {//创建虚拟请求当前访问/booksMockHttpServletRequestBuilder builder MockMvcRequestBuilders.get(/books);//执行请求ResultActions perform mvc.perform(builder);//设置预期值与真实值进行比较测试成功通过失败测试停止//定义本次调用的预期值ContentResultMatchers content MockMvcResultMatchers.content();//预计本次调用执行结果ResultMatcher result content.string(springboot);//添加预计值到本次调用过程中进行匹配perform.andExpect(result); }虚拟请求体json匹配 Test void testJSON(Autowired MockMvc mvc) throws Exception {//创建虚拟请求当前访问/booksMockHttpServletRequestBuilder builder MockMvcRequestBuilders.get(/books);//执行请求ResultActions perform mvc.perform(builder);//设置预期值与真实值进行比较测试成功通过失败测试停止//定义本次调用的预期值ContentResultMatchers content MockMvcResultMatchers.content();//预计本次调用执行结果ResultMatcher result content.json({\n \id\: 1,\n \type\: \springboot\,\n \name\: \springboot\,\n \description\: \springboot\\n });//添加预计值到本次调用过程中进行匹配perform.andExpect(result); }3.7、匹配响应头 虚拟请求头匹配 Test void testContentType(Autowired MockMvc mvc) throws Exception {//创建虚拟请求当前访问/booksMockHttpServletRequestBuilder builder MockMvcRequestBuilders.get(/books);//执行请求ResultActions perform mvc.perform(builder);//设置预期值与真实值进行比较测试成功通过失败测试停止//定义本次调用的预期值HeaderResultMatchers Header MockMvcResultMatchers.header();//预计本次调用执行结果ResultMatcher string Header.string(Content-Type, application/json);//添加预计值到本次调用过程中进行匹配perform.andExpect(string); }3.8、业务层测试事务回滚 为测试用例添加事务SpringBoot会对测试用例对应的事务提交操作进行回滚 SpringBootTest Transactional public class TestSave {Autowiredprivate bookServer bookServer; }如果想在测试用例中提交事务可以通过Rollback注解设置 SpringBootTest Transactional Rollback(false) public class TestSave { }3.9、测试用例设置随机数据 测试用例数据通常采用随机值进行测试使用SpringBoot提供的随机数为其赋值 testcase:book:id: ${random.int}name: ${random.value} #随机字符串MDS字符串32位type: ${random.int(10,100)}uuid: ${random.uuid} #随机uuidpublishTime: ${random.long}${random.int}表示随机整数${random.int(10)}表示10以内的随机数${random.int(10,20)}表示10到20的随机数其中()可以是任意字符例如[]!!均可 四、数据层解决方案 4.1、SQL 4.1.1、内置数据源 现有数据层解决方案技术选型 Druid MyBatis-Plus MySQL数据源DruidDataSource持久化技术MyBatis-PlusMyBatis数据库MySQL SpringBoot提供了3种内嵌的数据源对象供开发者选择 HikariCP默认内置数据源对象Tomcat提供DataSourceHikariCP不可用的情况下且在web环境中将使用tomcat服务器配置的数据源对象Commons DBCPHikari不可用tomcat数据源也不可用将使用dbcp数据源 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/springbootbase?serverTimezoneUTCusername: rootpassword: 123456通用配置无法设置具体的数据源配置信息仅提供基本的连接相关配置如需配置在下一级配置中设置具体设定 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/springbootbase?serverTimezoneUTCusername: rootpassword: 123456hikari:maximum-pool-size: 504.1.2、jdbcTemplate 内置持久化解决方案——JdbcTemplate SpringBootTest class Springboot0901ApplicationTests {Testvoid testJdbc(){String sql select * from tb_book where id1;ListBook list jdbcTemplate.query(sql, new RowMapperBook() {Overridepublic Book mapRow(ResultSet rs, int rowNum) throws SQLException {Book book new Book();book.setId(rs.getInt(id));book.setName(rs.getString(name));book.setType(rs.getString(type));book.setDescription(rs.getString(description));return book;}});System.out.println(list);} }dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-jdbc/artifactId /dependencyspring: jdbc:template:query-timeout: -1 #查询超时时间max-rows: 500 #最大行数fetch-size: -1 #缓存行数4.1.3、H2数据库 springBoot提供了3种内嵌数据库供开发者选择提高开发测试效率 H2HSQLDerby 导入H2相关坐标 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-jpa/artifactId /dependency dependencygroupIdcom.h2database/groupIdartifactIdh2/artifactIdscoperuntime/scope /dependency设置当前项目为web工程并配置H2管理控制台参数 server: port: 80 spring:h2:console: path: /h2enabled: true访问用户名sa默认密码123456 设置访问的数据源 server:port: 80 spring:h2:console:path: /h2enabled: truedatasource:driver-class-name: org.h2.Driverurl: jdbc:h2:~/testusername: sapassword: 123456H2数据库控制台仅用于开发阶段线上项目请务必关闭控制台功能 server:port: 80 spring:h2:console:path: /h2enabled: false4.2、NoSQL 4.2.1、redis下载安装与基本使用 Redis是一款key-value存储结构的内存级NoSQL数据库 支持多种数据存储格式支持持久化支持集群 redis下载 redis下载Windows 安装启动 Windows解压安装或一键式安装服务端启动命令 redis-server.exe redis.windows.conf客户端启动命令 redis-cli.exe4.2.2、springboot整合redis 导入SpringBoot整合Redis坐标 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId /dependency配置Redis采用默认配置 spring:data:redis:host: localhostport: 6379主机localhost默认端口6379默认 RedisTemplate提供操作各种数据存储类型的接口API 客户端RedisTemplate SpringBootTest class Springboot10RedisApplicationTests {Autowiredprivate RedisTemplate redisTemplate;Testvoid set() {ValueOperations valueOperations redisTemplate.opsForValue();valueOperations.set(age,19);}Testvoid get(){ValueOperations valueOperations redisTemplate.opsForValue();Object o valueOperations.get(age);System.out.println(o);} }4.2.3、Springboot读写Redis的客户端 StringRedisTemplate以字符串作为key和value与Redis客户端操作等效 SpringBootTest public class RedisTest {Autowiredprivate StringRedisTemplate stringRedisTemplate;Testvoid Demo1(){ValueOperationsString, String ops stringRedisTemplate.opsForValue();System.out.println(ops.get(name));} }4.2.4、springboot操作Redis客户端实现技术切换jedis 配置客户端 spring:data:redis:host: localhostport: 6379client-type: jedis配置客户端专用属性 spring:data:redis:host: localhostport: 6379client-type: jedislettuce:pool:max-active: 16jedis:pool:max-active: 16lettcus与jedis区别 jedis连接Redis服务器是直连模式当多线程模式下使用jedis会存在线程安全问题,解决方案可以通过配置连接池使每个连接专用这样整体性能就大受影响。lettcus基于Netty框架进行与Redis服务器连接底层设计中采用StatefulRedisConnection。StatefulRedisConnection自身是线程安全的可以保障并发访问安全问题所以一个连接可以被多线程复用。当然lettcus也支持多连接实例一起工作。 4.2.5、Mongodb MongoDB是一个开源、高性能、无模式的文档型数据库。NoSQL数据库产品中的一种是最像关系型数据库的非关系型数据库淘宝用户数据 存储位置:数据库特征:永久性存储修改频度极低 游戏装备数据、游戏道具数据 存储位置:数据库、Mongodb特征:永久性存储与临时存储相结合、修改频度较高 直播数据、打赏数据、粉丝数据 存储位置:数据库、Mongodb特征:永久性存储与临时存储相结合修改频度极高 物联网数据 存储位置:Mongodb特征:临时存储修改频度飞速 4.2.6、Mongodb下载与安装 Windows版Mongo下载 下载地址 Windows版Mongo安装 解压后设置数据目录 Windows版Mongo启动 服务端启动 mongod --dbpath..\data\db客户端启动 mongo --host127.0.8.1 --port27017
文章转载自:
http://www.morning.tfpbm.cn.gov.cn.tfpbm.cn
http://www.morning.wrlcy.cn.gov.cn.wrlcy.cn
http://www.morning.qllcm.cn.gov.cn.qllcm.cn
http://www.morning.hlxxl.cn.gov.cn.hlxxl.cn
http://www.morning.slqgl.cn.gov.cn.slqgl.cn
http://www.morning.dqpd.cn.gov.cn.dqpd.cn
http://www.morning.dmchips.com.gov.cn.dmchips.com
http://www.morning.mfzyn.cn.gov.cn.mfzyn.cn
http://www.morning.dpwcl.cn.gov.cn.dpwcl.cn
http://www.morning.uqrphxm.cn.gov.cn.uqrphxm.cn
http://www.morning.rfgkf.cn.gov.cn.rfgkf.cn
http://www.morning.rshkh.cn.gov.cn.rshkh.cn
http://www.morning.qlpyn.cn.gov.cn.qlpyn.cn
http://www.morning.gqjwz.cn.gov.cn.gqjwz.cn
http://www.morning.nwrzf.cn.gov.cn.nwrzf.cn
http://www.morning.rfrxt.cn.gov.cn.rfrxt.cn
http://www.morning.jqhrk.cn.gov.cn.jqhrk.cn
http://www.morning.gtkyr.cn.gov.cn.gtkyr.cn
http://www.morning.mrbzq.cn.gov.cn.mrbzq.cn
http://www.morning.bryyb.cn.gov.cn.bryyb.cn
http://www.morning.qqzdr.cn.gov.cn.qqzdr.cn
http://www.morning.xqcgb.cn.gov.cn.xqcgb.cn
http://www.morning.pxsn.cn.gov.cn.pxsn.cn
http://www.morning.ctlzf.cn.gov.cn.ctlzf.cn
http://www.morning.fzlk.cn.gov.cn.fzlk.cn
http://www.morning.bxyzr.cn.gov.cn.bxyzr.cn
http://www.morning.xjnw.cn.gov.cn.xjnw.cn
http://www.morning.xmtzk.cn.gov.cn.xmtzk.cn
http://www.morning.jtmql.cn.gov.cn.jtmql.cn
http://www.morning.kngqd.cn.gov.cn.kngqd.cn
http://www.morning.rkfxc.cn.gov.cn.rkfxc.cn
http://www.morning.dgxrz.cn.gov.cn.dgxrz.cn
http://www.morning.tnqk.cn.gov.cn.tnqk.cn
http://www.morning.jlschmy.com.gov.cn.jlschmy.com
http://www.morning.jlgjn.cn.gov.cn.jlgjn.cn
http://www.morning.cwyfs.cn.gov.cn.cwyfs.cn
http://www.morning.zxfdq.cn.gov.cn.zxfdq.cn
http://www.morning.fmrd.cn.gov.cn.fmrd.cn
http://www.morning.bcdqf.cn.gov.cn.bcdqf.cn
http://www.morning.kdnrp.cn.gov.cn.kdnrp.cn
http://www.morning.jfmjq.cn.gov.cn.jfmjq.cn
http://www.morning.jzfrl.cn.gov.cn.jzfrl.cn
http://www.morning.rqfnl.cn.gov.cn.rqfnl.cn
http://www.morning.xjqkh.cn.gov.cn.xjqkh.cn
http://www.morning.ffcsr.cn.gov.cn.ffcsr.cn
http://www.morning.wwgpy.cn.gov.cn.wwgpy.cn
http://www.morning.bftqc.cn.gov.cn.bftqc.cn
http://www.morning.eronghe.com.gov.cn.eronghe.com
http://www.morning.hblkq.cn.gov.cn.hblkq.cn
http://www.morning.yjfzk.cn.gov.cn.yjfzk.cn
http://www.morning.mzkn.cn.gov.cn.mzkn.cn
http://www.morning.geledi.com.gov.cn.geledi.com
http://www.morning.tbcfj.cn.gov.cn.tbcfj.cn
http://www.morning.mjytr.cn.gov.cn.mjytr.cn
http://www.morning.wfmqc.cn.gov.cn.wfmqc.cn
http://www.morning.ymrq.cn.gov.cn.ymrq.cn
http://www.morning.jqkjr.cn.gov.cn.jqkjr.cn
http://www.morning.sbrpz.cn.gov.cn.sbrpz.cn
http://www.morning.rxnl.cn.gov.cn.rxnl.cn
http://www.morning.bfrsr.cn.gov.cn.bfrsr.cn
http://www.morning.wylpy.cn.gov.cn.wylpy.cn
http://www.morning.kpbn.cn.gov.cn.kpbn.cn
http://www.morning.hrjrt.cn.gov.cn.hrjrt.cn
http://www.morning.gxtbn.cn.gov.cn.gxtbn.cn
http://www.morning.xkyfq.cn.gov.cn.xkyfq.cn
http://www.morning.sdecsd.cn.gov.cn.sdecsd.cn
http://www.morning.wgtnz.cn.gov.cn.wgtnz.cn
http://www.morning.sjjq.cn.gov.cn.sjjq.cn
http://www.morning.trrd.cn.gov.cn.trrd.cn
http://www.morning.wcghr.cn.gov.cn.wcghr.cn
http://www.morning.fglyb.cn.gov.cn.fglyb.cn
http://www.morning.dqwykj.com.gov.cn.dqwykj.com
http://www.morning.mjbkp.cn.gov.cn.mjbkp.cn
http://www.morning.gqwpl.cn.gov.cn.gqwpl.cn
http://www.morning.tpmnq.cn.gov.cn.tpmnq.cn
http://www.morning.msbct.cn.gov.cn.msbct.cn
http://www.morning.kbqbx.cn.gov.cn.kbqbx.cn
http://www.morning.ykrck.cn.gov.cn.ykrck.cn
http://www.morning.ybgcn.cn.gov.cn.ybgcn.cn
http://www.morning.bpmtz.cn.gov.cn.bpmtz.cn
http://www.tj-hxxt.cn/news/270966.html

相关文章:

  • 自助建站空间怎么用国内外做gif的网站
  • 盐城市城南新区建设局网站论文答辩ppt模板免费下载 素材
  • 学校网站资源建设方案怎么开一个做网站的工作室
  • 旅游网站建设 策划书东莞响应式网站哪家强
  • 重庆技术网站建设网站301在哪里做
  • 做类似淘宝的网站设计需要什么网站的企业风采怎么做
  • 网站后台素材台州网站建设团队
  • 嘉定企业网站制作休闲食品网站建设策划书
  • 网站内外链接怎么做设计iphone手机网站
  • 一般纳税人网站建设多少税率po wordpress
  • 环保类网站建设网站建设哪家信誉好
  • 国内单页网站宁波全网营销型网站建设
  • wordpress 网站改名手机网页版微信下载
  • ps平面设计主要做什么网站标题优化
  • 手表网站app推荐信阳网站开发公司
  • 益阳网站建设公司有哪些投资1元赚1000
  • 网站建设酷隆静态网站站内搜索
  • 做网站的必要百度引流怎么推广
  • 做网站和网站页面设计seopc流量排名网站
  • 自己建一个网站难吗数据库修改wordpress登录密码
  • 分类信息网站平台的推广wordpress登陆404
  • 制定商务网站建设时国内免费的vps
  • 承德网站开发国内云服务器免费
  • 电气建设网站做搬家服务网站问卷调查的目的
  • 云南城市建设职业学院spoc网站浦口区网站建设及推广
  • 上海移动官网网站建设关于网络营销的论文文献
  • 2003服务器怎么挂网站做模具在哪个网站找工作
  • 购物网站英语做网站的怎么认证微博
  • 为什么我的网站做不起来标准化信息网站建设与应用
  • 做期权关注哪个网站wordpress博客文章