“ORA-06550: 第 1 行, 第 7 列”解决方法
将本机能正常运行的维修生产日志代码发布到公司内测环境里无法正常运行,报错如下:
execute() - pls–QuartzJob.java–quartzjob 开始执行!
java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列:
PLS-00201: identifier ‘MONITORCHANGEPLS.MCP_ISCHANGE’ must be declared
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3329)
at com.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDaoFastClassByCGLIBFastClassByCGLIBec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.dao.LogEditDaoDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.dao.LogEditDaoEnhancerByCGLIBEnhancerByCGLIBe33f2ad0.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServere33f2ad0.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServerFastClassByCGLIBFastClassByCGLIBa3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxya3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.LogeditServerDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.LogeditServerEnhancerByCGLIBEnhancerByCGLIBf4a0e4fa.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobf4a0e4fa.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobFastClassByCGLIBFastClassByCGLIB29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxy29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.QuartzJobDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)atcom.szair.smartme.productlogsys.service.QuartzJobEnhancerByCGLIBEnhancerByCGLIBc475e8c1.execute()atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.lang.reflect.Method.invoke(Method.java:606)atorg.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)atorg.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanc475e8c1.execute()atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.lang.reflect.Method.invoke(Method.java:606)atorg.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)atorg.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanMethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:311)
at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:113)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
execute() - pls–QuartzJob.java–execute() - 没有更新的数据!
在网上查询资料,有用的建议如下:
1 ,
http://www.th7.cn/program/java/201510/620030.shtml
我自己在做 Oracle 存储过程 结果集 练习时碰到的问题!
我开始是plsql developer 工具建立的存储空间,但是查看属性是 owner 是 sys
但是在java代码中确显示以上错误。
原因是 权限问题 。
解决方法 :把上面这个 存储过程 删掉;然后打开Oracle 自带的 sql plus (用java代码中调用都用户名登陆Oracle 不是sys)把建立存储过程的代码直接粘贴过去,这样你在 执行java代码就OK了!
2,
http://bbs.csdn.net/topics/390100723
2.1 因为包的拥有者和你程序中连接数据库的用户不一。 比如包的拥有者用户为m ,而你程序连接数据库的用户为t.
这样的话t用户是访问不了 m 用户下的包。 需要创建同义词,赋予执行权限.
2.2 我遇到过,是因为数据表与包建立在sysdba权限状态下,所以普通权限访问不了,希望能帮到你
之后我就将oracle数据库中原本我自己新建的那个包及下面的存储过程删除,准备重新新建一个,就在这个过程中,本地程序一直在跑,在删除包还没新建之前,控制台报错:
execute() - pls–QuartzJob.java–quartzjob 开始执行!
java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列:
PLS-00201: identifier ‘MONITORCHANGEPLS.MCP_ISCHANGE’ must be declared
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
at oracle.jdbc.driver.OraclePreparedStatement.__xr__14__executeQuery(OraclePreparedStatement.java:3329)
at sun.reflect.GeneratedMethodAccessor91.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.zeroturnaround.xrebel.runtime.oracle.jdbc.driver.OraclePreparedStatementinv14____xr__14__executeQuery.invoke(OraclePreparedStatementinv14____xr__14__executeQuery.invoke(OraclePreparedStatementinv14____xr__14__executeQuery.java)
at com.zeroturnaround.xrebel.analyzer.XRPreparedStatementSpy.invoke(XRebel:43)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java)
at com.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDao85.doInHibernate(LogEditDao.java:3310)atorg.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)atorg.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:339)atcom.szair.smartme.productlogsys.dao.LogEditDao.getChangeValue(LogEditDao.java:3288)atcom.szair.smartme.productlogsys.dao.LogEditDaoFastClassByCGLIBFastClassByCGLIBec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyec6980fb.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.dao.LogEditDaoDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.dao.LogEditDaoEnhancerByCGLIBEnhancerByCGLIB7c34ab1d.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServer7c34ab1d.getChangeValue()atcom.szair.smartme.productlogsys.service.LogeditServer.getChangeValue(LogeditServer.java:1224)atcom.szair.smartme.productlogsys.service.LogeditServerFastClassByCGLIBFastClassByCGLIBa3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxya3f1c07d.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.LogeditServerDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.LogeditServerEnhancerByCGLIBEnhancerByCGLIB4258661f.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJob4258661f.getChangeValue()atcom.szair.smartme.productlogsys.service.QuartzJob.execute(QuartzJob.java:60)atcom.szair.smartme.productlogsys.service.QuartzJobFastClassByCGLIBFastClassByCGLIB29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxy29dcb96e.invoke()atnet.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)atorg.springframework.aop.framework.Cglib2AopProxyCglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:692)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxyDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.QuartzJobDynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)atcom.szair.smartme.productlogsys.service.QuartzJobEnhancerByCGLIBEnhancerByCGLIB41170d0.execute()
at sun.reflect.GeneratedMethodAccessor123.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean41170d0.execute() at sun.reflect.GeneratedMethodAccessor123.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.__invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273) at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBeanMethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264)
at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
execute() - pls–QuartzJob.java–execute() - 没有更新的数据!
对比可以发现,两者报的错几乎是一样,说明测试环境里报错就是因为无法访问到数据库里的包及下面的存储过程。
最后经检查,发现测试环境里的datasource设置的用户名和本机不一致,所以才访问不到其他账号建立的存储过程。本机配置是前几天才从测试库上down下来的,谁知道没几天就被别人改了,而且还没被告知,以后需小心。
“ORA-06550: 第 1 行, 第 7 列”解决方法的更多相关文章
- Oracle 多行变一列的方法
多行变一列的方法有很多,觉得这个第一眼看懂了当时就用的这个办法. 情况是这样的.以下数据前几列是一样的,需要把VAT_VALUE_CHAR 的值放在同一行上. SELECT * FROM ps_vat ...
- Mysql命令行中文乱码的解决方法
环境:Windows 8 64位,Mysql 5.0.96 for Win64 (x86) 数据库本身安装时默认已经是使用utf8编码的了,但在命令行中执行查询时,查询到的中文依然乱码,解决方法如下 ...
- 使用 vi/vim 时,粘贴进新创建文件或空文件的首行内容丢失的解决方法
只需要进入插入模式后,回车空一行或几行,再粘贴,再把上面的几个空行back回去,就不会丢失首行的内容了.
- [No000018E]Vim快速跳转任意行、任意列以及高亮显示当前行、当前列方法-Vim使用技巧(3)
vim提供了丰富的快速跳转任意行.任意列的方法,方便高效地移动光标,定位文件位置. 一.Vim行跳转 使用vim查看文件时,使用以下命令可以快速跳转文件首.尾行,方便对整个文件有个全局把握. 1.1 ...
- SQL Server创建表超出行最大限制解决方法
问题的现象在创建表A的时候,出现“信息 511,级别 16,状态 1,第 5 行 无法创建大小为 的行,该值大于允许的最大值 8060.”的信息提示.很奇怪,网上查了一下,是因为要插入表的数据类型的 ...
- 如何获取ResultSet的行数和列数
当我们执行数据库查询返回一个ResultSet的时候,很多情况下我们需要知道这个ResultSet的大小,即它的行数和列数.我们知道它的列数可以通过resultSet.getMetaData().ge ...
- MYSQL 多行转多列
mysql 行变列(多行变成一行/多行合并成一行/多行合并成多列/合并行),我觉得这都是一个意思 数据库结构如图: 而我想让同一个人的不同成绩变成此人在这一行不同列上显示出来,此时分为2中展现: 第一 ...
- LayoutControl让一个控件占据多行或者多列
拖动一个layoutcontrol到form上之后,会自动附带一个layoutgroup 设置layoutgroup的layoutmode为table 设置layoutgroup的OptionsTab ...
- StringGrid 实例2:1、获取 StringGrid 的行数、列数; 2、给单元赋值.
实例2: 本例功能: 1.获取 StringGrid 的行数.列数; 2.给单元赋值. 运行效果图:
随机推荐
- 小纪a
感觉挺好的两段代码:虽然已经存在,但是这是我自己敲出来的,没有照抄,真心话,所以记录下来. 1.菱形代码: #include <stdio.h>void main() { int i, j ...
- jQuery中prop和attr区别
问题 今天给一个button加onclick事件,由于最后button根据需要转成字符串,因此不能使用jQurey.click(),只能给button添加onclick属性的方式. 于是,$butto ...
- NPM安装步骤
一.使用之前,我们先来掌握3个东西是用来干什么的. npm: Nodejs下的包管理器. webpack: 它主要的用途是通过CommonJS的语法把所有浏览器端需要发布的静态资源做相应的准备,比如资 ...
- Nginx:论高并发,在座各位都是渣渣
NGINX 在网络应用中表现超群,在于其独特的设计.许多网络或应用服务器大都是基于线程或者进程的简单框架,NGINX突出的地方就在于其成熟的事件驱动框架,它能应对现代硬件上成千上万的并发连接. NGI ...
- windows下常用的几个批处理脚本
1.windows下对比两个文件内容,有差异则执行一个任务: 适用场景:比如你的数据库备份结果的日志每天会形成一个文件,如下图,你可以通过此脚本检测到文件的变化,并执行发送告警邮件通知你数据库备份异常 ...
- kali linux web程序集简述
Burp Suite Burp Suite是一个用于执行Web应用程序安全性测试的集成平台. 它的各种工具可以无缝地协同工作,支持整个测试过程,从应用程序攻击面的初始映射和分析,到查找和利用安全漏洞. ...
- How to install Maven on Windows
To install Apache Maven on Windows, you just need to download the Maven’s zip file, and Unzip it to ...
- PKM(个人知识管理)类软件收集(偶尔更新列表)
evernote(印象笔记) Wiz 有道云 麦库 leanote GoogleKeep OneNote SimpleNote(wp家的,免费) pocket(稍后读的软件,同类的还有Instapap ...
- [转] J2EE基础知识
Servlet总结 阐述Servlet和CGI的区别? CGI的不足之处: Servlet的优点: Servlet接口中有哪些方法及Servlet生命周期探秘 get和post请求的区别 什么情况下调 ...
- SSM项目开发中的实体定义以及MySQL表格设计
话不多说,下面表格是项目开发中用到的实体集以及表格Name 实体创建 表格创建 Area 区域 Area 实体 areaId areaName priority createTime last ...