1.c#的struct的new方法是初始化struct,不是new一个对象,分配内存。
2.swagger出现Failed to load API definition,先看看http://localhost:/swagger/v1/swagger.json,报错原因
3.app.net core web发布到iis报错该页的相关配置数据无效,向服务器安装https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/publish-to-iis?view=aspnetcore-2.2&tabs=visual-studio#browse-the-website,缺失 .NET Core 托管捆绑包
4.mysql和orcal的行级锁区别在于,mysql需要使用索引查询的行才生效,故使用mysql的行级锁应注意使用索引做条件,避免行级锁失效变成表级锁,消耗性能。
5.c#中异步方法使用Task.delay来进行延迟操作,使用thread.sleep会阻塞主线程,导致异步达不到效果
6.oracle将所有表和字段转换为大写,因为进行查询时会自动转换为大写,故为了不报错,将表和字段转为大写
begin
for t in (select table_name tn from sys.all_tables where owner='admin') loop --owner 只匹配当前登录用户所建立的表
begin
for c in (select column_name cn from all_tab_columns where table_name=t.tn) loop --all_tab_columns 中保存所有表中名字为tablename的表字段信息
begin
execute immediate 'alter table "'||t.tn||'" rename column "'||c.cn||'" to '||c.cn;
exception
when others then
dbms_output.put_line(t.tn||'.'||c.cn||'已经存在');
end;
end loop;
execute immediate 'alter table "'||t.tn||'" rename to '||t.tn;
exception
when others then
dbms_output.put_line(t.tn||'已存在');
end;
end loop;
end;
6.JAVAspringboot中 使用map<String,object>返回的列名和数据库一致,使用LIst返回的列名和entityObj属性名一致
7.maven仓库中添加自定义的包jar包
mvn install:install-file -DgroupId=impl -DartifactId=center -Dversion=1.0 -Dpackaging=jar -Dfile=D:\zsxj\data_warehouse\branches\dubbo\CenterService\out\artifacts\Impl\center-1.0.jar
8.springboot中获取session,request等
@Autowired
private HttpSession session;
9.mybatis使用InsertProvider注意,自定义类最终生成的参数顺序要和数据库保持一致,否则可能报无效的类型错误
10.使用URLEncoder,当数据类型为applicaion/x-www-form-urlencoded时,在发送或回复的数据中,含有非字母字符时,使用URLEncoder进行转码发送,接收端再进行解码获取字符串,防止MIME字符串在传输时乱码。
11.使用volatile 较小开支的保证数据在多并发情况下的原子性,可见性。
12.oracle数据库使用max在非interger字段时会出现比较大小错误,使用max(to_number(field))可解决