2020-05-24

1.使用like模糊查询,一直报错,无效的列索引?

首先查Oracle的 v$sql 的预编译执行记录,发现该语句还没到Oracle数据库,即该报错为JAVA的Oracle驱动报错,使用 LIKE (’%’||’?’||’%’)"; 便执行通过。
附上链接:https://blog.csdn.net/qq_36292543/article/details/105165702

2.eclipse代码折叠,类似visualStdio里面功能。
网上搜一下com.cb.eclipse.folding 之类的jar包,放在plugins文件夹里面重启eclipse,Windows→Preference→Java→Editor→Folding 自行设置下就好。

3.linux 系统中使用 ll 命令显示文件的时候,看到文件前面的一些属性,眼熟,但不认识,特意找了下怎么看,遇到记不清了就来这儿点链接看看。
https://blog.csdn.net/LEON1741/article/details/82386520

4.vim中挂死问题的解决(按任何键都没有反应了)
ctrl+q 按此下此快捷键即可解除!意思是”恢复向终端输出”。
原因:
ctrl+s 是”阻断向终端输出”,误按此键即进入挂死状态!此键是windows的文档保存快捷键,windows转来的程序员会很容易就被触发此键
link:https://www.cnblogs.com/chixinfushui/p/8994600.html

5.sql中group by的问题?
查出a表的分组统计结果与b表联合查询
select * from dict
select b.sysnm,b.sysid, b.* from dict b
inner join (select * from a.prosysid,count(a.prosysid)from def a group by a.prosysid)aa on aa.prosysid = b.sysid

6.代码-关于log4j
自己实现监控log4j.xml文件更新,在系统运行过程中,动态修改日志级别。
DOMConfigurator.configureAndWatch(“d:\log4j\log4j.xml”, 5000L);
代码解释:走读Log4j DOMConfigurator类configureAndWatch方法源码,发现只要是调用configureAndWatch()方法,Log4j就会启动一个线程,根据入参delay或者默认的1分钟时间周期扫描指定的log4j.xml文件的更新情况,如果发现有更新则重新加载log4j.xml配置。
链接:https://www.iteye.com/blog/489291468-1895471

7.osgi,Equinox和Eclipse之间的关系?
OSGi 和 Equinox 相当于 JBoss 和 Ejb specification 的关系,或者 Tomcat 和 Servlet Specification 的关系。
eclipse的plugin相当于一个bundle,但并非所有的bundle都是plugin。
广泛使用OSGi和Equinox的典型例子是Eclipse集成开发环境(IDE)。Eclipse被全世界成千上万的软件开发者使用。数以千计的开发者开发bundle来扩展该平台,数以百计的公司基于该平台的功能开发他们的产品。
OSGi 中的一个核心概念是: bundles 。
对于Equinox来说,bundles就是一个自描述型的jar文件,描述如下:


Bundle-SymbolicName: org.eclipse.equinox.registry
Bundle-Version: 3.2.100.v20060918
Bundle-Name: Eclipse Extension Registry
Bundle-Vendor: Eclipse.org

Bundle-ClassPath: .

Bundle-Activator: org.eclipse.core.internal.registry.osgi.Activator

Export-Package: org.eclipse.equinox.registry

Import-Package: javax.xml.parsers,
org.xml.sax,
org.osgi.framework;version=1.3
Require-Bundle: org.eclipse.equinox.common;bundle-version="[3.2.0,4.0.0)"
Bundle-RequiredExecutionEnvironment: CDC-1.0/Foundation-1.0,J2SE-1.3


如果单纯作为一个插件机制,尽管Equinox解决方法很棒,但并没有什么过人之处,最让我感到惊奇的是他的“包容”能力。原文一句话说的好:“There are two main approaches; embedding Equinox in the servlet container or embedding the servlet container inEquinox”。
link:https://blog.csdn.net/iteye_5014/article/details/81420916
link:https://www.ituring.com.cn/book/miniarticle/9988
8.oracle数据库实例(instance)的理解
我举个通俗易懂的例子,虽然不是很恰当,但是对于初学者理解instance和database很有帮助。
我的C:\下放了一个文本文件:example.txt,这是个实际存在的物理文件,现在打开进程管理器,进程管理器中看不到什么和这儿文件有关系的进程。但是当我双击这个文本文件以后,进程管理器中就会出现notepad.exe。我可以通过记事本对example.txt进行操作,比如说添加一些文字进去,或者删除一些文字,然后保存,或者不保存。
在这个例子里,instance就是在进程管理器中能看到的notepad.exe,而数据库就是那个C:\example.txt。
instance是一组进程,还有一块共享的内存区域,database是一组数据文件。而操作系统层级上,notepad.exe就是一个进程,还有给它分配的内存,都能在进程管理器里看到,而C:\example.txt就是实际存在的物理文件
link:https://www.cnblogs.com/wingsless/archive/2011/11/19/2255145.html

8.linux查看进程命令
ps-ef用于查看全格bai式的全部进程,du其中“ps”是在Linux中是查看进程的命令,“-e”参zhi数代dao表显示所有进程,“-f”参数代表全格式
检查java 进程是否存在:ps -ef |grep java
字段含义如下:

UIDPIDPPIDCSTIMETTYTIMECMD
zzw1412413991000:38pts/000:00:00grep --color=auto dae

UID :程序被该 UID 所拥有
PID :就是这个程序的 ID
PPID :则是其上级父程序的ID
C :CPU使用的资源百分比
STIME :系统启动时间
TTY :登入者的终端机位置
TIME :使用掉的CPU时间。
CMD :所下达的是什么指令

9.在遇到包冲突的时候,代码偏偏是古时候的代码,无法知道当前类路径下的具体有哪些jar包?
处理办法:
String p= System.getProperty(“java.class.path”);
String p= System.getProperty(“java.ext.dirs”);
String p= System.getProperty(“java.boot.class.path”);
10.生产上出现错误堆栈日志信息不全,无法定位到具体的出错原因极代码?
try{

}catch(Exception e){
logger.error(“错误”, e);//可以打印完整堆栈信息
logger.info(e.toString());//只能打印出是空指针报错之类的信息
//—————————
StackTraceElement ee = e.getStackTrace();
for(int i = 0; i = ee.length; i++){
logger.info(ee[i].toString());
}

11.find命令:find . -name 文件名
在当前命令下执行的所在的目录下文件

12.学而时习之,不易悦乎:
idea中配置jetty服务器,
Run–>Edit Configurations–Add New Configurations–>Jetty Server–>local
在这个位置类似添加tomcat一样添加就可以了。最后在控制台添加一个快捷的启动入口,创建部署模块,或者工程部署包,把部署包配置在快捷启动入口内。

13.中间业务中的商户与分支商户字段在实际对应中对应的是接入方的公司及子公司。

14.今天在测试jetty内嵌的方式启动的时候,使用的是Test单元测试的方式,后续发现服务并不能启动,结果是服务需要使用main方法来启动。查询原因是main启动的是一个可执行程序,Test单元测试方法之后程序正常顺序执行完了之后结束了。补充一下,也不能开启新的线程来启动程序。

网址:https://www.iteye.com/problems/73085
“main方法就是一个执行程序,本身是开启了线程,执行你的启动jetty的线程。
而junit会顺序往下执行。”
15.重载方法的理解,例如再开发过程中定义了一个loadproject的方法,但是我们在写代码的过程中发现还是需要写一个重载的loadproject的带一个路径的参数方法,这个俩个方法都是用来实现加载项目资源,这个时候我们就需要定义一个但参书loadproject方法。

15.Linux查询当前目录下包含czfs的文件
find . -name czfs -type f
查询当前目录下包含czfs的文件夹
find . -name czfs -type d

16.曾经在部署一个key的text文件到生产环境的时候出现过类似的问题,虽然后面处理了,但是没有确认下来确切的原因 来自廖旭峰的git博客
使用Windows的童鞋要特别注意:

千万不要使用Windows自带的记事本编辑任何文本文件。原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0xefbbbf(十六进制)的字符,你会遇到很多不可思议的问题,比如,网页第一行可能会显示一个“?”,明明正确的程序一编译就报语法错误,等等,都是由记事本的弱智行为带来的。建议你下载Visual Studio Code代替记事本,不但功能强大,而且免费!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值