基础名词篇 jre与jdk
命令: javac, java
使用vscode配置java环境
- 插件
- jdk
- 开发包
- jre
- 运行包
java基础
- 常用的基础package
- 衍生的数据结构
- for循环
- 逻辑判断
- 函数
- 基础数据结构与使用方法
java是什么
类库
- 类库是以jar包的形式发布的。jar 包是 Java 中组织多个 class 文件的方式。
- 其本质是一个 zip 压缩包。后缀名是 jar。
- 类库是以 jar 包发布的、可以完成某个功能的一个或者多个 jar 包
- 本章后面会有一个小节专门介绍一些常用的类库
语法之外
- java语法
- 并不是java的全部
- 复合java语法的源文件通过javac 命令被编译成 class 文件,又可以通过不同操作系统平台下的 java 命令运行相同的 class 文件,得到相同的结果。在后面支撑着完成着一整套操作的系统才是完整的 Java
- class 文件也是 Java 和别的语言不一样的地方。所有的 Java 程序的进程名字都是 Java。但是如果是一个 C 语言编写的程序,进程名字可以是程序本身决定的。而且 C 语言编写的程序,可以直接编译链接生成 exe 文件(Windows),可以直接运行。但是 Java 程序编译出来是 class 文件,运行还要靠 java 命令,这一切的背后到底是什么?
- java语法
Java是什么:字节码和class文件
- 字节码类似于cpu的指令集,是java程序跨平台的基础
- class文件:Java源文件可以生成class文件。class文件就是字节码组成的。只要有合适的编译器。别的语法也可以生成 class 文件,在 JVM 上运行
- 执行字节码的是java虚拟机
- 基于jvm或者字节码的其他语言scala
Maven
- classpath:类路径,默认会把当前路径加到classpath中
- 包名变成文件夹,类名变成文件名
- jar包的仓库,分为两个部分 一个是服务端 maven repo 或者叫 nexus server
- 每个jar包都有唯一id,由三个部分组成: group id,artifact id, version 组织名 包名 版本号
- 为了避免每次都从服务器下载,aritifact,maven会把下载好的aritifact 放在本地的文件夹 local repo
- 客户端 会把依赖的jar包添加到相关的配置文件中去
- maven 要求有JAVA_HOME
- maven windows配置 https://www.codetd.com/article/13723472
jdk与jre
- jdk中除了jre还是其他的调试软件 java8 与java11不同,很多8中有的11中要被丢弃掉了
- jdk11要对企业收费 还有其他的jdk open jdk
- Spring+SpringMVC+Mybatis
Jsp: java server page
AOP 面向切面编程
IOC 控制反转 主要组件是Bean工厂(BeanFactory),Bean工厂使用控制反转(IoC)模式来降低程序代码之间的耦合度
- 把创建对象的过程交给Spring
- 创建对象 注入属性
声明式编程
是以数据结构的形式来表达程序执行的逻辑。它的主要思想是告诉计算机应该做什么,但不指定具体要怎么做。SQL 语句就是最明显的一种声明式编程的例子,例如:
函数式编程:
而函数式编程和声明式编程是有所关联的,因为他们思想是一致的:即只关注做什么而不是怎么做。但函数式编程不仅仅局限于声明式编程
po层 vo层
POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。
SSM框架
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项目的框架。
POJO vs JAVABean
什么是POJO
按照Martin Fowler的解释是“Plain Old Java Object”,从字面上翻译为“纯洁老式的Java对象”,但大家都使用“简单java对象”来称呼它。
POJO的内在含义是指那些没有从任何类继承、也没有实现任何接口,更没有被其它框架侵入的java对象。
pojo和javabean的比较
pojo的格式用于数据的临时传递,它只能装在数据,作为数据存储的载体,而不具有业务逻辑处理的能力。
而javabean虽然数据的获取与pojo一样,但是javabean当中可以有其它的方法。
JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:
1.这个类必须有一个公共的缺省构造函数。
2.这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。
3.这个类应是可序列化的。
详解:
使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter、setter方法的类,没有业务逻辑,有时可以作为VO(value -object)或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方法。
POJO对象有时也被称为Data对象,大量应用于表现现实中的对象。如果项目中使用了Hibernate框架,有一个关联的xml文件,使对象与数据库中的表对应,对象的属性与表中的字段相对应。
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类都可以是一个 Bean 。但通常情况下,由于 Java Bean 是被容器所创建(如 Tomcat) 的,所以 Java Bean 应具有一个无参的构造器,另外,通常 Java Bean 还要实现 Serializable 接口用于实现 Bean 的持久性。 Java Bean 是不能被跨进程访问的。JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被拿去用,这个扳子也提供多种功能(你可以拿这个扳子扳、锤、撬等等),而这个扳子就是一个组件。一般在web应用程序中建立一个数据库的映射对象时,我们只能称它为POJO。POJO(Plain Old Java Object)这个名字用来强调它是一个普通java对象,而不是一个特殊的对象,其主要用来指代那些没有遵从特定的Java对象模型、约定或框架(如EJB)的Java对象。理想地讲,一个POJO是一个不受任何限制的Java对象(除了Java语言规范)。
POJO是一个简单的普通的Java对象,它不包含业务逻辑或持久逻辑等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。
DTO
DTO 全称为:Data Transfer Object,即数据传输对象。一般用于向数据层外围提供仅需的数据,如查询一个表有50个字段,界面或服务只需要用到其中的某些字段,DTO就包装出去的对象。可用于隐藏数据层字段定义,也可以提高系统性能,减少不必要字段的传输损耗。
IOC 控制反转:
webwork .action strust .do
监听器
观察者模式 监听、
基础知识
Java中如何在无参构造方法中调用有参构造方法 https://blog.csdn.net/hello_word2/article/details/52171122
基础知识 + trick 熟练掌握

