Java项目出现的问题02----学习
1 框架配置无.java
在框架配置中当需要写类名是,注意是没有后面.java的
2 类中找不到main方法请将main方法定义为public static void main.
否则 JavaFX 应用程序类必须扩展javafx.application.Application
今天在用spring框架的时候遇到了这个问题,原因是因为org.springframework.spring-library-3.1.0.M2.libd这个包出现了问题,只要在.classpath文件把其注释了即可
<!--
<classpathentry kind="lib" path="lib/org.springframework.spring-library-3.1.0.M2.libd"/>
-->
3 POI操作Excel时偶尔会出现Cannot get a text value from a numeric cell的异常错误。
异常原因:Excel数据Cell有不同的类型,当我们试图从一个数字类型的Cell读取出一个字符串并写入数据库时,就会出现Cannot get a text value from a numeric cell的异常错误。
解决方法:先设置cell类型,再读取
1 设置类型 : cell0.setCellType(Cell.CELL_TYPE_STRING);
2 读取 : student.setNumber(cell0.getStringCellValue());
4 Java生成32位随机数
/**
* 生成32位编码
* @return string
*/
public static String getUUID(){
String uuid = UUID.randomUUID().toString().trim().replaceAll("-", "");
return uuid;
}
5 文本文档有乱码
因为使用的Sublime Text这个工具它的编码格式和直接用文本文档打开的有所不同,它使用的utf-8而文本文档使用的ASIC码可能会有乱码,要注意
7 POI操作Excel中有空指针异常
原因: 某些单元格为空造成了空指针
解决方法:对于整行为空的 if(sheet.getRow == null) 对于某个单元格为空的if (row.getCell(0) == null)
注意:要先判断是否整行为空,否则会报错的。因为当整行为空时是无法获取到单元格的
8 清空数据表和删除数据表
1 truncate是整体删除(速度较快), delete是逐条删除(速度较慢)
2 truncate不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。而delete删除以后,Identity依旧是接着被删除的最近的那一条记录ID加1后进行记录。
9 在有外键约束的情况下删除数据
首先,在数据库中查看外键是否有效(没有设置之前都是有效),命令:select@@foreign_key_checks; 若显示值为1则表示外键有效此时不能删除数据。将外键的值设置为0,此时就是失效状态,命令:set foreign_key_checks = 0,这时就能删除数据了。删除之后,外键再设置为有效set foreign_key_checks = 1
10 删除数据库中的一列
alter table tablename drop columnname;
11 hibernate操作数据库中的一对多与多对一
当一对多设置外键时其外键仍然显示在多对一的表中,例如商品分类和商品表,设置商品分类的外键与商品建立联系发现外键会出现在商品表中,这和对商品设置外键多对一的形式上是一样的。虽然形式上一样但建立的外键关系不同。
12 为什么Jsp可以执行java代码
在执行的过程中jsp被翻译为了servlet,具体可参考servlet的执行流程。
13 .jsp不被拦截
直接在浏览器上输出.jsp的地址是不会被struts的过滤器拦截的,会直接找到相对应的jsp界面.直接输入项目名称会默认访问index.jsp界面
14 @Test使用
1 不要在main方法上加@test 2 不要把自己写的类命名为Test.java
15 WEB-INF下的路径问题
今天在how2j上的struts+hibernate项目中有一个在WEB-INF下有一个product文件夹下有一个list.jsp文件;在返回值时直接写的是<result name="listJsp">/product/list.jsp</result>运行后发现是404错误,最后发现是<result name="listJsp">WEB-INF/product/list.jsp</result>,应该写上WEB-INF路径,对于不同平台可能不同这一点要注意到。
16 java.lang.IllegalArgumentException
仔细看错误报告是在程序:
ApplicationContext context = new ClassPathXmlApplicationContext(new String[] {"applicationContext.xml"}); 传入了错误参数,但在前面是程序就运行正常。后面发现是导入包的版本不支持JDK8的特性,因此需要重新导入版本比较新的包。在spring采用注解方式配置aop时出现了这个错误,因为一开始导入的包是视频里给的比较老了。
17 c3p0连接池
spring里的这个主要是用来根oracle交互的,用mysql可以不用管。
18 org.springframework.dao.InvalidDataAccessResourceUsageException:异常
这个是数据库出现了异常,可能是不是数据库里没有数据或者其他原因。我遇到的是数据库根本没有创建,然后查询抛出了这个异常。数据库没有被创建爱是因为因为数据库的版本不同没有添加在节点添加hibernate,可参考代码笔记springHibernate01项目的备注。此外要注意在数据库操作时一定要先有数据否则删除、查询可能会报错。
19 瞬时对象与持久对象

当把鼠标放在属性管理、产品管理、编辑或者删除选项时,在其页面的右下角都会显示一行小字这个就是页面的瞬时对象。比如想要顺利的知道某一分类下的属性管理都有哪些就要把相应的瞬时对象改变为持久对象才能从数据库种读取数据。
0
Java项目出现的问题02----学习的更多相关文章
- Redis学习笔记之二 :在Java项目中使用Redis
成功配置redis之后,便来学习使用redis.首先了解下redis的数据类型. Redis的数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set( ...
- java项目(学习和研究)
java项目就是研究,不断的对项目进行迭代,把产品做的越来越好,就是research. 自己想着做一个java项目把,可以类似牛客网,想好自己的预期产品,在设计的过程中可以不断改进和扩展,在做这个项目 ...
- Java基础学习总结(70)——开发Java项目常用的工具汇总
要想全面了解java开发工具,我们首先需要先了解一下java程序的开发过程,通过这个过程我们能够了解到java开发都需要用到那些工具. 首先我们先了解完整项目开发过程,如图所示: 从上图中我们能看到一 ...
- IDEA 学习笔记之 Java项目开发深入学习(2)
Java项目开发深入学习(2): 查找变量被用到的地方 编译当前文件 增加变量watch 注意:我使用了keymap (eclipse模板),所以很多快捷键和eclipse一样. F5单步调试进入函数 ...
- IDEA 学习笔记之 Java项目开发深入学习(1)
Java项目开发深入学习(1): 定义编译输出路径: 继承以上工程配置 重新定义新的项目编译路径 添加source目录:点击添加,再点击移除: 编译项目: 常用快捷键总结: Ctrl+Space 代码 ...
- 从零构建Java项目(Maven+SpringBoot+Git) #02 奥斯丁项目
前两天我说要写个项目来持续迭代,有好多小伙伴都表示支持和鼓励,项目的第一篇这不就来了么~我给项目取了个名字,英文名叫做:austin,中文名叫做:奥斯丁 名字倒没有什么特别的含义,我单纯觉得这个名字好 ...
- Java学习之道:Java项目打包发布
Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...
- java学习笔记(一):开始第一个java项目
这里使用IntelliJ IDEA 来新建第一个java项目 在新建项目向导,你可以选择你的项目支持的技术,你正在做一个普通的Java项目,只需单击下一步. 下一步,新建一个test的项目. 新建一个 ...
- Gradle学习笔记(1)创建简单的Java项目
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置.当前 ...
- Maven 学习笔记——将普通的Java项目转换成Maven项目(3)
将一个普通的java项目转换成Maven项目并不是一个很大的任务,仅仅只需要下面的几步就能将转换成功.下面我是用一个简单的Selenium测试小demon作为例子来说的. 移调项目中所有关联的Libr ...
随机推荐
- 2019上海网络赛 F. Rhyme scheme 普通dp
Rhyme scheme Problem Describe A rhyme scheme is the pattern of rhymes at the end of each line of a p ...
- QT QcustomPlot的使用(二)
在QcustomPlot中,给横纵坐标添加箭头的方法 //在末尾添加箭头 customPlot->xAxis->setUpperEnding(QCPLineEnding::esSpikeA ...
- 【Trie】Secret Message 秘密信息
[题目链接]: https://loj.ac/problem/10054 [题意] 我认为这个题目最难的是题意: 其实分了两种情况: 1.如果当前文本串匹配不完,那么答案的是:匹配过程中遇到的模式串结 ...
- .Net C# 签名字符串排序
#region Get Sign Content /// <summary> /// Get Sign Content /// </summary> /// <param ...
- Mybatis 多个参数传入的多种方法
ist<XXXBean> getXXXBeanList(HashMap map); <select id="getXXXBeanList" parameterTy ...
- 转载博客(Django2.0集成xadmin管理后台遇到的错误)
转载博客地址:https://blog.csdn.net/yuezhuo_752/article/details/87916995 django默认是有一个admin的后台管理模块,但是丑,功能也不齐 ...
- C#进阶之WebAPI(三)
今天复习一下WebAPI的路由知识: 首先分析一下MVC路由和WebAPI路由的区别: 在mvc里,默认的路由机制是通过URL路径去匹配控制器和Action方法的,在mvc中的默认路由定义在App_S ...
- Django rest-framework框架-请求数据校验
验证实例: class UserInfoSerializer(serializers.Serializer): title = serializer.CharField(error_messages= ...
- Vue-img-preload
预加载页面上的图片资源,提高用户体验 效果预览 使用方法 下载vue-img-preload插件 npm install vue-img-preload 配置参数 eachLoaded(functio ...
- merge into 笔记
1 IF EXISTS (SELECT 1 FROM sys.types t join sys.schemas s on t.schema_id=s.schema_id ...