1. Linux ssh 多机配置无法连接的问题解决方法
折腾了半天操作步骤一直没有问题,但是就是用ssh连接另一台机器时还是需要输入密码
后来上网查找了一下,该问题是由于$home路径的权限必须是700,而我当前的目录的权限是775,所以就遇到了问题,这问题太囧了,细节决定成败啊。
下面是解决方法:
chmod 700 /home/nutch
这是我要进行连接ssh用户的根目录(nutch)
2. linux下不重启使/etc/profile环境变量生效
source /etc/profile (全局的)
source ~/.bash_profile (个人的)
3. vmware nat service 自动停止解决方法
右键->我的电脑->服务->
Vmware nat service 的“自动”改为“手动”,并启动服务,启动后,状态就是上面图显示的已启动,手动
4. linux 关机命令
1)shutdown –help
可以查看shutdown命令如何使用,当然也可以使用man shutdown命令。
2) shutdown -h now 现在立即关机
3)shutdown -r now 现在立即重启
4)shutdown -r +3 三分钟后重启
5)shutdown -h +3 “The System will shutdown after 3 minutes” 提示使用者将在三分钟后关机
6)shutdown -r 20:23 在20:23时将重启计算机
7)shutdown -r 20:23 & 可以将在20:23时重启的任务放到后台去,用户可以继续操作终端
5. linux su 切换用户错误解决办法
用su 切换用户时,报出如下错误:当前用户不可用
This account is currently not available
解决办法:
用root用户执行下列命令:
viw /etc/passwd
打开后,看到如下内容:
rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin
named:x:25:25:Named:/var/named:/sbin/nologin
mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin
后面的内容都是/sbin/nologin
我们需要把/sbin/nologin修改为“/bin/bash”就可以了
如:apache:x:48:48:Apache:/var/www:/bin/bash
6. mod_jk版本错误导致apache 启动失败解决方法
重启apache时
如果出现:
启动 httpd:Syntax error on line 2 of /usr/local/apache2/conf/mod_jk.conf:
Cannot load /etc/httpd/modules/mod_jk.so into server: /etc/httpd/modules/mod_jk.so: invalid ELF header
则说明mod_jk.so的版本错误.
从http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries下载指定的mod_jk,注意版本:
选择你的操作系统类型,我的是linux,进入后:
因为我的是apache2.2.3所以,我进入了jk-1.2.31
进入后,选择你操作系统的类型,我的服务器版本是64位的所以选择x86_64
然后我的apache版本是2.2.3的所有就选择红框内的
7. tomcat6报 jar not loaded错误解决方法
当启动tomcat6时,如果报了如下错误:
validateJarFile(/usr/file/tomcat6/webapps/eclass/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
是由于eclass项目中lib下的servlet-api.jar和tomcat 的lib下的servlet-api.jar包冲突了,所以报了如上错误,解决方法是把webapps下的项目中的lib下的servlet-api.jar包删除掉就可以了
8. Oracle 11无法连接dba
当通过oracle 用户 执行命令时:
Sqlplus ‘/as sysdba’
然后报了如下错误:
ERROR:
ORA-12705: Cannot access NLS data files or invalid environment specified
查找一下环境变量中是否有
NLS_LANG="AMERICAN_AMERICA.UTF-8"
export NLS_LANG
这样的内容,然后删掉
删掉后
执行
Source /etc/profile
或
source ~/.bash_profile
才可以生效
9. ORA-0195错误解决
ORA-01950: 对表空间zy无权限;
ORA-01950错误分析
用户没有resource权限。
添加用户的resouce 角色即可
10. ORA-00942: 表或视图不存在 hibernate 解决方法
当你用hibernate执行查询方法时,如果报了如下错误:
ORA-00942: 表或视图不存在
是因为hbm文件里面的配置出现了问题
<class name="com.jdodrc.pt.vo.TPtUserWeiboShare" table="T_PT_USER_WEIBO_SHARE" schema="SAA">
schema="SAA"只要删除这个就可以了,这个是指定的是表空间,由于数据库迁移了,所以表空间不对了,所以就会出现错误了
所以删除掉这句就好了schema="SAA"
11. 配置oracle的权限
配置一般的oracle用户,配置
CONNECT
RESOURCE
这2个角色
CREATE SESSION
这个系统权限
然后配置一些对象权限
12. 动态执行表不可访问,本会话的自动统计被禁止"错误解决
最近做统计报表的时候使用PL/SQL,但是每次第一次打开表的时候会提示"动态执行表不可访问,本会话的自动统计被禁止"的错误,一消息如下: V$SESSION,V$SESSTAT,V$STATNAME没有被授权,没有权限访问这几张表,所以没有办法进行统计.当然要给授权了.授权SQL如下:
用sys登陆后,执行下列语句
grant select on v_$statname to user;
grant select on v_$sesstat to user;
grant select on v_$session to user;
grant select on v_$mystat to user;
user就是要被授权的用户名.记下以备后用.
13. FCKeditor:上传图片The server didn 't send back a proper XML response
下载xalan-j_2_7_0-bin-2jars.zip这个包
然后将serializer.jar 和 xalan.jar这2个文件copy到应用的lib下
14. FCKeditor fileupload Error on file upload.Error number:203分析解决
还发现了个问题,这个编辑器的上传功能和webwork的某个过滤器会发生冲突,在web.xml中加载webwork的过滤器后编辑器的上传功能就不能用了,我试了下,删除webwork的fileupload过滤器情况依旧,删除webwork的全部过滤器就没问题了,不知道和哪个过滤器发生冲突了,还因为它不能直接上传其他类型的文件,后来就干脆不用它的文件上传功能了,提供了一个统一的文件上传功能
如果你和我一样使用的struts2进行项目开发的话,你会发现当上传文件时会出现 “Error on file upload. Error number:203”的错误提示。这是因为fck与struts2框架不兼容,struts2转发了fck的servlet。
解决办法:在web.xml中修改struts2的filter-mapping
Java代码
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
修改成
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
如果还有其他url映射也可以添加到filter-mapping中去。
说明:webwork框架中出现此类问题同理。
15. Oracle使用clob字段
在配置文件中加入红色标注的行
<prop key="hibernate.connection.SetBigStringTryClob">true</prop>
在sessionFactory的bean中加入该内容
然后再vo的.hbm.xml中的clob字段将type定义为text类型
<property name="edmContent" type="text">
<column name="EDM_CONTENT" />
</property>
然后再po中,将clob的字段定义为String 类型就可以了
16. 少codec包解决方法
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
出现如上错误如下进行解决:
网络编程HttpClient 要一个包commons-codec-1.x.jar
你可以从这个地址http://commons.apache.org/downloads/download_codec.cgi 下载到最新的 common codec
17. Httpclicent post乱码解决方法
HttpClient httpClient = new HttpClient();
httpClient.getParams().setParameter(
HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8");
18. 使用servlet filter后多次加载一个url的解决方法
当你加载上过滤器后,你查看是否会出现一个页面同时加载了多次;
这样的现象很头大,有时候不容易发现,但是这是由什么引起的呢?
查看一下你的filter中的这句话
filterChain.doFilter(request, response);
是否出现了多次(执行了多次)
如果执行多次则会出现上面的问题,那么将这个做判断,一次拦截中只出现一次即可。
当调用2次filterChain.doFilter(request, response);该方法后,将会出现如下错误
java.lang.IllegalStateException
还是和上面的解决方法一样。
19. JDK AES加密,在linux下无法解密的解决方法
现象描述:
windows上加解密正常,linux上加密正常,解密时发生如下异常:
javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
at com.sun.crypto.provider.AESCipher.engineDoFinal(DashoA13*..)
at javax.crypto.Cipher.doFinal(DashoA13*..)
at chb.test.crypto.AESUtils.crypt(AESUtils.java:386)
at chb.test.crypto.AESUtils.AesDecrypt(AESUtils.java:254)
at chb.test.crypto.AESUtils.main(AESUtils.java:40)
解决方法:
经过检查之后,定位在生成KEY的方法上,如下:
KeyGenerator kgen = KeyGenerator.getInstance("AES"); //AES加密,创建密钥生成器,定义它的算法
kgen.init(128, new SecureRandom(password.getBytes())); //使用已创建的随机源初始化密钥生成器
修改到如下方式,问题解决:
KeyGenerator kgen = KeyGenerator.getInstance("AES"); //AES加密,创建密钥生成器,定义它的算法
SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG" );
secureRandom.setSeed(password.getBytes());
kgen.init(128,secureRandom); //使用已创建的随机源初始化密钥生成器
红色加粗处是修改后的内容
原因分析
SecureRandom 实现完全隨操作系统本身的內部狀態,除非調用方在調用 getInstance 方法之後又調用了 setSeed 方法;该实现在 windows 上每次生成的 key 都相同,但是在 solaris 或部分 linux 系统上则不同。
20. 通过request获取完整的uri(带参数)
String uri=hsr.getRequestURI();
//获取完整路径+参数
String query=hsr.getQueryString();
if(query!=null){
uri+="?"+query;
}
获取到完整的uri(但是没有参数)
String uri=hsr.getRequestURI();
获取到请求的完整的参数
String query=hsr.getQueryString();
如果参数不为空,则将uri连接上参数形成完整的uri地址
if(query!=null){
uri+="?"+query;
}
21. Linux下dir无法使用解决方法
当执行dir时,报了如下错误:
-bash: /usr/bin/dir: /lib/ld-linux.so.2: bad ELF interpreter:
因为我移动文件时移动错了,将根目录下的lib移动到其他位置了
然后再将lib移动回根目录即可
注:
移动lib时一定要注意前面的是否是/lib(根目录),否则出现问题后很郁闷的
22. 启动apache 报错
D:\Program Files (x86)\Apache2.2\bin>httpd.exe
httpd.exe: Could not reliably determine the server's fully qualified domain name
, using 192.168.0.127 for ServerName
(OS 10013)以一种访问权限不允许的方式做了一个访问套接字的尝试。 : make_sock: cou
ld not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
报上面错误是由于80端口冲突,所以修改apache端口就好了
23. apache出现You don't have permission to access / on this server. 提示
打开浏览器后提示403:
You don't have permission to access / on this server.
解决方法:
将httpd.conf的内容:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
修改为
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
24. Apache 禁止index of/
在httpd.conf中找到如下内容:
<Directory />
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
将上面的Indexes删除即可
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
25. Filter用out.print加js跳转不管用的解决方法
在filter中将未登陆的按照如下方式跳转:
// 未登录,跳转到登录页
PrintWriter out = response.getWriter();
out.print("<script>window.top.location.href='"
+ hsr.getContextPath() + "/front/login.jsp';</script>");
但是当执行filter跳转时出现了问题,跳转到页面时,没有达到预期的效果,出现下面的状况:
url已被拦截,但是却没有达到预期效果跳到指定页面;
那么我们同firefox 的debug看 一下它的content-type
这里不是text/html
因为我们在执行输出时没有设定content-type
所以我们将过滤器输出的前面修改一下:
加上一行:
response.setContentType("text/html;charset=UTF-8");
下面是完整代码:
// 未登录,跳转到登录页
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.print("<script>window.top.location.href='"
+ hsr.getContextPath() + "/front/login.jsp';</script>");
设置好后,然后再试验后,可以进行成功跳转了
所以在进行write.print时一定要注意设置content-type这里一定要注意,否则有时候找这样的问题郁闷死
26. Tomcat 性能优化
加大tomcat连接数:
在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。
web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。
27. java.net.SocketException: Too many open files解决方法
linux下tomcat 部署后,下载文件一段时间后总是报如下错误:
java.net.SocketException: Too many open files
windows下是没有问题的,linux对进程的打开文件数是有限制的。
用命令ulimit -a查看
[root@test security]# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 7168
virtual memory (kbytes, -v) unlimited
[root@test security]#
通过以上命令,我们可以看到open files 的最大数为1024
对于并发量比较大的网站这个限制是有些捉襟见肘的,所以我通过这个命令
ulimit -n 4096
把打开文件数的上限设为了4096,这下好了,项目又稳定了
但是重新登陆后,用ulimit -n 4096 设置的值貌似会变回去,所以需要永久设置open files 的值才行啊
所以换下面的方式试试:
用ulimit -n 修改open files 总是不能保持。所以用下面一个简单的办法更好些。
修改/etc/security/limits.conf 添加如下一行:
* - nofile 1006154
修改/etc/pam.d/login添加如下一行
session required /lib/security/pam_limits.so
还有更重要的就是在对于io进行操作时,需要注意对于流的关闭
28. Spring 定时器执行2次解决方法(tomcat)
当执行spring 定时器时,在tomcat中执行了2次
什么问题呢?
因为在server.xml中:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="/usr/file/tomcat6/webapps/point" debug="0" reloadable="true" crossContext="true"/>
这里appbase=”webapps”,然后下面有配置了
<Context path="" docBase="/usr/file/tomcat6/webapps/point" debug="0" reloadable="true" crossContext="true"/>
由于point在webapps下,所以就执行了2次
解决方法如下
将appbase=””设置为空就可以了
29. 将字符串格式日期转为date
将字符串格式为:Wed Sep 14 14:39:57 CST 2011转为date 方式如下:
java.util.Date da=new java.util.Date("Wed Sep 14 14:39:57 CST 2011 ");
30. hibernate 手动设置生成方式
hibernate 通过注入id的方式手动设置主键方式
在.hbm.xml配置文件中
<id name="id" type="java.lang.String">
<column name="ID" />
<generator class="assigned" />
</id>
将主键的方式设置为assigned就可以了
<generator class="assigned" />
31. Svn启动方法
用 svn 用户进入到svn的目录的bin下
[svnuser@jdodrc bin]$ sh csvn
Usage: csvn { console | start | stop | restart | condrestart | status | install | remove | dump }
执行csvn后,有这么多命令可以执行
那么我们执行一个start和console就可以了
Start是启动svn服务
[svnuser@jdodrc bin]$ sh csvn start
Console是启动csvn的控制台
[svnuser@jdodrc bin]$ sh csvn console
32. Outlook 2007服务器保留副本
工具——账户——邮件,选择你要保留的那个邮件地址,点属性——高级,在最下边有一项在服务器上保留邮件副本,在前面点上勾,点击确定就行了。
33. Java 查看当前文件位置
File directory = new File("");//设定为当前文件夹
try{
System.out.println(directory.getCanonicalPath());//获取标准的路径
System.out.println(directory.getAbsolutePath());//获取绝对路径
}catch(Exceptin e){}
34. Java 对象复制
String a[]={"1","2"};
String b[]={};
a[0]="3";
b=a;
a[0]="4";
String c[]=a;
System.out.println(b);
System.out.println(c);
这里更改内容后,最后输出的结果为:
[Ljava.lang.String;@de6ced
[Ljava.lang.String;@de6ced
可以看出b,c 是一样的对象,
下面我们在b=a.clone();这样进行对象复制后试一下
String a[]={"1","2"};
String b[]={};
a[0]="3";
b=a.clone();
a[0]="4";
String c[]=a.clone();
System.out.println(b);
System.out.println(c);
输出结果为:
[Ljava.lang.String;@de6ced
[Ljava.lang.String;@c17164
可以看出b,c是2个不同的对象
然后看一下输出更新的内容:
System.out.println(b[0]);
System.out.println(c[0]);
是:
3
4
也进行更新了,所以对于对象的复制用
对象.clone()
35. 读取txt内容
private void read(FileInputStream fs) throws IOException{
StringBuffer sb = new StringBuffer();
BufferedReader br =new BufferedReader(new InputStreamReader(fs));
String s=null;
while((s=br.readLine()) != null)
{
sb.append(s);
}
System.out.println(sb.toString());
}
36. Eclipse 调整字体大小
General-->Appearance-->Colors and Fonts-->Basic-->Text Font
37. Mysql 高效sql分页
下面是关于mysql中如何写出更高效的分页SQL的具体例子及简单的对比分析,推荐使用下文所提到的“优化写法”!
1、优化写法: (先根据过滤条件取出主键id进行排序,再进行join操作取出其他相关字段)
select t.id, t.thread_id, t.group_id, t.deleted, t.author_id,t.author_nick, t.author_ip,
t.content, t.last_modified, t.gmt_create, t.gmt_modified, t.floor, t.reply, t.reply_time from
(select id from group_thread_reply_0029 where thread_id = 771025 and deleted = 0 order by gmt_create asc limit 0, 15) a,group_thread_reply_0029 t where a.id = t.id;
38. myEclipse更新web项目名称后,部署名与项目名称不一样解决方法
更新WEB项目名称后,部署到TOMCAT上名称与项目名称不一样,解决方法如下:
右键项目->properties
然后打开下图,修改红框位置的名称与项目名称一致后,再部署到tomcat,项目名称和部署后的项目名称就一致了
39. An internal error occurred during “Generating Artifacts”解决方法
当通过myEclipse反向生成VO时,myEclipse报了如下错误:
解决方法如下:
打开项目的目录,然后打开.project文件
找到如下内容:
<natures>
<nature>com.genuitec.eclipse.hibernate.hibernatenature</nature>
<nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature>
<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
然后删掉
<nature>com.genuitec.eclipse.hibernate.hibernatenature</nature>
这句话,保存.project文件,然后刷新myEclipse的项目
40. Vmware 安装ghost xp无法安装解决方法
在虚拟机中安装ghost 版的xp时会安装不上,是因为虚拟机中的磁盘没有进行分区,所以需要先进行分区才可以进行安装。
然后点击add hibernate capabilities添加hibernate支持,添加完hibernate支持后再进行反向工程则没有问题。
41. ftp主动模式
leapftp主动模式
选择图片内红框的形式就可以
42. Linux 修改默认路径
vi /etc/passwd
类似:
guest:x:502:502::/ftp/guest:/bin/bash
43. IE浏览器兼容性问题解决
在页面中,由于IE有8、9,但是默认都不是兼容模式,在你的页面中加入下列语句,将内容兼容到IE7模式,那么浏览器则默认兼容模式为IE7
<META content="IE=7.0000" http-equiv="X-UA-Compatible"/>
44. 获取媒体文件播放时间等信息
String filePath = request.getParameter("filePath");
//String webRoot = request.getSession().getServletContext().getRealPath("/");
File file = new File(filePath);
//取铃声名称,不包含扩展名
String name = file.getName().substring(0, file.getName().length()-4);
AudioFileFormat af = AudioSystem.getAudioFileFormat(file);
//获取mp3码率
int bitRate = (Integer)af.properties().get("mp3.bitrate.nominal.bps");
bitRate = bitRate / 1000;
//获取播放时间
Long duration = (Long)af.properties().get("duration");
duration = duration / 1000000;
//获取文件大小
Integer bytes = (Integer) af.properties().get("mp3.length.bytes");
Double fileSize = bytes /(1024.0*1024.0);
DecimalFormat df = new DecimalFormat("#.00");
fileSize = Double.parseDouble(df.format(fileSize));
45. 不匹配某个单词的正则表达式
^((?!^baidu$).)*$
比如上面是不为baidu的则全部为真
46. 匹配不是某个网址(如baidu)
^((?!^http://([a-z0-9]*\.)*baidu\.com$).)*$
比如匹配http://baidu.com(除了baidu都可以)
47. Eclipse @override 报错解决
在eclipse中报错@override,解决方法是
Properties-->java Compiler-->Compiler Compliance Level 调整为6.0就ok了
下面标红框位置即是:
myEclipse9.0
48. JCONSOLE测试工具连接失败本地进程解决方法
-Djava.rmi.server.hostname=192.168.1.80
-Dcom.sun.management.jmxremote.port=8089
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
在JAVA的执行参数中配置上如上内容即可
-Djava.rmi.server.hostname 这个是机器IP
-Dcom.sun.management.jmxremote.port 是jconsole的端口
-Dcom.sun.management.jmxremote.ssl是否需要SSL连接
-Dcom.sun.management.jmxremote.authenticate是否密码链接
如果需要监测TOMCAT,需要在catalina.sh或者catalina.bat加上如上参数,上面的端口是监测端口,所以在监测时输入IP和端口即可监测(端口是上面配置的端口)
49. Eclipse 自动提示功能(.不起作用)解决方法
在Eclipse中的 Window -> Preferences -> Java -> Editor -> Content Assist -> Advanced
里的「Select the proposal kinds contained in the 'default' content assist list」把「Other Java Proposals」选择打勾后,应用就可以解决这个问题了。
50. Alt+/ 不管是eclipse解决方法
1、Eclipse下进入Windows ->Preperences ->General ->keys
2、把word completion的快捷键设置alt+/删掉!
3、把Content Assist的快捷键由ctrl+space改成alt+/
51. could not create the java virtual machine 在eclipse启动时报错,解决方法
当启动myeclipse时,报了如下错误:
could not create the java virtual machine
在myEclipse下的eclipse目录下找到eclipse.ini文件打开
然后将如下2个值相应改小即可;
-XX:PermSize=64M
-XX:MaxPermSize=128M
52. java.sql.SQLException: Parameter index out of range (0 < 1 ).错误解决方法
当用JDBC操作数据库时,报了如下错误:
java.sql.SQLException: Parameter index out of range (0 < 1 ).
是因为索引越界了
JDBC这块的索引是从1开始,不是0,所以需要注意
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, "xxxxx");
ps.setString(2, "2012-03-31");
53. mysql timestamp格式保存方法
时间类型保存直接用
ps.setString(2, "2012-03-31");
的string 方式保存即可
54. JDBC级联插入
JDBC A表进行插入后,
通过select LAST_INSERT_ID()
SQL语句获取到刚刚插入的ID,然后再插入到B表等,如果中间抛出了异常的话,那么回滚即可
55. Eclipse无法进行hibernate逆向生成解决方法
在进行hibernate逆向生成映像文件时,报如下错误时:
An internal error occurred during: "Generating Artifacts".
com/mysql/jdbc/DatabaseMetaData$5
因为我们在添加hibernate支持时,在我们的项目下有了2种hibernate包,所以才有了版本不同,所以需要去除一种就可以了。
56. Mysql 日期格式化
DATE_FORMAT(g.createTime,'%Y-%m-%d')
57. Spring 报如下错误解决方法:
除去properites文件路径错误、拼写错误外,出现"Could not resolve placeholder"很有可能是使用了多个PropertyPlaceholderConfigurer或者多个<context:property-placeholder>的原因。
比如在spring 配置文件中配置了如下2个properties
<context:property-placeholder location="classpath:jdbc.properties" />
<context:property-placeholder location="classpath:config.properties" />
那么肯定会报上面的错。
Spring 3.0解决方法:
在content标签内加入:ignore-unresolvable="true"即可,举例如下:
<context:property-placeholder location="classpath:jdbc.properties" ignore-unresolvable="true" />
<context:property-placeholder location="classpath:config.properties" ignore-unresolvable="true" />
这样就没有问题了,那么我们为什么要引入这些properties呢,因为这样我们可以配置参数等信息,如JDBC参数配置:
<property name="driverClass" value="${jdbc.driverClassName}" />
58. 启动tomcat 无法启动解决方法
当启动tomcat报如下错误时:
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
当报如上错误时,在
Tomcat 的bin目录下catalina.bat(windows)或catalina.sh(linux)中添加上
JAVA_HOME和JRE_HOME 2个环境变量
如果是windows用 set ,如果是linux用export
例如:
Set JRE_HOME
Set JAVA_HOME
或
Export JAVA_HOME
Export JRE_HOME
59. Putty Vi 乱码解决方法
选择UTF-8
然后再这里输入地址保存即可
修改为UTF-8 VI 可解决乱码,但是提示却是乱码,所以这里需要设置为2种即可。
60. Vi 跳转到指定行
按:12
则跳转到12行
61. Vi 显示行号
:set nu
62. Vi 去掉高亮
设置了高亮搜索(:set hlsearch)以后,可以通过 :set nohlsearch 永久地关闭高亮
显示,也可以通过 :nohlsearch 暂时关闭高亮显示,下次搜索时将自动恢复高亮。
63. An error occurred at line: 23 in the generated java file解决方法
当启动tomcat后,执行JSP,报了如下错误:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 23 in the generated java file
The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory
那么是包冲突所致,我这里面是jsp-api.jar和jsp-api 2.0.jar冲突,删除项目中的jsp-api 2.0.jar即可解决问题。
64. Eclipse 增加alt+/ 提示
Window->preferences->keys
查找到alt+/ 是word completion 将它改为其他的快捷键
然后查找content Assist ,然后将它的快捷键改为alt+/即可进行提示
相关推荐
Tomcat与java web 开发技术详解-孙卫琴-第二版
JAVA web开发技术教程源码 张娜主编 供同学们参考使用。
Java Web整合开发与项目实战--JSP、Ajax、Struts、Hibernate、Spring(源代码).part2
《深入体验Java+Web开发内幕-高级特性》是张孝祥先生的一本深入解析Java与Web开发技术的著作,尤其关注高级特性的实践与理解。这本书对于那些希望提升Java和Web开发技能的专业人士来说,是一份宝贵的资源。下面将...
深入体验JAVA Web开发内幕-核心基础
深入体验JAVA Web开发内幕-核心基础(共7个压缩包)
Java Web开发流程图--适合刚学Web开发的人员 Java Web开发流程图是一种总体的开发思路,涵盖了从View层到数据库的整个开发过程。下面是对Java Web开发流程图的详细解释: 一、View层 View层是Web开发的最前端,也...
在本Java Web项目开发案例——航空订票系统中,我们将深入探讨如何利用Java技术栈构建一个功能完善的在线订票平台。对于初学者来说,这样的项目不仅有助于理解Web开发的基本概念,还能提供实践经验,提升实际编程...
《Tomcat与Java Web开发技术详解(第2版)》结合最新的Tomcat 6版本,详细介绍了开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方...
【Java Web接口开发】是Web应用程序开发中的一个重要环节,它允许不同的系统或客户端通过网络进行数据交互。在Java世界中,实现Web接口通常涉及到Servlet、JSP、Spring MVC或者RESTful API等技术。本示例"java web...
在本Java Web项目开发案例——“仓库管理系统”中,我们将深入探讨如何利用Java技术栈构建一个实际的企业级应用。此项目对于初学者来说是一个宝贵的实践平台,它将理论与实践相结合,有助于提升开发者在Java Web领域...
Tomcat与java web 开发技术详解-
《Java Web开发实战1200例(第2卷)》以开发人员在项目开发中经常遇到的问题和必须掌握的技术为核心,介绍了应用Java Web进行程序开发的各个方面的知识和技巧,主要内容包括流行组件应用、数据库应用、图表统计、Ajax...
《Tomcat与Java Web开发技术详解(第2版)》是一本深入探讨Java Web应用程序部署和运行环境的权威指南。本书主要围绕Apache Tomcat服务器展开,涵盖了从基础概念到高级特性的全方位讲解,旨在帮助读者掌握Java Web...
java实现导出excel表 - Java - Web 开发.mhtjava实现导出excel表 - Java - Web 开发.mht
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
Java Web整合开发是构建Web应用程序的关键技术,涵盖了Java语言、Eclipse集成开发环境(IDE)、Struts 2框架以及Ajax异步JavaScript和XML技术。这个主题深入探讨了这些技术如何协同工作,创建出高效、用户友好的Web...
《Tomcat与Java Web开发技术详解》第二版是一本深入探讨如何使用Apache Tomcat服务器进行Java Web应用程序开发的专业书籍。作者孙卫琴以其丰富的教学和实践经验,为读者提供了全面而细致的技术指南。这本书的配套...
Sun官方提供的纯Java的SIP开发包(JAIN-SIP-API-1.2.jar) 提供黑莓(Blackberry),塞班(Symbian)等移动平台的SIP开发。