5avlib,自学java?
自学Java,如何自学?好的,我送你免费精品教程

首先一定要梳理好相关知识点,从入门的基础语法开始学习,最重要的是看过文章和视频,自己一定要动手实操
这里我分享给你的Java学习线路图,希望对你有帮助:java学习线路图
这个学习线路图我分为了几个阶段,每个阶段能学到什么,能做什么,具体知识点请往下看,每个阶段知识点我都整理出来了,更适合学习!
java语言入门
可掌握的核心能力:
掌握Java开发环境基本配置;
掌握运算符、表达式、流程控制语句、数组等的使用;
熟练使用Idea开发工具;
掌握Java基本面向对象知识;
掌握常用类String、ArrayList等的使用。
配套视频:
java基础教程(编程就像打字一样简单)
视频地址:http://yun.itheima.com/course/375.html?1910stt
java语言进阶
可掌握的核心能力:
深入理解Java面向对象相关知识点;
掌握开发中常用类如集合、IO流、时间日期等操作;
掌握Java异常处理机制,熟悉Java多线程开发;
掌握网络基础知识,了解Socket原理,TCP、UDP协议;
掌握java基本语法完成单机程序的编写;
熟悉Java新特性,如Lambda、Stream流等操作
配套视频:
Java快速入门教程视频
视频
http://yun.itheima.com/course/269.html?stt
Javaweb
可掌握的核心能力:
掌握Java JDBC、连接池操作,熟练操作mysql数据库;
熟悉web开发中常用知识如 HTML5、CSS3、JavaScript、BootStrap、jQuery等;
掌握JavaWeb开发核心技术 Servlet、Listener、Filter等;
熟悉Linux服务器,并安装开发常用软件tomcat、mysql、nginx等;
掌握同步及异步操作的JavaWeb开发,具备B/S结构软件开发能力,完成基本的JavaWeb项目;
熟悉基本的项目管理工具Maven的使用。
配套视频:
超全面的JavaWeb视频教程
视频地址:
http://yun.itheima.com/course/36.html?1910mcgqq
项目一
可掌握的核心能力:
掌握企业中最常用SSM框架开发,开发出结构清晰、可复用性好、维护方便的企业级应用程序;
掌握AngularJS框架;
掌握Spring security框架;
掌握dubbox分布式调用技术;
掌握zookeeper分布式应用协调服务;
掌握Freemarker模板引擎;
掌握全文检索解决方案;
掌握spring boot1.x框架的基本应用;
掌握CAS实现单点登录;
掌握CORS实现跨域;
掌握微信扫码支付;
掌握电商秒杀解决方案;
掌握SpringTask实现任务调度;
掌握MavenProfilel实现开发与生产环境切换;
了解电商开发中相关业务模块如商品、订单基本操作;
了解电商开发中相关术语SPU和SKU等;
积累互联网电商项目开发经验。
配套视频:
Springmvc由浅入深全套
视频:http://yun.itheima.com/course/8.html?stt
Mybatis由浅入深全套
视频http://yun.itheima.com/course/289.html?stt
Maven精品教程
视频http://yun.itheima.com/course/234.html?stt
项目二
可掌握的核心能力:
熟悉基本的Java爬虫开发,掌握webmagic爬虫框架使用;
掌握httpClient的使用;
掌握spring data jpa框架;
掌握Spring boot2.x框架;
掌握Spring Cloud框架;
掌握MongoDB数据库使用;
掌握RabbitMQ消息中间件使用;
掌握Elasticsearch分布式搜索引擎;
掌握Rancher实现容器部署管理;
掌握Grafana实现服务的实时监控;
熟悉NodeJs环境,使用Npm和cnpm管理包资源;
熟悉ESlint进行前端语法校验;
熟悉axios的使用;
掌握vuejs框架的基本使用;
掌握瀑布流组件使用;
掌握前端页面分享功能的实现;
掌握企业级DevOps解决方案,熟悉Docker、Jenkins、git等;
了解spark mllib als 机器学习算法库实现智能分类;
了解DL4J深度学习框架实现智能推荐。
配套视频
2018年Vue.js深入浅出教程
http://yun.itheima.com/course/335.html?stt
深度掌握Springboot实践技术教程
需要再更
微服务初级课程
配套视频
SpringBoot教程_SpringBoot视频教程|黑马程序员
yun.itheima.com
需要再更
微服务高级课程
可掌握的核心能力:
ServiceComb改造十次方项目;
了解Kubernetes作用及为什么使用Kubernetes;
会使用K8S API完成基本操作;
理解微服务引擎CSE的功能;
能够实现ServiceComb项目接入CSE;
能够实现学成在线项目接入CSE;
理解云容器引擎CCE的功能;
能够使用容器镜像服务上传镜像;
能够将学成在线微服务部署到CCE;
能够测试微服务治理常用策略;
能够理解Mesher的作用;
能够完成学成在线使用Mesher接入CSE。
视频未更新,更新后上传
框架架构高级
可掌握的核心能力:
能够理解ORM框架;
使用Socket进行系统之间通信;
掌握在Java中开启多线程的三种方式;
掌握使用Netty实现通信;
掌握Netty常用的传输方式及ByteBuff的使用方法;
理解及时通信框架的架构;
掌握Protobuf数据格式及在Java中应用Protobuf;
掌握使用Netty实现服务端、客户端;
理解虚拟机client与Server的运行模式;
学习垃圾回收的算法;
掌握jps、jstat、jinfo、jstack、hprof等命令的使用;
掌握图形化监控工具JConsole工具的使用;
掌握Mission Control虚拟机诊断工具的使用;
掌握压力测试工具JMeter的使用;
掌握调整参数测试Tomcat的性能;
掌握“双亲模式”的原理以及解决方案。
好客租房项目
可掌握的核心能力:
能够实现房源信息更新的通知;
实现用户信息、房东、审核等功能;
能够实现API文档与模拟数据接口开发;
能够实现收藏、分享、举报、联系房东、预约看房、在线签约功能;
掌握微信小程序开发;
实现日志数据的清理以及推荐。
大数据转型Hadoop3
大数据hadoop教程入门配套教程
需要再更
如何查看软件安装目录linux?
1. which
which命令查找出相关命令是否已经在搜索路径中,例子如下:
$which gcc //显示出GNC的C编译器安装在哪个目录
返回结果为:
/usr/bin/gcc
注意:如果which没有找到要找的命令,可以试试whereis,该命令搜索更大的范围的系统目录。有些系统上的which命令不显示用户没有执行权限的文件。例如
$which ipppd
/usr/bin/which :no ipppd in (/bin: /usr/bin: /sbin:/usr/sbin)
$whereis ipppd
ipppd: /usr/sbin/ipppd
$ls -l /usr/sbin/ipppd
-rwx------ 1 root root 124924 Feb 3 2000 /usr/sbin/ipppd
2. locate
locate命令用于查找文件,它比find命令的搜索速度快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来建立。当我们建立好这个数据库后,就可以方便地来搜寻所需文件了。
即先运行:updatedb(无论在那个目录中均可,可以放在crontab中 )后在 /var/lib/slocate/ 下生成 slocate.db 数据库即可快速查找。在命令提示符下直接执行#updatedb 命令即可。
$locate signal.h
/usr/include/asm/signal.h
/usr/include/linux/signal.h
/usr/include/signal.h
/usr/include/sys/signal.h
3. rpm
如果用户知道自己要查找到软件包的名字,可以直接使用下面的命令。这个命令只在支持rpm的linux版本上有效,如redhat,centos,fedora和suse等。
$ rpm -q python //查找检查系统是否安装了python</p> <p>python-1.5.2-27
或者:$rpm -qa| grep python //这是两个命令的结合
rpm的其他用法:
rpm -qa (列出所有安装了的包)
rpm -e package (删除某个包)
rpm -qi package (查询某个包)
rpm -qf command (根据程序查询包的名字)
rpm -ql package (查询某个包所有的安装文件)
4.yum
yum的参数很多,以下是用于查找软件包的命令。但是也只支持特定的发型版本,centos下最常用的命令
$yum list //列出所指定的软件包,后可以加上你想查找的软件包的名字
$yum list installed //列出所有已安装的软件包
$yum info installed //列出所有已安裝的软件包信息
5.whereis
whereis是查找文件或者命令的所在目录
#whereis pwd //查找pwd命令所在的目录
6. find
这个命令可用来查找系统是否安装了指定的软件包,更重要的是也可以查找自己对软件包名称记忆不是很清晰的软件包。而且我想是这是所有linux和unix都支持的。find的查找范围很广,功能强大,再搭配用正则表达,效果很好,不过建议尽量缩小搜索范围,减少系统压力,毕竟,当系统文件多了,搜索耗费时间和资源的。
$find / -name "python" //从根目录开始查找包含”python“这个字符的文件和文件夹。
find的详细使用有如下例子:
# find . -maxdepth 1 -name *.jpg -print -exec convert 在当前目录下查找,查找深度为一,查找以.jpg结尾文件,并将其转化
# find / -name *.rpm -exec chmod 755 '{}' \; 搜索以 '.rpm' 结尾的文件并定义其权限
# find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录
# find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件
# find / -user user1 搜索属于用户 'user1' 的文件和目录
# find / -xdev -name \*.rpm 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备
# find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 从一个目录查找并复制所有以 '.txt' 结尾的文件到另一个目录
# find /home/user1 -name \*.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
# find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
# find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
# find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 结尾的文件并做成一个bzip包
为什么FFmpeg是一个exe?
FFmpeg 是一个开源的多媒体框架,提供了多种多媒体处理工具及库函数,可以用于音频、视频处理,以及多媒体流格式的转换等。它在多种操作系统上都有相应的版本,其中,Windows 系统的安装包往往是以 exe 可执行文件的形式发布。
在 Windows 系统中,除了提供 DLL 动态链接库以供调用,还可以通过加载静态库的方式使用库函数。而 FFmpeg 确实也提供了 DLL 动态链接库的版本,用户可以将它添加到 PATH 环境变量中,以供自己的程序调用。
不过把 FFmpeg 处理封装成兼容 Windows 的动态链接库并不是一个很好的选择。原因如下:
1. 动态链接库的依赖问题。很多时候,使用动态链接库更加灵活和方便,但是动态链接库的使用也存在一些问题,比如需要保证动态链接库的版本正确、依赖库是否存在等等,不利于代码运行和部署,而在 Windows 系统上,由于操作系统版本、NDK 版本等因素的影响,这种问题更加明显。
2. 可执行文件允许更多的控制。将 FFmpeg 集成到可执行文件内,可以更好地控制运行时环境,同时也可以提供 DLL 不具备的一些功能。而且对于开发者而言,可以更容易地封装和发布自己的程序,对用户也更加友好和便捷。
3. 简单易用。对于终端用户或开发者而言,下载一个 exe 文件显然比下载一个 dll 文件及其相应的依赖文件更加方便,也更容易快速上手使用。
综上所述,使用 exe 文件的方式将 FFmpeg 集成进程序中更为方便,也更加可靠,对于使用者而言,也更加实用。


还没有评论,来说两句吧...