问题:
Semantic error at definitions.Response«Page«AppServerProfile»»
$ref values must be RFC3986-compliant percent-encoded URIs
解决方案:
«» 替换成url编码后的值
参考链接: https://github.com/swagger-api/swagger-editor/issues/1766
分类目录归档:学习笔记
去除[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
在使用maven和jetty的时候,如果你不想看到上面的警告,那么你只需要修改pom如下:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.4</version> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin>
sun.misc.BASE64Encoder找不到jar包的解决方法
解决方案1(推荐):
只需要在project build path中先移除JRE System Library,再添加库JRE System Library,重新编译后就一切正常了。
解决方案2:
Windows -> Preferences -> Java -> Compiler -> Errors/Warnings ->
Deprecated and trstricted API -> Forbidden reference (access rules): -> change to warning
解决java使用sigar获取linux系统内存使用信息报错的问题()
把项目放到linux下一般会出现java.lang.UnsatisfiedLinkError: org.hyperic.sigar.Mem.gather(Lorg/hyperic/sigar/Sigar;)V
解决办法:将sigar.jar libsigar-amd64-linux.so复制到tomcat/lib下 chmod +x sigar.jar
解决Dynamic Web Module 3.0 requires Java 1.6 or newer的错误
在项目的pom.xml的<build></build>标签中加入:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
保存,选择Maven->Update Project Configuration
[转载]115个Java面试题和答案——终极列表(上)
[转载]JavaBeans vs Spring beans vs POJOs
JavaBean, Spring bean 和 POJO 是三个被广泛使用的术语,本文分别讨论了它们的含义,以及分析三者的区别。
JavaBeans
根本而言,JavaBean只是遵循了特定编码规范的Java类而已。例如:
- 包含默认(无参数)的构造函数
- 允许通过访问器(getter和setter方法)来访问类的成员属性
- 实现java.io.Serializable接口
准确来说,JavaBean是遵循了Sun制定的JavaBean 标准的 类,该标准最早于1996年发布。JavaBean被定义为Java的“软件组件模型”。最初的想法是将JavaBean打造成能够被构建工具可视化地操 作的可重用的组件,由此,软件供应商可以创建和出售能够让用户灵活地组合进应用程序的JavaBean。JavaBean的三个最重要的特性是:
- 它暴露的一系列属性(称之为“特征“attribute)
- 它允许其他组件调用的一系列方法
- 它触发的一系列事件(用来通知它注册了的监听器)
POJO
POJO是 Plain Old Java Object(简单的Java对象)的缩写。它最初是由Martin Fowler等人创造的,作为一种花式的对普通Java对象的称呼。这类对象不需要通过框架来使用,也不需要在特定应用服务器的环境下才能运行。这个词主要用来区分简单、轻量的Java对象和“重量级“的类,例如EJB。《POJOs in Action》一书介绍了使用这类轻量的对象来进行开发的方法,许多框架-例如Spring-也推广了POJO的使用。
Spring beans
Spring bean 表示受到Spring管理的对象。具体说来,它是被Spring框架容器初始化、配置和管理的对象。Spring bean是在Spring的配置文件中定义(现在也可以通过annotation注解来定义),在Spring容器中初始化,然后注入到应用程序中的。
因为在最早的版本中,Spring是被设计用来管理JavaBean的,所以Spring管理的对象会被称为“bean”。当然,现在Spring 已经可以管理任何对象,即使它不具备默认构造器和设置方法(getter和setter)这些JavaBean的特性。然而,”Spring bean“这个术语仍然被保存了下来。
Spring bean可以是POJO吗?当然可以,并且它通常就是。(即使它并不一定得是POJO,例如Spring可以用来处理重量级Java对象,比如EJB对象)。
总结
虽然距离JavaBean规范的发表已经过了十多年,这个规范仍然有重要的作用,并且影响着现代框架–如Spring–的开发。然而,虽然我们仍然 可以称这些包含默认构造器和私有字段的访问方法的类为JavaBean,它的“可以被构建工具可视化地管理的可重用组件”的概念已经不再流行了。
而另一方面,POJO已经无处不在了,人们对EJB的复杂性的积怨使得“轻量的”Java编程获得了广泛采用。
Spring bean是由Spring框架创建和管理的对象。
这三个概念并不是互斥的。一个Java对象可以同时是JavaBean,POJO和Spring bean。
原文链接: Shaunabram 翻译: ImportNew.com – Jeffery
译文链接: http://www.importnew.com/14019.html
使用hibernate时jsp报500错误
on org.hibernate.exception.SQLGrammarException: could not execute query Class:
原因是*.hbm.xml里table名第一个字母大写了,没匹配上。。但本地数据库就没出现这样的问题,尚不知为什么
java多态
1.编译时多态 重载实现 根据参数不同编译时产生新的函数
2.运行时多态 重写 子类重写了父类的方法,new的对象调用的方法直接调用子类的方法
多态的实现主要是重写和重载
一、使用父类类型的引用指向子类的对象; 使用父类类型的引用指向子类的对象;
二、该引用只能调用父类中定义的方法和变量; 该引用只能调用父类中定义的方法和变量;
三、 如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法;(动态连接、动态调用) 的时候,将会调用子类中的这个方法;
java参数传递
1.非对象类型的传递:传递的是参数值的拷贝,修改了对原值无影响
2.对象类型的参数传递:传递的是对象的地址