廖雪峰PythonJava对比学习1语言类型1java是javac编译器先编译成字节码.class文件,后java虚拟机解释生成机器码执行
123intellij idea使用pythonhttps://www.oryoy.com/news/intellij-idea-pei-zhi-python-kai-fa-huan-jing-cong-an-zhuang-dao-diao-shi-quan-zhi-nan.html
12静态语言java动态语言python
输入和输出python1python里输入input,输出print
java123456789101112131415java里输入:import java.util.Scanner;public class test { public static void main(String[] args) { Scanner input = new Scanner(System.in); // 创建 Scanner 对象 System.out.print("请 ...
廖雪峰java-Spring Cloud开发 1
廖雪峰spring-1spring 开发IOC容器IOC原理1inversion of control
依赖注入方式1方法或者构造方法
无侵入容器1
装配Bean123xml方式IOC容器可使用ApplicationContext、BeanFactory
使用Annotation配置12345@Component@Autowired 可以写在构造方法、字段、方法里@Configuration@ComponentScan
定制Beanscope12@Component@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
注入List123456789101112131415161718@Componentpublic class Validators { @Autowired List<Validator> validators; public void validate(String email, String password, String name) { for ...
廖雪峰java-Spring Boot开发 1123Spring Boot是一个基于Spring的套件,它帮我们预组装了Spring的一系列组件,以便以尽可能少的代码和配置来开发基于Spring的Java应用程序。Spring Boot和Spring的关系就是整车和零部件的关系
第一个Spring Boot应用
1spring结构下面
application.yml使用环境变量logback-spring.xmlstatic、templates1static是静态文件目录,templates是模板文件目录,注意它们不再存放在src/main/webapp下,而是直接放到src/main/resources这个classpath目录,因为在Spring Boot中已经不需要专门的webapp目录了。
代码结构
12345678在存放源码的src/main/java目录中,Spring Boot对Java包的层级结构有一个要求。注意到我们的根package是com.itranswarp.learnjava,下面还有entity、service、web等子package。Spring ...
廖雪峰java-Web开发 1123java eejave sejave me
12j2eeservlet
Web基础1B/S
HTTP协议12345678htmltcpHTTP/1.1服务器的响应、浏览器发送的HTTP请求遇到两个连续的\r\n2xx表示成功,3xx表示重定向,4xx表示客户端引发的错误,5xx表示服务器端引发的错误编写服务器程序来处理客户端请求通常就称之为Web开发。
编写HTTP Server123456789我们来看一下如何编写HTTP Server。一个HTTP Server本质上是一个TCP服务器,我们先用TCP编程的多线程实现的服务器端框架:实现一个最简单的Servlet通过Maven来引入它warServlet版本 4.0 5.0Tomcat版本 9.0 10.0整个工程结构支持Servlet API的Web服务器
Servlet入门12345678910最简单的ServletServlet API是一个jar包,我们需要通过Maven来引入它war整个工程结构支持Servlet API的Web服务器Servlet版本 4.0 5.0Tomca ...
廖雪峰java 进程和线程多线程基础1.进程包含线程,且至少包含一个线程
2.可用多进程、多线程、多进程+多线程3钟方式实现多任务
3.一个应用程序可以包含多个进程和多个线程
4.进程的优点:稳定性好 一个进程崩溃不会影响其它进程 缺点:创建一个进程比创建一个线程开销大 进程间通信比线程间通信时间久
线程缺点:一个线程崩溃会影响其它所有线程,进而整个进程
5.单核、多核都可以通过轮流执行任务实现多任务同时执行
6.一个java程序实际上就是一个jvm进程,由一个主线程来执行main()方法,main()方法内部又可以启动多个其它的线程
7.对于大多数Java程序来说,我们说多任务,实际上是说如何使用多线程实现多任务、
8.多线程和单线程相比,需要共享和同步数据。因此,多线程编程的复杂度高,调试更困难
9.操作系统调度的最小任务单位其实不是进程,而是线程。
10.如何调度线程完全由操作系统决定,程序自己不能决定什么时候执行,以及执行多长时间。
创建新线程自定义Thread类123456789101112131415161718192021222324252627public class ...
哈希算法哈希碰撞哈希算法的用途md5sha-1sha-256sha-512
廖雪峰java-线程
廖雪峰java-网络编程网络编程基础12计算机网络互联网
IP地址123456IPv4和IPv6公网IP地址和内网IP地址本机地址网络号 子网掩码网关路由
域名1域名解析服务器DNS
网络模型12OSITCP/IP
常用协议123IP协议TCP协议UDP协议
TCP编程12Socket0~1024~65535
服务器端客户端UDP编程12UDP0~65535
HTTP编程123456TCP 使用80端口和加密端口443GETPOSTHTTP/1.0 HTTP/1.1 HTTP/2.0 目前HTTP 3.0仍然处于实验阶段HttpURLConnection HttpClient
RMI远程调用发送Email接收Email
廖雪峰java-设计模式创造型模式工厂方法抽象工厂生成器原型单例结构型模式适配器桥接组合装饰器外观享元代理行为型模式






