Java项目出现的问题01----学习

0 运行环境

MyEcplise2016+Tomcat8.0

1

今天在html的表格提交跳转时发现,想要提交到自己写servlet程序中,却发现总是出错http://localhost:8080/Test4/Test4/fail.html多出一个项目路径/Test4,但是程序没有任何问题,最后发现是在Ecplise中创建html文件时选的是5.0版本,当选择较低版本:HTML 4.01 Transitional时便没有这个问题了,在较高版本中这个问题目前还没有解决。

---问题解决:今天和学长交流时发现是因为浏览器本身的缓存的问题,与HTML版本无关。清楚缓存,删除历史记录即可解决。

今天还顺带解决了Sublimt Text的中文汉字乱码问题,使用UTF-8编码即可,在代码中设置编码格式,就能保证汉字无乱码

 2

 在有返回值的方法中,有时可能需要用try catch 接收异常,但接收后可能会警告该方法无返回值,此时只需要加上

throw new RuntimeException(e)即可。

 3

 404:一般是访问资源有问题在jsp或者HTML中查找,或者Tomcat服务器启动失败

500:一般是程序的有问题在servlet中查找

 4

 有时候同一个浏览器的不同界面也是采用的一个session,可能会造成错误,测试时可以采用不同浏览器 

 5 

 在做餐馆王系统时发现在Tomcat-webapps下修改.html文件为.jsp文件,然后在MyEcplise中进行更新,并不能对相应的文件名进行更新,仍要手动更新,这一问题还没有解决。----发现不应该在Tomcat在修改,应该在MyEcplise创建的文件路径下修改才可以。

 7

 MyEcplise加载项目过多时就会特别卡,注意及时清理不用的项目

 8

 html页面中使用的路径是相对路径,换成jsp后要把相对路径换为绝对路径,写成jsp的形式:${pageContext.request.contextPath}/

 9 直接输入项目名出现404

 发布完项目后在网站上直接输入项目名称出现404错误,可以把index.jsp即首页文件放在项目目录下就可以自动访问了。

 10

 再导入架包时有两种方案:一,新建folder命名为lib然后把架包复制到里面再配置路径;二,config buildpath中选择add liberary配置后在选择add external jars。

采用方式二则在原项目中是不出现架包的。

 

 11

 MyEcplise在启动Tomcat服务器时遇到自己导入的架包不会自动的复制到Tomcat的lib目录下需要手动设置。如果不设置会出现404错误。方法一:手动的把架包考到lib目录下;方法二:项目上右键--》properties--》myeclipse--》DeploymentAssembly--》选择需要复制到lib下的libraries

 12

properties文件中想注释中文,但是写出来后却是 :# /4djf/234/4354/r23df/324d  这种效果

是因为字符编码默认没有设置造成的,以前总是安装插件解决此问题,但是却牺牲了,properties本身的提示功能.

解决方法: 右键Properties -> properties ->Resource ->选择字符集为UTF-8, #在写出来就会是中文,还要注意的注释和代码不要放在一行

13 解决js上无名错误

 MyEcplise有时在js上误报错,把这个错误移除即可。解决方法右键--》myecplise---》execlude form validation

 14

 用Tomcat发布项目时,如果两个项目名字相差不是很大,Tomcat可能不会新建仍旧按照老的路径,这样在浏览器上输入新路径就会导致错误。--在MyEcplise中

 15 解决8080端口占用问题

C:Users111> cd  C:windowssystem32  跳转到该目录下

C:windowssystem32>netstat -ano | findstr 8080  查询8080端口有哪些

假设显示: TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 6148

C:windowssystem32>taskkill /pid 6148 /f
成功: 已终止 PID 为 6148 的进程。

16 ecplise中项目发布成功却没有部署

MyEcplise是tomcat配置后自动把项目部署到webapps文件夹下,但ecplise却没有这个功能,要自己在server location中配置一下。有时ecplise重启后都要再配置一下

 17 重置id

在用hibernate使用mysql时发现就算删除某条记录再重新插入时仍然会接着删除的id增加,想要重置的只能使用TRUNCATE TABLE 表名;重置整张表,不能重置某条记录。

 18 hibernate配置路径

 在hibernate使用中<hibernate-mapping package="cn.uestc" auto-import="false">,当有不同的在不同的包下时,就不能设置自动导入,要手动导入包的全名

 20 mysql的事务

 在Mysql中,只有当表的类型是INNODB的时候,才支持事务

213213

原文地址:https://www.cnblogs.com/youngao/p/10260619.html