Ⅰ 零基础如何自学java编程并找到一份工作
作为一个初学者想转行学习Java并不是很容易,虽然Java是最适合初学者的编程语言,但是Java本身也具有一定的难度,刚刚进入Java领域的新同学,无论是高校的毕业大学生,还是有志转行的在职人员,都面临着诸多的困惑。
其实学习Java首先是兴趣。兴趣是学习的最好老师,而我们最大的困难是在于克服自己。只要你有恒心,学好Java并不难,就算你没有基础,没有经验,没有任何概念,也能学会学好。当你选择前来学习之时,是否已是做好了准备呢。
首先学好Java的基础Javase,理解好面相对象编程是你学好Java的重中之重。然后就是数据库和JDBC。JAVAweb内容包含html,css,JavaScript,jQuery,ajax,jsp,servlet,xml等熟练掌握理解ssm和ssh框架。
学习时要注意,学习编程基础知识,弄懂每一个知识点,不要刻意追求快速,扎实的基础更重要。动手练习不要追求行数,要追求代码质量尽量减少常识性错误,从基础养成良好习惯。学习编程,动手写代码,刚开始最好一个字母一个字母巧上去,不要拷贝粘贴。编程学习重要的是编程思维的训练,学会将编程思维带入现实问题中。每个练习在写代码之前,在脑中有整体的实现计划,然后动手编码。
以上的回答希望对你有所帮助
Ⅱ java零基础入门书籍有哪些值得推荐
四大名著之《Java核心技术(第10版)》
提起Java入门必读,四大名著是少不了的。《Java 核心技术》就是其中之一,分卷一、卷二两册,卷一讲基础,卷二为进阶。全书对于Java语言的核心概念、语法、重要特性和开发方法讲解地非常细致,可以说是一部有关Java的网络全书。
四大名著之《EffectiveJava中文版(第 2 版)》
“神书”、“整本书都是精华”、“内容永不过时”、“Java 程序员必读”……这些标签都是属于《Effective Java中文版》的。
这本书不是讲理论基础的,而是讲实战的。书中介绍了78条极具实用价值的经验规则,涵盖了大多数开发人员每天所面临的问题的解决方案,并且通过代码例子进一步进行佐证,让你知其然,也知其所以然。
哪怕不是Java程序员,也能买来看看,书中绝妙的编程观是跨语言、跨平台的。
四大名著之《Java 编程思想(第 4 版)》
这同样是一本Java领域的经典书籍,从Java编程的基础知识点开始讲起,慢慢深入,一直到Java的高级特性。作者用了大量通俗易懂的代码对理论进行佐证,让读者在实际操作中可以深入理解操作符、枚举类型、接口等相关知识。
这是一本被广大读者评价为“不管什么时候阅读都会有收获”的书,不论你是否刚接触 Java,都可以在阅读中获得启迪。
《深入理解Java虚拟机:JVM 高级特性与最佳实践(第 2 版)》
用Java却不懂JVM是说不过去的,但市面上有关JVM 的书很少,这本书更是少有的国内讲解此方面备受好评的书,甚至可以说是JVM书籍最好的读物之一。
本书整体内容更偏向实战,难易适中。从内存管理、执行子系统、程序编译与优化、高效并发等核心主题讲解JVM。第2版根据JDK1.7进行了内容升级,整体上不光适合入门,而且对于已经接触JVM的人来说,也会常读常新。
《Java语言程序设计(基础篇)(原书第 10 版)》
这应该是很多程序员,尤其是Java程序员倍感亲切的书,因为这本书可以说是他们当中很多人的入门初心。
本书从最基本的程序理论知识出发,哪怕你完全没有Java基础,也可以通过这本书了解Java基本的程序设计、语言结构、面对对象程序设计等知识。书中还配了大量的代码和课后习题,让读者在了解有关Java的基础知识的时候,也能进行实践深入理解。
非常适合零基础、Java 和编程爱好者来读。
《Java 高并发编程详解:多线程与架构设计》
全书主要分为四个部分:第一部分主要阐述Thread的基础知识;第二部分引入了 ClassLoader;第三部分详细、深入地介绍volatile关键字的语义;第四部分也是最重要的一部分,站在程序架构设计的角度深入讲解了如何设计高效灵活的多线程应用程序。
上述就是推荐的几本学Java要看的书籍。
Ⅲ java如何做高级爬虫
下面说明知乎爬虫的源码和涉及主要技术点:
(1)程序package组织
(2)模拟登录(爬虫主要技术点1)
要爬去需要登录的网站数据,模拟登录是必要可少的一步,而且往往是难点。知乎爬虫的模拟登录可以做一个很好的案例。要实现一个网站的模拟登录,需要两大步骤是:(1)对登录的请求过程进行分析,找到登录的关键请求和步骤,分析工具可以有IE自带(快捷键F12)、Fiddler、HttpWatcher;(2)编写代码模拟登录的过程。
(3)网页下载(爬虫主要技术点2)
模拟登录后,便可下载目标网页html了。知乎爬虫基于HttpClient写了一个网络连接线程池,并且封装了常用的get和post两种网页下载的方法。
(4)自动获取网页编码(爬虫主要技术点3)
自动获取网页编码是确保下载网页html不出现乱码的前提。知乎爬虫中提供方法可以解决绝大部分乱码下载网页乱码问题。
(5)网页解析和提取(爬虫主要技术点4)
使用Java写爬虫,常见的网页解析和提取方法有两种:利用开源Jar包Jsoup和正则。一般来说,Jsoup就可以解决问题,极少出现Jsoup不能解析和提取的情况。Jsoup强大功能,使得解析和提取异常简单。知乎爬虫采用的就是Jsoup。 ...展开下面说明知乎爬虫的源码和涉及主要技术点:
(1)程序package组织
(2)模拟登录(爬虫主要技术点1)
要爬去需要登录的网站数据,模拟登录是必要可少的一步,而且往往是难点。知乎爬虫的模拟登录可以做一个很好的案例。要实现一个网站的模拟登录,需要两大步骤是:(1)对登录的请求过程进行分析,找到登录的关键请求和步骤,分析工具可以有IE自带(快捷键F12)、Fiddler、HttpWatcher;(2)编写代码模拟登录的过程。
(3)网页下载(爬虫主要技术点2)
模拟登录后,便可下载目标网页html了。知乎爬虫基于HttpClient写了一个网络连接线程池,并且封装了常用的get和post两种网页下载的方法。
(4)自动获取网页编码(爬虫主要技术点3)
自动获取网页编码是确保下载网页html不出现乱码的前提。知乎爬虫中提供方法可以解决绝大部分乱码下载网页乱码问题。
(5)网页解析和提取(爬虫主要技术点4)
使用Java写爬虫,常见的网页解析和提取方法有两种:利用开源Jar包Jsoup和正则。一般来说,Jsoup就可以解决问题,极少出现Jsoup不能解析和提取的情况。Jsoup强大功能,使得解析和提取异常简单。知乎爬虫采用的就是Jsoup。
(6)正则匹配与提取(爬虫主要技术点5)
虽然知乎爬虫采用Jsoup来进行网页解析,但是仍然封装了正则匹配与提取数据的方法,因为正则还可以做其他的事情,如在知乎爬虫中使用正则来进行url地址的过滤和判断。
(7)数据去重(爬虫主要技术点6)
对于爬虫,根据场景不同,可以有不同的去重方案。(1)少量数据,比如几万或者十几万条的情况,使用Map或Set便可;(2)中量数据,比如几百万或者上千万,使用BloomFilter(著名的布隆过滤器)可以解决;(3)大量数据,上亿或者几十亿,Redis可以解决。知乎爬虫给出了BloomFilter的实现,但是采用的Redis进行去重。
(8)设计模式等Java高级编程实践
除了以上爬虫主要的技术点之外,知乎爬虫的实现还涉及多种设计模式,主要有链模式、单例模式、组合模式等,同时还使用了Java反射。除了学习爬虫技术,这对学习设计模式和Java反射机制也是一个不错的案例。
4. 一些抓取结果展示收起
Ⅳ 如何用JAVA写一个知乎爬虫
下面说明知乎爬虫的源码和涉及主要技术点:
(1)程序package组织
(2)模拟登录(爬虫主要技术点1)
要爬去需要登录的网站数据,模拟登录是必要可少的一步,而且往往是难点。知乎爬虫的模拟登录可以做一个很好的案例。要实现一个网站的模拟登录,需要两大步骤是:(1)对登录的请求过程进行分析,找到登录的关键请求和步骤,分析工具可以有IE自带(快捷键F12)、Fiddler、HttpWatcher;(2)编写代码模拟登录的过程。
(3)网页下载(爬虫主要技术点2)
模拟登录后,便可下载目标网页html了。知乎爬虫基于HttpClient写了一个网络连接线程池,并且封装了常用的get和post两种网页下载的方法。
(4)自动获取网页编码(爬虫主要技术点3)
自动获取网页编码是确保下载网页html不出现乱码的前提。知乎爬虫中提供方法可以解决绝大部分乱码下载网页乱码问题。
(5)网页解析和提取(爬虫主要技术点4)
使用Java写爬虫,常见的网页解析和提取方法有两种:利用开源Jar包Jsoup和正则。一般来说,Jsoup就可以解决问题,极少出现Jsoup不能解析和提取的情况。Jsoup强大功能,使得解析和提取异常简单。知乎爬虫采用的就是Jsoup。
(6)正则匹配与提取(爬虫主要技术点5)
虽然知乎爬虫采用Jsoup来进行网页解析,但是仍然封装了正则匹配与提取数据的方法,因为正则还可以做其他的事情,如在知乎爬虫中使用正则来进行url地址的过滤和判断。
(7)数据去重(爬虫主要技术点6)
对于爬虫,根据场景不同,可以有不同的去重方案。(1)少量数据,比如几万或者十几万条的情况,使用Map或Set便可;(2)中量数据,比如几百万或者上千万,使用BloomFilter(著名的布隆过滤器)可以解决;(3)大量数据,上亿或者几十亿,Redis可以解决。知乎爬虫给出了BloomFilter的实现,但是采用的Redis进行去重。
(8)设计模式等Java高级编程实践
除了以上爬虫主要的技术点之外,知乎爬虫的实现还涉及多种设计模式,主要有链模式、单例模式、组合模式等,同时还使用了Java反射。除了学习爬虫技术,这对学习设计模式和Java反射机制也是一个不错的案例。
4. 一些抓取结果展示
Ⅳ 如何用Java写一个爬虫
下面说明知乎爬虫的源码和涉及主要技术点:
(1)程序package组织
(2)模拟登录(爬虫主要技术点1)
要爬去需要登录的网站数据,模拟登录是必要可少的一步,而且往往是难点。知乎爬虫的模拟登录可以做一个很好的案例。要实现一个网站的模拟登录,需要两大步骤是:(1)对登录的请求过程进行分析,找到登录的关键请求和步骤,分析工具可以有IE自带(快捷键F12)、Fiddler、HttpWatcher;(2)编写代码模拟登录的过程。
(3)网页下载(爬虫主要技术点2)
模拟登录后,便可下载目标网页html了。知乎爬虫基于HttpClient写了一个网络连接线程池,并且封装了常用的get和post两种网页下载的方法。
(4)自动获取网页编码(爬虫主要技术点3)
自动获取网页编码是确保下载网页html不出现乱码的前提。知乎爬虫中提供方法可以解决绝大部分乱码下载网页乱码问题。
(5)网页解析和提取(爬虫主要技术点4)
使用Java写爬虫,常见的网页解析和提取方法有两种:利用开源Jar包Jsoup和正则。一般来说,Jsoup就可以解决问题,极少出现Jsoup不能解析和提取的情况。Jsoup强大功能,使得解析和提取异常简单。知乎爬虫采用的就是Jsoup。
(6)正则匹配与提取(爬虫主要技术点5)
虽然知乎爬虫采用Jsoup来进行网页解析,但是仍然封装了正则匹配与提取数据的方法,因为正则还可以做其他的事情,如在知乎爬虫中使用正则来进行url地址的过滤和判断。
(7)数据去重(爬虫主要技术点6)
对于爬虫,根据场景不同,可以有不同的去重方案。(1)少量数据,比如几万或者十几万条的情况,使用Map或Set便可;(2)中量数据,比如几百万或者上千万,使用BloomFilter(著名的布隆过滤器)可以解决;(3)大量数据,上亿或者几十亿,Redis可以解决。知乎爬虫给出了BloomFilter的实现,但是采用的Redis进行去重。
(8)设计模式等Java高级编程实践
除了以上爬虫主要的技术点之外,知乎爬虫的实现还涉及多种设计模式,主要有链模式、单例模式、组合模式等,同时还使用了Java反射。除了学习爬虫技术,这对学习设计模式和Java反射机制也是一个不错的案例。
4. 一些抓取结果展示
Ⅵ 如何用Java写一个知乎爬虫
神箭手有现成的知乎爬虫可以直接使用哦~

Ⅶ 如何从零基础开始写一个关于搜索知乎答案的python爬虫
http://www.imooc.com/view/563
Ⅷ 零基础能学习java吗
第一阶段:企业入门级项目阶段,可掌握Java核心基础、面向对象、JavaSE API、MySQL数据库、JDBS、HTML+CSS、Servlet、JSP、JavaScript等,可以完成常见中小型互联网项目开发,达到初级Java开发工程师能力。
第二阶段企业框架级项目阶段是进阶阶段,增强Java基础、web基础、CSS/JavaScript进阶、Maven项目管理、Spring5、SpringMVC、Mybatis、SMM综合项目、学员项目等,完成本阶段学员可以胜任各行业企业级项目中高级工程师岗位。
第三阶段亿级大并发分布式项目阶段,掌握Linux、Docker、Vue、SpringBoot、项目整合Vue、分布式项目、Zookeepr、Dubbo、Springcloud、Redis、Elasticsearch、Quartz、RocketMQ、FastDFS、Mycat、CAS、分布式锁、分布式事务、微信开发、学生项目等,学员学完后可以胜任大型、超大型互联网项目开发高级工程师岗位。
初学Java虽然有一定的难度,但Java学习并不是不可逾越,只要你明确方向,找到有效的学习方法,坚持学习,一定能攻克Java难关,成为一名合格的Java开发工程师。如果你是零基础自学,那么所花费的时间与精力是不可估计的。 如果系统学习5个月的时间可以帮助你快速成长。
Ⅸ 零基础自学java能找到工作吗
总的来说,要是真的一点基础都没有(至少学过C什么吧?),学起来比较困难。回。
而且光学java是不够的,要答找工作,还要会数据库,web前端开发,各种开源框架等等
最好的办法就是找培训班,学费一万多,学时半年左右。很多人都是这些培训班出来的,我也是
如果你非要自学,也是没有问题的,建议你买书+看视频,还有就是一定要动手打代码,但是效率要慢很多,遇到问题也不好解决,在学校有老师同学可以交流
如果你不算太笨,坚持半年多下来,也就可以找工作了吧。
Ⅹ 零基础学习Java的书籍有哪些,请推荐,谢谢
入门类
1.《java从入门到精通》(第3版)
【内容介绍】
本书从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Java语言进行程序开发应该掌握的各方面技术。全书共分28章,包括:初
识Java,熟悉Eclipse开发工具,Java
语言基础,流程控制,字符串,数组,类和对象,包装类,数字处理类,接口、继承与多态,类的高级特性,异常处理,Swing程序设计,集合类,I/O输入
输出,反射,枚举类型与泛型,多线程,网络通信,数据库操作,Swing表格组件,Swing树组件,Swing其他高级组件,高级布局管理器,高级事件
处理,AWT绘图与音频播放,打印技术和企业进销存管理系统等。所有知识都结合具体实例进行介绍,涉及的程序代码给出了详细的注释,可以使读者轻松领会
Java程序开发的精髓,快速提高开发技能。
【推荐理由】
本书内容详尽,实例丰富,非常适合作为编程初学者的学习用书,也适合作为开发人员的查阅、参考资料。
2.《java核心技术卷一》
【内容介绍】
本书是Java技术经典参考书,多年畅销不衰,第7版在保留以前版本风格的基础上,涵盖Java2开发平台标准版J2SE5.0的基础知识,主要内容包
括面各对象程序设计、反射与代理、接口与内部类、事件监听器模型、使用Swing
UI工具箱进行图形用户界面设计,异常处理、流输入/输出和对象序列化、泛型程序设计等。本书内容翔实、深入浅出,附有大量程序实例,极具实用价值,是
Java初学者和Java程序员的必备参考书。
【推荐理由】
本书出版以来,深受广大读者的喜爱,它全面介绍了Java SE的基础知识,不但具有使用价值,而且易于阅读,易理解,它必成为想进军Java和基础薄弱同学的不二之选。
3.《java编程语言》
【内容介绍】
本书以Java语言创建者的独特视角向读者展现了为什么以及如何使用Java语言,以便读者理解Java语言的基本设计目标以及它在现实世界中的应用。
本书介绍的是Java语言的最新版本,该版本在《Java Language Specification,Second
Edition》中定义,在Java2SDK1.3标准版中实现。本书已是第三版,在经构上相对前两版有所调整,重点讲述了新的语言特征,并提供了新
API的使用实例。本书完全覆盖了Java语言当前版本的特征和类库,可以作为Java语言的入门向导,也可作为高级Java开发及Java语言教学的参
考用书。
【推荐理由】
本书介绍的是Java语言的最新版本,该版本在《Java
Language Specification,Second
Edition》中定义,在Java2SDK1.3标准版中实现。本书已是第三版,在经构上相对前两版有所调整,重点讲述了新的语言特征,并提供了新
API的使用实例。本书完全覆盖了Java语言当前版本的特征和类库,可以作为Java语言的入门向导,也可作为高级Java开发及Java语言教学的参
考用书。
进阶类
1.《java编程思想》
【内容介绍】
本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、JavaI/O系
统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容,包含了Java语言基础语法以及高级特性,适合各个层次的Java程序员阅读,同时也是高
等院校讲授面向对象程序设计语言以及Java语言的绝佳教材和参考书。
【推荐理由】
本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在BruceEckel的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。
2.《java核心技术卷二》
【内容介绍】
《JAVA核心技术卷2:高级特征》是Java技术权威指南,全面覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、高级
Swing、高级 AWT、JavaBean构件、安全、分布式对象、脚本、编译与注解处理等,同时涉及本地化、国际化以及Java SE
6的内容。《JAVA核心技术卷Ⅱ:高级特征》对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例,从而帮助读者充分理解Java语言以及
Java类库的相关特性。
【推荐理由】
本书是经典的《Java核心技术,卷II:高级
特性》的最新修订版,涵盖了Java
SE6平台的高级用户界面程序设计和企业特性。与第1卷(涵盖了核心的语言和类库特性)一样,本卷已经更新到了JavaSE6。并且对新内容都作了重点标
注。书中所有的示例程序都进行了详细的设计,用来演示最新的编程技术。并展示针对专业开发者在现实中所碰到的典型问题的最佳解决方案。本书包含有关
StAXAPI、JDBC
4、编译器API、脚本框架、闪屏和托盘API以及其他许多JavaSE6改进特性的新章节。本书聚焦于Java语言中更高级的特性,包括下列内容:流与
文件、网络、数据库编程、XML、JNDI与LDAP、国际化、高级GUI组件、Java2D、JavaBeans、安全、RMI与Web服务、高级
AWT、注解、本地方法。
3.《疯狂java讲义》
【内容介绍】
本书深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处
理、Java
GUI编程、JDBC数据库编程、Java注释、Java的IO流体系、Java多线程编程、Java网络通信编程和Java反射机制。共覆盖了
java.awt、java.lang、java.io和java.nio、java.sql、java.text、java.util、
javax.swing包下绝大部分类和接口。
【推荐理由】
本书并不单纯从知识角度来
讲解Java,而是从解决问题的角度来介绍Java语言,所以本书中介绍了大量实用案例开发。这些案例既能让读者巩固每章的知识,又可以让读者学以致用、
激发编程自豪感,进而引爆内心的编程激情。本书光盘里包含书中所有示例的代码,如果读者希望获得课后练习的程序代码。
本书为所有打算深入掌握Java编程的读者而编写,适合各种层次的Java学习者和工作者阅读,也适合作为大学教育、培训机构的Java教材。但北大青鸟光谷校区专业老师认为,如果只是想简单涉猎Java,则本书过于庞大,不适合阅读。
JavaEE类
1.《javaWeb整合开发王者归来》
【内容介绍】
本书全面介绍了Java Web开发中的各种相关技术及知识。全书分为9篇,内容层次清晰,难度循序渐进。第1篇为入门篇,内容包括Java
Web开发概述等;第2篇为基础篇,内容包括Servlet技术、JSP技术、会话跟踪、过滤器Filter、监听器Listener等;第3篇为高级
篇,内容包括JSTL标签库的使用、如何自定义标签、资源国际化、数据库概述、JDBC详解、XML概述等;第4篇为Struts框架篇,内容不仅包括
Struts 1.x的内容,也包括Struts
2.x中的内容;第5篇为Hibernate框架篇;第6篇为Spring框架篇;第7篇为EJB与Web服务篇,内容包括EJB
3概述、JPA规范Web服务框架XFire等;第8篇为工具篇,内容包括在Java
Web项目中常用的开源工具框架、主要有版本管理工具SVN、日志工具commons-logging与Log4J、报表图形引擎JFreeChart、
PDF组件iText等;第9篇为实战篇,内容为两个典型的应用系统:论坛系统(Spring+Struts+Hibernate)、宠物商店(EJB
3+JPA+Struts 2)。
【推荐理由】
资深Java程序员耗时一年时间写作,十年开发经验毫无保留。全面、系统、深入介绍Java Web开发的核心技术与主流框架。
2.《spring 入门到精通》
【内容介绍】
本书由浅入深,循序渐进地介绍了Spring的体系结构和相关知识点,目的是帮助初学者快速掌握Spring,并能使用Spring进行应用程序的开
发。本书最大的特色在于每章都是由浅入深,从一个简单的示例入手,让读者快速了解本章内容,然后再详细讲解本章涉及的基本原理和知识点,最后再通过一个详
细的示例宋巩固所学内容。本书每一章的例子都是经过精挑细选,具有很强的针对性,力求让读者通过亲自动手做而掌握其原理和方法,从而学习尽可能多的知识。
本书适用于初、中级软件开发人员,同时也可用作高校相关专业师生和社会培训班的教材。
【推荐理由】
全书共分14章,内容涵盖了Spring的基础概念、核心容器、Spring
AOP、事务处理、持久层封装、Web框架、定时器、Spring和Struts、Spring和Hibernate、Spring和Ant、
Spring和Junit。本书适用于初、中级软件开发人员,同时也可用作高校相关专业师生和社会培训班的教材。
3.《JavaWeb开发详解》
【内容介绍】
本书共分4部分,从XML、Servlet、JSP和应用的角度向读者展示了Java Web开发中各种技术的应用,循序渐进地引导读者快速掌握Java Web开发。
【推荐理由】
本书内容全面,涵盖了从事Java Web开发所应掌握的所有知识,在知识的讲解上本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。