后端知识

  • 达梦数据库如果在一个表上新增大字段(CLOB),会报“不能同时包含聚集KEY和大字段”的错误。 因为默认情况下,达梦数据库的主键为聚集索引;主键为聚集索引时,不能创建大字段(CLOB)。如果在创建表时就包含大字段,可以成功创建,这是因为建表时包含大字段,主键就自动为非聚集索引。 对于已经存在的表,且主键为聚...
    2024-01-08 14:06 后端知识
  • 正常增加字段如下: <changeSet id="Add test column" author="DBA presents"> <addColumn tableName="test_table"> <column name="test" type="int" /> </addColumn> </changeSet> 但如果字段已经存在,则会报错。...
    2024-01-05 12:44 后端知识
  • 作为开发人员,需要测试各种各样的环境,安装虚拟机是必不可少的。安装虚拟机后,与主机IP互通是一个很关键的问题,设置也稍有繁琐。下面详细介绍设置过程。 虚拟网络编辑器点击WMware的编辑菜单,选择虚拟网络编辑器。 然后点击更改设置。 选中VMnet8 NAT模式,勾选使用本地 DHCP 服务将 IP 地址分配给虚拟机(D) ...
    2023-11-10 12:52 后端知识
  • HTTP Session特点 有效期较短,一般为30分钟。刷新后,自动续期。有rememberMe功能。正常的session过期后,变成rememberMe登录状态,操作敏感数据时,需要再次登录以获得正常的session状态。 JWT特点 一个长期的RefreshToken,可以有1年的有效期。通过RefreshToken获取AccessToken,有效期一般为10分钟。每5分钟重新获...
    2023-09-23 12:30 后端知识
  • 很多时候我们需要判断某些数据是否存在,比如用户名是否存在,邮箱是否存在。 这是通常的做法是使用count(*),然后判断数据的条数,大于0则代表数据存在。 select (*) from ujcms_user t where t.username = ? 这种方式,数据库需要查询所有符合条件的数据后,才返回结果。如果是一个很大的表,则可能耗费较长时间。 ...
    2023-09-23 12:23 后端知识
  • SQL界一直以来都流传这样一种说法,不要用in,要用exists代替in,in的性能很低。甚至在程序中使用了in还会被同行嫌弃,认为在任何时候exists的性能都比in高。 小数据量这几个用起来肯定没有太多区别,而要造几百万的数据进行测试,毕竟稍显麻烦。既然所有的大神都这么说,那么就这么信吧。 现在主流的观点认为,外表比...
    2023-09-20 16:45 后端知识
  • JSON字段在不规则数据结构中有重要作用,典型的如自定义字段、自定义表单等。 字段类型达梦达梦8的JSON数据以字符串方式存储,即varchar2,最大长度为8000字节;或clob,最大长度为100G-1字节。 一般建议加上IS JSON约束进行检查: c2 varchar2(100) CONSTRAINT cs_json_c2 CHECK (c2 IS JSON(STRICT)) -- 严格模式 c...
    2023-08-05 10:02 后端知识
  • Spring提供了非常方便使用的RestTemplate,用于访问http/https资源。但在开发调试过程中,我们希望能够看到相关的日志信息。 开启日志修改application.properties文件,加入以下配置: logging.level.org.springframework.web.client.RestTemplate=DEBUG 可以看到类似以下的日志信息: o.s.w.c.RestTemplate - HTTP P...
    2023-05-15 12:19 后端知识
  • 大批量插入、更新数据相当消耗性能,如果采用传统的方式,一条一个事务的插入、更新,速度会慢到让人无法接受。 JDBC批量处理使用JDBC的批量处理功能,可以减少事务的性能消耗。MyBatis Plus的批量操作默认使用这种方式。 其原理是开启JDBC批量处理,并且每1000条SQL语句执行一次sqlSession.flushStatements()。 对于...
    2023-05-12 14:22 后端知识
  • SpringBoot提供了非常方便使用的定时任务功能。同时也支持Quartz。 开启任务调度器@Configuration @EnableScheduling public class SchedulerConfig { } 使用定时任务// 每5秒执行一次 @Scheduled(fixedDelay = 5000) public void doSomething() { // something that should run periodically } // cron...
    2023-05-11 23:02 后端知识
QQ咨询
电话
微信
微信扫码咨询