Java学习杂项常识汇总
java基础
java基础:
开发工具下载
JDK下载及环境变量配置
第一个程序:Hello World!
数据类型(常量,变量)
关键字
标识符
运算符
流程控制语句
函数(方法)及其签名
面向对象中类和对象概念
成员变量与成员函数
访问权限控制符
面向对象的三大特征:封装、继承、多态
常用API:
java.lang.*
java.util.*
java.math.*
java.net.*
java.io.*
java.nio.*
了解:java.sql.*、java.text.*、java.security.*、java.rmi.*
javaweb基础:
xml基础
tomcat容器
http协议
servlet
jsp
参考:http://blog.csdn.net/xyzopq100/article/details/50683899
java常用API
java.nio.*包参考:http://ifeve.com/overview/
java运算符

eclipse的classpath路径
eclipse中的src、WEB-INF\lib、WEB-INF\classes都是classpath;其中src是指Source Folder,并不是名字一定要是src
小知识:
src中的java文件编译后的*.class文件会在WEB-INF\classes中
FileSystemXmlApplicationContext与ClassPathXmlApplicationContext
FileSystemXmlApplicationContext支持三类使用方式,默认表示的是前两种:
1,没有盘符的是项目工作路径, 即项目的根目录;
2,有盘符表示的是文件绝对路径。
3,如果要使用classpath路径,需要前缀classpath:
ClassPathXmlApplicationContext支持三类使用方式:
1,带有classpath: 前缀,使用classpath环境变量路径,eclipse中有三个;
2,不带有classpath: 前缀等同于第一种,默认就是指项目的classpath路径下面;
3,如果要使用绝对ClassPathXmlApplicationContext()路径,需要加上file: 前缀表示这是绝对路径;
示例:项目ServletStudy中的src目录下有config/config.xml文件:
ApplicationContext ac = new FileSystemXmlApplicationContext("src/config/config.xml"); // src前有无/都可以,相对于ServletStudy根目录 ApplicationContext ac = new FileSystemXmlApplicationContext("classpath:config/config.xml"); // 使用classpath路径 ApplicationContext ac = new FileSystemXmlApplicationContext("D:/Program Files/eclipse-luna-SR2-win64/workspace/ServletStudy/src/config/config.xml"); // 有盘符、无file:前缀 ApplicationContext ac = new FileSystemXmlApplicationContext("file:D:/Program Files/eclipse-luna-SR2-win64/workspace/ServletStudy/src/config/config.xml"); // 有盘符、有file前缀 ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:config/config.xml"); // 使用classpath路径 ApplicationContext ac = new ClassPathXmlApplicationContext("config/config.xml"); // 使用classpath路径 ApplicationContext ac = new ClassPathXmlApplicationContext("file:D:/Program Files/eclipse-luna-SR2-win64/workspace/ServletStudy/src/config/config.xml"); // 有盘符、有file:前缀,绝对路径
Spring框架下载
1、打开网址
http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/
2、搜索下面字符串定位下载链接
Distribution Zip Files
关于Java的几个小知识点
静态内部类可以有非静态字段和静态字段,非静态内部类只能有有非静态字段;不管内部类是不是静态的都可以通过new方式访问非静态成员
public class Inner1 { /** * 静态内部类可以有静态成员和非静态成员 * * 如果成员有静态的,内部类必须是静态的 * * @author xuanyuan * */ public static class Inner2 { private int num; private static String name; public void show() { System.out.println(this.num + name); } } }
接口可以有内部接口也可以由内部类,直接.调用
public interface Inne2 { public interface Inne1 { } public class Inne3 { } }
// Inne2.Inne3 inner = new Inne2.Inne3(); 调用形式
一般的类可以使用Spring的注入吗(不行,必须将类注册到Spring容器中成为Bean才能注入其他Bean)
静态字段、静态方法、非静态字段都会相互隐藏(子类父类各自访问各自的);要实现多态必须是实例方法而且不能被final修饰
java的证书(SSL)
JRE自带证书库:%JAVA_HOME%/jre/lib/security/cacerts
(其实就是一个*.keystore文件,只是没有keystore文件名后缀)
导入自建证书到证书库
别名:czgps.com
自建证书(使用openssl签发,这里不说):D:/nginx-1.10.0/ssl/ca.cer
JRE证书库:D:/Java/jdk1.8.0_11/jre/lib/security/cacerts
JRE信任库默认密码:changeit
导入证书到信任库(如果是自定义证书库,不存在会添加)
keytool -import -trustcacerts -alias czgps.com -file D:/nginx-1.10.0/ssl/ca.cer -keystore D:/Java/jdk1.8.0_11/jre/lib/security/cacerts -storepass changeit
查看信任库证书列表
keytool -list -v -keystore D:/Java/jdk1.8.0_11/jre/lib/security/cacerts -storepass changeit
根据证书别名(czgps.com)删除已有的证书
keytool -delete -trustcacerts -alias czgps.com -keystore D:/Java/jdk1.8.0_11/jre/lib/security/cacerts -storepass changeit
导出指定别名的证书
keytool -exportcert -keystore D:/Java/jdk1.8.0_11/jre/lib/security/cacerts -file D:/certs/test.cer -storepass changeit -alias czgps.com
java根据操作系统来决定行为
static { // 根据操作系统来获取 String osname = System.getProperty("os.name"); if (osname.startsWith("win") || osname.startsWith("Win")) { res = ResourceBundle.getBundle("sysconfig_win"); } else { res = ResourceBundle.getBundle("sysconfig_linux"); } }

浙公网安备 33010602011771号