一、爱好
这个是动力,如果你不爱Java,不爱计算机,而是喜爱游戏,娱乐或者其他的,你不适合做程序员。
如果你能在电脑前,一坐就是4-5个小时,你能为了学习而阅读英文的资料,那么你至少对编程是热爱的,具备了程序员的潜质。
二、学会取舍,用到什么就学什么
编程路上知识点甚多,你能掌握的永远是很少的一部分,新的技术不断出现,你难道能跟上? 相反,编程思想却是相对稳定的。
对于新手,到书店找一本入门的书,用最快的速度读一遍,不要超过3天。 记住,你不需要理解,因为你理解不了,你只需要对那些东西有个大概的意识,噢噢噢,好像有那么几页有这个东西,能达到这个效果就非常不错了。 千万不要一开始从第一章就仔细的看,那没用。
看完之后,找你最感兴趣的部分看,如果看不懂哪些内容,就去翻其他部分,然后马上返回。这部分看懂后,马上开机训练。
正确填写下方表单,免费领取web导学课,助你学技能
姓名
手机
提交
对于已经有经验的人,新知识你可以看看他的介绍,Release Note 或者一些评论性文章,然后看看自己手头有没有合适的工作可以用到,如果用不到,停止继续研究,如果能用到,则深入的看一遍他的文档,方法和前面一样,不能太细。 看完后,如果能运用,则开机尝试,并仔细的阅读即将使用到的部分。
Java 入门
入门书差不多!不要太细的看。
换一本,加深印象
回家,电脑上实践,或者找电子版的书!
三、技术服从于业务
技术是用来解决问题的,而不是用来炫耀的。当技术与业务有矛盾时,业务永远在第一位。
不要和业务人员过度的讨论(注意不是争吵)技术如何如何? 有什么技术难点无法满足业务需求之类的。
技术人员可以做出自认为很好的东西,但不一定能卖的出去。世界已经不再是好酒不怕巷子深的年代了。除非你真的有强的专利技术。
四、认识自己
不是每个人都能做到CTO,CEO的,金字塔的顶部的空间是很少的。由于家庭环境和个人性格不同,而高层领导的强项并不是在技术,而是在沟通和管理。也许你不服,也许你不甘心,但事实如此,只有付出更多的努力,才有可能往塔尖靠近,注意是有可能,不是一定。
五、学会总结
知识如果不用,就会被逐渐淡忘,当你需要的时候,如何能用最短的时间回复呢?那就是记笔记。blog很好,写在笔记本上也行,写在一个word文件里面也好。 总之,以你能很快的能找到为准。
六、身体是本钱
不多说了,大家都清楚。但会不自觉的违反这一条。呵呵!
七、正确理解学习过程
初学时,就是死记硬背,你只需要知道应该怎么样就可以了。
有一定经验后,你就需要知道,还能怎么样?
熟悉后,你应该知道为什么要这样?如果不这样会怎么样
精通,这个东西适合吗?如何选择呢?
初学:动手
掌握:动手又动脑
熟悉:动脑又动手
精通:动脑
八、学会正确的查找问题答案的方法
一搜二问三看看
先搜搜,坚信 你绝对不是第一个遇到这个问题的人
先到 google/baidu 搜索 选好关键字
到论坛或者群里面发问
学会平时积累,到处看看,经常有意外收获。n月前的难题可以轻松解决。
你的问题一定要有经过你思考了的。不要直接要全部代码和答案的那种。 至少我鄙视他们。没有人会花费那么多时间提供一个整套方案,就算付费的也得谈谈价钱,不合适的也不做。
比如:
我要做一个学生学籍管理系统,请提供思路和详细的解释,最好有源代码,100分送上
请问如何学好Java啊?我要学啥啊?
老师让明天交作业,哪位大哥给一份答案啊?
领导让做个库存管理软件 让我写需要 应该怎么写呢 大家帮帮我啊?
九、增加你的实战经验
你可以没做过,但一定要认真思考过。
你可能没做过什么像样的项目,至少你自己这么认为。其实不然,你做过的的项目虽然看上去小,但你可以遵循这样的目标来完善
去目标用户那里调研,了解真实的需求,不要停留在想象程度
单机版改成多用户版
C/S版增加B/S版,反之亦然
使用正式的数据库,而不是Access
完善你的程序,直到有人愿意出钱买你的程序(1元也算),因为这代表着他是一个真正能用的,能满足实际需求的程序了
去看看别人的项目代码,好多开源的项目。看看人家是怎么解决同样的问题的。
十、先学做人,后学做事
大家放眼望去会发现:大凡成功者,在谈到成功时,很少谈“做事”,而都在讲“做人”。因为不会做人,就不会做事,就会走上无为的一生,或走上大起大落坎坷艰难的不归之路。
一网友抱怨,技术总监用老掉牙的技术和思想指挥一个上千万的项目,他想按照规范来做,结果和总监发生争吵和冲突。 最后被总监提出,你辞职吧。
下面是我回复的内容,有点刻薄。
奉劝你一句,你有什么资格和你的直属最高领导吵架?????
1 意见不和,可以私下提,不要当面顶撞,这无济于事。如果我是老板,我也开除你。
2 技术要服从于业务,如果你总是对的,你为何不自己做老板?你能拉来几千万的项目?
3 既然大家谈不拢,和平离开就可以了。我估你们没有个人恩怨。不过目前好像有了。
我以前也和你一样,自己认为都是对的,可实际呢? 没有我们,地球照样转,人家几千万的项目照样做。
当你做老板,你的手下人每天都顶撞你时,你也会这么做。 历史上刚直不阿的人,大多是悲惨的下场。
社会就是这样,理想和现实是有差距的。
一、Java核心这是学习Java的基础,掌握程度的深浅甚至直接影响后面的整个学习进程。Java的核心主要包括几个部分:
1、初级的有语法基础、面向对象思想。
学习任何一门语言语法都是必须的,因为Java的接近自然语言,也是一种相对比较容易学的语言。同时面向对象编程更是其核心思想,要理解其实只要记住一句话就行了,那就是:一切皆是对象。
2、中级的IO流、多线程、反射及注解等。
IO流程、多线程等是相对比较高级一点的了,通过学习我们会发现这些都很有用而且很有趣。例如我们可以读取一个Excel文件、将一个文件分离,做一个时钟、使用多个线程发送邮件等等很多有意思的事。另外反射及注解更是后面流行框架SSH等的基础,在使用中你便会慢慢感受到它的无穷魅力。
3、高级一点的就是设计模式和框架之类了。
要学习好一门语言,仅仅会使用还是不够的,我们不仅要深入研究其原理,而且还要找到其一些共性的东西,从而减少反复的劳动,让代码可重用、更可靠且更容易被别人理解。
二、前端Web
现在来说Java最流行的应用还是Web开发。那么作为Web开发,对于前台的知识的学习也是必须的,当然并不是一定要按照前端工程师的标准去要求。但是一些基础的知识也是必须要掌握的,毕竟Web应用是前台和后台的一个交互的过程。像HTML、CSS、Javascript等都是基础的知识,另外作为开发人员对目前最流行的Javascript框架Jquery更是必学不可的。
三、数据库
有人说,所有的应用无非就是数据的输入、处理到输出的过程。期间同时可能还会涉及到数据的存储问题。对于结构化的数据,我们常用的还是像Oracle、Mysql和PostgreSQL之类的关系型数据库。同时针对数据库编程还是PL/SQL需要学习。使用Java访问数据库的话还有JDBC。那么对于非结构化的数据以及大数据该如何处理呢?其实这里也已经有了非常成熟的解决方案了,那便是Hadoop。就Hadoop而言他并不是一种思想,更多是一个实现了Mapreduce模式的框架。
四、J2EE
好了,前面这么多准备的工作。下面我们进入正题。作为Java开发,CoreJava是核心,而作为JavaWeb开发,我认为Servlet才是核心。Servlet是服务器端的Java应用程序,但是与普通的Java应用程序不同的是,它是由web服务器来加载启动,即我们常说的Servlet,如Tomcat便是servlet容器。另外谈到J2EE开发,这里有一个重要的模型不得不提一下,很多人其实已经想到了,那便是MVC(模型-视图-控制器)模型。在传统的web开发中,往往是JavaBean充当模型、JSP做视图而Servlet作为控制器。
五、框架
说到框架,其实已经提到了著名的MVC模型,SSH(Struts+Spring+Hibernate)就是一个非常好的实现。对于每一个框架的作用,我想就不用多说了,毕竟这里并不是想写一本教程。另外还有工作流开发的JBPM,搜索引擎Lucence及使系统对外提供接口的webservice应用组件等都是应该要掌握的。
六、服务器
关于服务器,像tomcat、jboss、weblogic及websphere等便不提了,因为太普遍了。这里要说的是Nginx,
Nginx ("engine x") 是一个高性能的 >
Java作为众多编程语言中最流行的语言之一,一直是人们学编程语言的首选,当下不少朋友听说学Java最好的办法就是参加Java培训,于是网上搜索了一下,发现有Java培训机构也有JavaEE培训机构,Java和JavaEE有什么区别吗很多朋友不解,那么就跟IT培训一起来理理它们之间的关系吧。
Java和JavaEE有什么区别吗
1Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。正式成立于1995年,广泛应用于人们的生活、工作、娱乐等等方面。
2Java分为三个版本:JavaSE(标准版)、JavaEE(企业版)、JavaME(微型版)。其中JavaSE就是大家学JavaEE和JavaME的基础,换而言之学Java先从JavaSE开始,JavaSE包含了支持JavaWeb服务开发的类,JavaEE是企业最常用的用于企业级开发应用的,JavaME主要是移动段的开发应用。
3通过以上,Java和JavaEE的区别在哪,就特别的明显了。那么为什么很多培训主打JavaEE培训呢是因为JavaEE在Java中,比JavaSE和JavaME应用更加广泛,价值更高,所以很多的培训机构就直接主打JavaEE培训,不过其他两个方面的Java知识也是要大致掌握的。
可以选择自学也可以选择培训班
自学的话现在网上有很多免费的视频教程,给你推荐一下我经常看的,高淇的Java300集,讲得还不错,比较容易理解,可以到b站搜一下。
报培训班的话,可以节省你大量的时间,并且学的会更扎实,有老师有同学,学习氛围更好,比自学更容易坚持下去。
在学习之前你应该了解Java语言的知识体系。可以帮助你更好的学习
一、JavaSE基础阶段面向对象编程(基础)
面向对象编程(进阶)
异常机制
Java常用类
数据结构和算法
集合(容器)
IO流
多线程
网络编程
集合提升训练
多线程提升训练
二、数据库阶段MySQL基础
MySQL 查询语句
数据库对象
JDBC
反射和注解
数据库建模和UML建模
设计模式
三、WEB前端JavaScript
jQuery
BootStrap
Vue
四、JavaEE阶段 (核心阶段)>
MVC 架构
Servlet
JSP
EL+JSTL+过滤器+监听器
Ajax和JSON
分页和文件上传/下载
五、JavaEE阶段(高级框架)Spring 522
SpringMVC 522
RBAC
EasyUI 170
支付/短信验证
六、框架强化Linux - CentOS 8
Maven
Logback
Quartz
Spring Boot 222
Shiro
Swagger
Git/GitEE
MyBatis
七、分布式架构Zookeeper
RPC
Dubbo
Redis
Solr
RabbitMQ
FastDFS
Nginx
Spring Security
Spring Session
MyBatis Generator
Mycat
八、微服务阶段ElasticSearch
MongoDB
Spring Cloud Netflix Eureka
Spring Cloud Netflix Ribbon
Spring Cloud OpenFeign
Spring Cloud Netflix Hystrix
Spring Cloud Config
Spring Cloud Gateway
Docker
K8S
LCN
祝你成功,程序员的世界欢迎你
Java是一门涵盖比较广的编程语言,自学起来相对比较困难,网上有视频资料,可以下载来看,下面我把Java入门需要学的一些东西做一个整理,仅供参考,有问题的话可以继续问我。
第一阶段:JavaEE初级JDK的下载安装配置、Eclipse开发工具介绍、Java基本程序的编译运行、关键字、标示符、注释、常量、变量、数据类型、进制转换、数据类型转换、各种运算符的使用、各种判断循环语句的使用、函数的使用、数组的使用
面向对象入门、用Java来描述对象、局部变量和成员变量、Java对象内存分析、匿名对象、封装、构造函数、Main函数详解、继承、重写、抽象类、接口、多态、内部类、异常、包机制、JAR包
StringBuffer类、Date和Calendar类,System类、Runtime类、Math类,正则表达式、基本数据类型包装类
集合类(Collection)、List、ArryList、LinkList、Vector、迭代器、Set、HashSet、TreeSet、LinkedHashSet、Map、HashTable、HashMap、TreeMap、泛型等各种数据集合的分析和使用
异常处理、多线程基础、IO系统、网络编程、Java反射机制、Java注解、JavaSE 80新特性SVN介绍、SVN服务端的安装及使用、SVN客户端的安装及使用、SVN团队开发注意事项
第二阶段:JavaEE进阶认识Web前端、常见标签及用途、选择器及分类、浮动、定位、表格和表单、HTML进阶、HTML5基础、HTML5新技术特点WebSocket、地理定位、canvas
CSS的作用、CSS的各种选择器、行内样式、内部样式、外部样式、选择器及样式的优先级问题、盒子模型、层的浮动、游览器调试工具的使用、采用DIV+CSS设计页面
BOM浏览器对象模型、DOM文档对象模型、JS *** 作CSS、JS *** 作DOM、JS *** 作DIV、protoype、js基于对象编程
jQuery基本技术、jQuery使用插件、jQuery EasyUI、jQuery mobile
Bootstrap基础知识、Bootstrap预定义的CSS样式、Bootstrap内置的布局组件、Bootstrap支持的JavaScript插件、Less、Sass、ChartJS、TwoJS、实际使用Bootstrap
MySQL55/56数据库、navicat客户端软件,基本建表、插入数据、修改数据、查询数据 *** 作、数据备份与移植
JDBC连接MySQL数据库,CRUD *** 作
XML的概念与基本作用、XML的基本语法、XML的约束模式、DTD、Schema、名称空间。XML解析介绍、DOM4J解析XML、XPath的使用
>
安装使用MyEclipse进行JavaEE程序开发和调试,以及和Tomcat的集成
什么是Servlet、Servlet接收客户端请求信息、Servlet响应客户端信息、Servlet的生命周期、Servlet过滤器和AOP编程;Servlet监听器
什么是JSP、JSP的内置对象、透析JSP的本质、JSTL+EL、JSP内置对象与状态管理
Tomcat和JDBC连接池配置、JDBC的事务、JSP整合进行分页,条件查询
MVC核心思想、MVC基本入门JSP+Servlet+Bean整合
AJAX技术基础、XML>
LoggingAPI日志管理、JUnit单元测试技术、Ant打包
第三阶段:JavaEE高级SpringWeb MVC介绍、Web MVC应用、Spring WebMVC架构、Spring MVC入门程序、非注解处理器映射器和适配器、注解开发处理器映射器和适配器、Spring MVC整合Mybatis、RequestMapping、Controller方法返回值、参数绑定(简单类型、pojo、包装类型、数组、集合类型等)、SpringMVC与Struts2区别、Spring MVC上传、json数据交互、Validation、异常处理器、RESTful支持、拦截器
Mybatis介绍、单独使用jdbc编程问题总结、Mybatis架构、Mybatis入门程序、Mybatis开发Dao、SqlMapConfigXML配置、ParameterType输入映射、ResultType及ResultMap输出映射、动态SQL、商品订单数据模型、关联查询(一对一、一对多)、Mybatis与Spring整合、Mybatis逆向工程
Spring框架介绍,IoC思想、DI依赖注入、Bean的实例方式、Bean种类、Bean作用域范围、依赖注入、p命名空间、SpELSpring表达式、注解装配Bean、整合Junit测试、Web开发集成Spring、AOP思想、使用AspectJ切面编程、JdbcTemplate模板使用、C3P0数据源配置、DBCP数据源配置、声明式事务管理、SSH整合
Struts2框架介绍、工作原理与架构分析、6大配置文件分析、StrutsXML详解及使用,使用通配符定义action、动态方法调用,ActionContext及ServletActionContext使用,模型驱动ModelDriven、属性驱动、Struts2文件上传、默认拦截器分析、自定义拦截器、OGNL表达式、值栈ValueStack分析及 *** 作、Struts2标签
学会基于SpringBoot实现减少XML配置,快速搭建Java Web项目,减少Java开发的笨重的工作量,减少项目周期
Maven的介绍、Maven的构建、Maven的依赖管理、Maven和Eclipse的整合、Maven构建SSM应用
Oracle基础管理,SQL语言、序列、索引、视图对象、数据备份与移植
第四阶段:JavaEE熟练基于JFreeChart生成饼图、曲线图、柱状图
基于iText生成pdf文件
基于POI组件生成EXCEL文件
Quartz定时任务管理器以及和Spring的继承
>
NIO介绍、netty入门
Activiti工作流:掌握工作流的基本概念,什么叫流程定义、什么叫流程实例、什么叫任务、工作流中的相关概念将如何应用
异构系统整合方案,JNI、CORBA、基于WebServices的中国电信消息系统规范介绍、SOAP、WSDL、UDDI、如何采用CXF/Axis2开发WebService服务器端和客户端的相关知识
git介绍、git版本管理。
掌握Linux的常用命令,熟悉Linux上下文编辑器,掌握Linux的文件管理控制等
Jboss\Weblogic企业级JavaEE应用服务器安装、配置
基本的Apache和Tomcat整合,最新的Tomcat和Apache集群和负载均衡配置
掌握Nginx负载均衡及和Tomcat的整合
掌握ActiveMQ消息队列的安装以及和Java的集成、JMS接口规范
MySQL主从配置、MySQL分库分表实际演练、MySQL集群配置
MongoDB安装,基本使用,和Java集成、Spring框架集成
Redis安装,基本使用,和Java集成、Spring框架集成
安卓基础开发:了解Android和开发环境搭建、Activity、UI布局和UI组件、AsyncTask异步任务、网络应用、资讯APP实战基于JFreeChart生成饼图、曲线图、柱状图
Java学习过程分为3个阶段分别解释一下:
1、首先要学习Java语言基础,数据类型、基本语法、常用数据结构、常用类,等等,网上资源很多。
2、结合工作内容或者兴趣方向,学习常用框架,比如Web开发常用SpringBoot,注意框架学习时要挑选当前的Top3,已经过时的或者太新还看不清楚未来的,都不适合新手学习。
3、随着学习进阶,逐步可以独当一面,在工作中积累项目经验、提高技术水平,现在技术发展迭代很快,终身学习。
Java知识点主要有以下这些。
1、Java归类总结
开发不同类别的应用会用到不同的知识点,以Web服务为例,总结如下表
借助于IT技术发展给予我们的便利,使得我们更能把有限的精力集中在业务开发上,通过实际项目历练,积累经验。
1)开发运行环境属于安装配置方面的基础工作,借助于Docker自动化一键部署,秒启这些依赖环境。
2)组件集成工作量比较大,也经常会遇到各种各样的奇葩问题,好在基本上都是一次性的工作,个人和团队经验也能逐步积累起来。
3)功能开发是每个行业和项目都不太一样的地方,开发过程中遵守软件工程规范,保证代码质量,少挖坑,稳扎稳打,逐步构筑起运行稳定的业务系统。
4)部署运维是日常工作,贯穿系统整个生命周期。云服务已经成为IT技术的中心,充分利用云服务和DevOps自动化,将有效提升工作效率。
2、Java详细知识点
1)Java语言基础:数据类型、语法、数据结构、常用类,等等
2)SpringBoot开发框架:项目基本架构,常用类,比如Controller,Service
3)数据库开发,MySQL,MyBatis,Flyway,AliDruid等框架
4)缓存系统,最常使用的Redis
5)消息队列,ActiveMQ,RocketMQ,RabbitMQ都比较常用,学习一个就够了。
6)文件服务,上传下载,云存储服务接入方法,调用SDK
7)鉴权认证,控制接口访问权限,用户登录等。
8)异步任务调度,使用Quartz框架异步执行复杂耗时任务
9)日志系统,LogBack,LogStash的集成配置方法
10)服务监控,集成Actuator,ZooKeeper等框架实现信息收集
11)更多具体行业应用开发,比如大数据、AI、IoT、区块链等
以上是本文介绍的Java学习攻略,希望对于学习Java的你有所帮助。
ResultSet 啊 一般定义的时候 就是ResultSet rs =null;rs= 你那个执行sql返回的值然后就是while(rsnext){ 这里就是你具体的 *** 作,有值就爱干嘛干嘛。}使用ResultSet对象的next方法把游标指针向下移动,用while循环依次取出数据,就可以了。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)