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转发了fckservlet。 
解决办法:在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+/即可进行提示

java web 开发问题总结 1 原创-胡志广相关推荐

  1. java web 开发问题总结 5 原创-胡志广

    181 myEclipse插件菜单 add hibernate capabilities 不可用的解决办法" 用myEclipse搭建hibernate框架后,有时搞乱了某些东西后,又想重新 ...

  2. hiphop 2.1 开发问题总结 原创-胡志广

    1.  Hhvm2.1 生成扩展文件方式 Hhvm2.1 的结构化变化比较大,idl的目录放到了$HPHP_HOME/hphp/system/idl下,并且他的格式已经换成了xxx.idl.json ...

  3. linux 总结 原创-胡志广

    1.   ps  监视进程 ps aux USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND root   ...

  4. Java WEB开发实战 之 第二部分:Web应用基础知识【私塾在线原创】

    基础知识概述 Internet 中文名也称"因特网"或"国际互联网",是一个由各种独立运行和管理的计算机网络组成的全球范围的计算机网络,网络间可以畅通无阻地交换 ...

  5. 名师讲坛——Java Web开发实战经典基础篇(JSP、Servlet、Struts、Ajax)

    [书名]<名师讲坛--Java Web开发实战经典基础篇(JSP.Servlet.Struts.Ajax)> [作者]李兴华.王月清 [ISBN]9787302231585 ­}:YKf: ...

  6. java web开发初学_2018年学习Web开发的绝对初学者指南

    java web开发初学 This post was originally published on Coder-Coder.com. 该帖子最初发布在Coder-Coder.com上 . If yo ...

  7. Java Web开发API Boy如何进阶?

    导语 | Java Web后台开发基本都离不开Spring生态这一套,Spring框架功能极其强大,会帮忙做许多工作,我们通常只需要在一个函数(包含request和response两个入参)中写处理逻 ...

  8. Java框架JSON-RPC项目demo代码实战 + JAVA WEB配置虚拟目录(转自21天java web开发)

    Java框架JSON-RPC项目demo代码实战 备注  JAVA WEB配置虚拟目录(转自21天java web开发) https://blog.csdn.net/wjxbj/article/det ...

  9. [Java Web整合开发王者归来·刘京华] 1、 Java Web开发

    目录: 1.Web技术简介 2.动态网站与静态网站 3.Java Web开发模式 4.JavaScript简介 1.Web技术简介 PS: 最近还有更凶残的技术,即整个操作系统都是基于Web的,如火狐 ...

最新文章

  1. Androidx FloatingActionButton 中间图片颜色值修改
  2. docker-registry的定制和性能分析
  3. #Sora#OpenStack基础库oslo.config试用总结
  4. [转载] 百科全说——王晓斋:解析中西医应对肝肾问题(10-10-12)
  5. 【机器学习】GitHub 标星17.4K:机器学习 100 天!
  6. android 模拟器Genymotion的安装和使用
  7. Angular 依赖注入学习笔记之工厂函数的用法
  8. Linq to Sql : 三种事务处理方式
  9. MySQL统计两部分查询结果记录数量比值
  10. woe分析_WOE和IV
  11. dpkg:处理 xxx (--configure)时出错解决办法(转载)
  12. typescript 方法后面加感叹号_typescript专题(四) 「泛型」
  13. PTA 数据结构与算法题目集(中文)7-38 寻找大富翁(25 分)快排或堆排序
  14. 回收测试JInternalFrame
  15. Linux 工具链 error while loading shared libraries: libgettextsrc-0.19.8.1.so 解决方法
  16. 寒武纪“失速”,是AI芯片行业的阵痛?
  17. 可变参数和Steam流的基本使用
  18. 基于Hmm模型和Viterbi算法的中文分词和词性标注
  19. 科研之路你必须拥有一款文献管理软件--Zotero
  20. 视觉识别数字、十字路口和T字路口,巡线于一体的基于openmv的解决方案(2021年电赛f题)

热门文章

  1. MySQL 8.0的预研清单和计划
  2. JSON parse error: Unrecognized field “abc“ (class cn.kk.xxxDto), not marked as ignorable;
  3. 在python中import什么意思_python的import是什么意思
  4. 超市管理系统设计报告
  5. 中亦安图递交注册:拟募资6亿 年营收近12亿
  6. 一位励志的盲人程序员加我微信,求助找工作
  7. 会计计算机功能,会计软件具有什么功能
  8. Windows系统安装绿色版MySQL8
  9. 2010-05-20 代码复用、使用率情况分析
  10. 随笔 | “郑秋冬”随想