java入门基础课程

lcywuwuwu      2022-04-03     246

关键词:

初级篇

最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好。原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都是站在Java后端的全局上进行思考和总结的,忽略了很多小白们的感受,而很多朋友都需要更加基础,更加详细的学习路线。

所以,今天我们重新开一个新的专题,分别按照四篇文章讲述Java的学习路线(分别是入门篇,初级篇,中级篇,高级篇),笔者也打算趁此机会,回忆一下自己的Java学习历程。今天我们要讲的是,小白同学如何入门Java。

先声明一点,文章内容不会详细到每一步怎么操作,只会提供大致的思路和方向,给大家以启发,如果真的要一步一步指导操作的话,那至少需要一本书的厚度啦。

本文所述的方法不一定适合所有人,如有错误敬请谅解。

 

01

Java Web项目指南

在之前的文章中,我们讲到了入门Java的几个步骤,先搭建好环境,然后熟悉基本语法,接着熟悉Java的一些核心技术,并且在代码中进行实现。

如果你已经完成了这部分内容的学习,应该会感觉自己对Java已经有一定了解了,可以轻松地写出一些Java代码,比如实现多线程输出数字,再如操作IO流等等。

当然,这些代码通常只是一些demo,我们在实际的项目中可能并不会这么简单地使用这些技术,我们可能会同时使用集合类,多线程,以及操作数据库的API。

所以,在今天的初级篇中,我们就来谈谈怎么做项目吧。

PS:如果你想获得大神指导,或者随时与我交流,可以加入我的Java学习交流Q群:

技术图片

 

Java Web项目

对于大部分Java新手来说,最适合他们入门的项目就是Java Web了。因为Java天然适合做Web应用,并且生态完善,更有很多开源的工具和框架去支撑这些应用,比如Spring,Hibernate,SpringMVC等等。

那么,如何开始着手做一个Java Web项目呢。个人认为最好的方式就是看视频了。因为,看书的话,很多内容比较过时,并且一般不会提供源代码。也有一些大佬喜欢推荐开源的项目(在GitHub上面的项目),但是对于小白来说,如果没有很完整的文档去指导他们,那也是毫无意义的。

曾几何时,Java Web的项目还在使用JSP + Servlet进行开发,后来出现了Struts2,再后来,出现了我们现在也一直在用的SpringMVC,说实话,不论使用哪种开发框架,你都需要先花一些时间去学习相关的技术,否则你会发现,即使是看视频,你也不知道里面在讲什么。

要想做好一个JavaWeb项目,你不仅需要一个好的项目课程,还需要足够的知识储备,下面就让我们来理一理这些内容把。

知识储备

Java基础部分的内容咱们上次说过了,这里就不再重复啦~下面我们分别来说说其他几方面的知识储备把

 

02

前端知识

推荐资源:在w3cschool学习html,css和js,支持在线测试代码。

既然是做Web,就难免要涉及到前端技术,不过,现在前后端分离已经是一种趋势,所以,如果你对前端不感兴趣,也没必要花太多时间去学习。

对于大部分同学来说,你最好要了解html的基本标签和格式,自己能够写一些简单页面,CSS的话,也可以稍微接触一些。相对于前面两个服务于样式的技术,我们倒是更应该去学习一下JavaScript,了解它的一些基本语法,以及ajax的使用,因为在前后端交互时,ajax是非常重要的。

所以,做一个Java Web项目,你不需要花太多时间在写前端页面上,如果有源代码可以直接使用,当然,对于一些需要修改的前端页面,你得怎么去做修改它,因为有时候你需要使用JSP,JSP既包括前端代码也包括Java代码,如果你完全看不懂前端代码的话,那就很尴尬了。

03

Java Web常用技术

JavaWeb的技术栈其实比较庞大,所以我们不要求面面俱到,只是希望你能够熟悉一下项目中可能用到的技术。下面列举一些常见的技术,大家最好要了解一下。

1 JSP和Servlet

推荐资源:《JavaWeb入门到精通》、JavaWeb基础课程

这是Java Web开发最原始的形态,现在很少直接使用了,但是后来的各种框架其实也是建立在servlet之上来做的。你们需要了解这两个技术分别是用来干什么的,最好能写一些demo来实践。

对于JSP,有时候你可能还要学习jstl等标签语言,因为这些标签可以让你更方便地往JSP中插入Java代码。

2 Spring和SpringMVC

推荐资源:《Spring实战》、SpringMVC基础课程。

事实上,除了上述资源之外,你也可以直接到官网上查看快速开始文档。

Struts2早已被时代抛弃,Spring则是当今的霸主,你需要了解Spring如何使用,以及SpringMVC如何使用,并且学会在项目中使用它。

由于SpringBoot最近很火,并且搭建方式比SpringMVC更简单,你也可以先学习SpringBoot,以便更快速地搭建起你的第一个Java Web项目。

3 MySQL

推荐资源:《Sql必知必会》,Runoob上的MySQL基础教程

一个JavaWeb应用一定要有数据啊,所以我们需要用到数据库,其实搭一个mysql数据库是非常简单的,但是对于初学者来说最麻烦的就是写sql了,所以,先学会建表,熟悉sql,对你以后做项目也是大有裨益的。

4 Hibernate和Mybatis

推荐资源:Runoob上的Hibernate和Mybatis基础教程

当你学会了使用sql去查询数据,可能还不足以让你在项目中很方便地处理数据,因为我们还需要一个步骤,就是把数据库的数据转化成Java里的对象。orm框架就是为了解决这一问题而出现的,它可以让一张表和Java类一一对应,让数据查询变得非常方便。Hibernate和Mybatis都是orm框架,只不过现在mybatis越来越火了。

所以,你需要了解这一技术,因为它会广泛地运用到大部分Java Web项目中。

5 Maven

推荐资源:《maven实战》,maven教程

刚才咱们已经说过了Spring,orm框架,以及MySQL等方面的技术了。实际上,一个简单的Java Web项目也只需要这些东西了。

但是,有一个问题,就是:一个项目里用到这么多技术,所需要的jar包也会很多,我们如何管理这些jar包呢。如果直接导入所需jar包,那当jar包更新或者需要替换时,每次都要手动操作,非常麻烦。另外,当jar包很多时,项目打包后的war格式文件也会很大,不利于传输。

为了解决上述问题,maven应运而生了。maven通过pom.xml文件来指定所需的jar包,并且自带了很多构建相关的功能,比如编译,打包,运行单元测试等等,因为它本身就是一个构建工具。

当然,新手可能还难以理解这些概念,你必须要知道的是,大部分Java Web项目需要用maven来管理,你需要学会maven的基本用法,最基本的用法就是:学会修改pom.xml文件。

6 Tomcat

对于小白来说,Tomcat相关的技术是非常复杂的,毕竟它是一个应用服务器啊,事实上这个时候,你只需要学会如何安装Tomcat即可。毕竟,它在项目中的作用就是提供一个运行环境而已。

正常来说,你只要下载解压Tomcat的压缩包即可。由于现在的IDE都支持集成Tomcat,所以一般情况下你都可以在IDE中配置好你的Tomcat路径,然后设置好你的项目路径,IDE会自动把你的工程代码部署到Tomcat服务器上。

如果你使用想跳过IDE直接部署工程到Tomcat上,也可以直接编译工程并且打包得到war格式的文件(这个步骤可以使用maven来完成),然后拷贝war文件到Tomcat下的特定目录即可。

上述两种部署方式的详细步骤请到搜索引擎寻找答案。

7 Git和GitHub

推荐资源:Git教程,GitHub官网上的视频课程。

既然要做项目,为什么不把它发布在GitHub上。当你熟悉了Git指令之后,你可以很方便地发布你项目中的每一次更新,并且同步到GitHub上,这样既可以让你更好地管理项目版本,又可以让你GitHub更加活跃,为你未来的面试加分。

所以,赶紧学好Git指令,然后开启你的项目之旅吧。

04

其他常用组件

除了上面几种必备的技术之外,有时候我们在项目中还会用到其他东西,在这里我们把它们叫做组件。这里只做简单的介绍,至于具体怎么使用,在网上都可以很容易地找到相关文章。

1 日志系统

当项目代码比较多的时候,容易发生错误,日志可以很好地记录代码运行时的错误,常用的日志系统有log4j,logging等等,另外你还需要了解一下slf4j。

2 单元测试

日志系统可以记录代码问题,单元测试则是为了避免代码出错,常用的单元测试组件主要是JUnit,建议你找个文档看一看,然后下载下来玩一下。

3 JSON

JSON逐渐成为前后端数据交互的标准格式,为了在项目中使用JSON的API,你也需要导入它的jar包,一般我们都会使用阿里提供的fastjson,赶快下载来玩一玩吧。

当然,常用的Java Web组件还有很多,比如HTTPClient,再比如一些加密工具,一些压缩工具等等,这里就不再一一列举了。

05

推荐项目课程

现在网上的项目课程那么多,哪一款更适合你呢?

其实我看过的视频课程也不是很多,早先在网上看过一些项目课程,觉得比较一般,对新手来说不太友好。

我的一些同学看过一些培训机构的课程,专业讲师录的项目课程可能会稍微好一点。

当然,你也可以自己去找一些你感兴趣的项目课程,后续我也会收集更多的视频课程来分享给大家。

PS:如果找不到我说的这些资源,也可以加入我的学习交流Qq裙:927296445,群里面还有我这段时间整理的一些Java学习手册,面试题,开发工具,PDF文档书籍教程,需要的话都可以进来自行下载。(图中只是一部分)

技术图片
技术图片

 

06

总结

今天的内容就到这里了,与其说是初级篇,反而更像是“项目篇”呢。因为学完基础内容之后,做项目是最好的复习和实践方式了。所以这篇文章围绕着做项目来展开,也就不足为奇了。

今天我们主要讲的是,做好一个JavaWeb项目,需要哪些知识储备,需要了解哪些技术,并且我也推荐一些比较精品的视频课程。

后面我还会写一篇文章,专门讲一讲怎么做项目,会更加详细,更加侧重怎么去做,敬请期待吧。

总结以下今天说的几个要点吧:

1 Java基础知识储备

2 前端知识储备

3 了解和使用JavaWeb常用技术

4 JavaWeb常用组件介绍

5 视频课程推荐

俗话说的好,磨刀不误砍柴工,相信你看了本文之后,可以更好地做好知识储备,然后开始Java Web的项目实践,希望你能够顺利地完成你的第一个项目。

— END —

▼更多精彩内容

Java自学路线(史上最详细)

零基础学Java是选择自学?培训?(内附学习路线+免费学习地址)

JAVA可以从事哪些岗位

给Java初学者的建议(附学习大纲)
 
 

 

java排序算法-java入门|java基础课程

Java排序算法1、课程目标排序是任何语言都会使用到的功能之一,然成果排序的算法有很多,对空间的要求及其时间效率也不尽相同。本文章以Java语言示例,通过对空间要求、时间效率要求,来对比各种排序算法的使用场景2、... 查看详情

java实现网络爬虫-java入门|java基础课程

目标网络爬虫的是做什么的?手动写一个简单的网络爬虫;1.网络爬虫1.1.名称网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自... 查看详情

css入门课程css基础

htmlcssjavascript三者关系html是网页内容的载体css是网页内容的表现,外观控制javascript是网页逻辑处理和行为控制 css相对于html标签属性的优势css简化了标签代码,利于下载提高效率解决了网页内容与外观分离利于维护,提供工... 查看详情

java课程大纲

第一章Java基础第一节java入门1-Java背景介绍2-Java入门程序的编写3-环境配置4-基本概念介绍5-类型转换6-开发工具使用第二节java基础1-运算符的使用2-键盘录入的练习3-Java语法-判断4-Java语法-循环一5-Java语法-循环二6-随机数获取和使... 查看详情

javaweb基础入门讲解

课程目标清楚掌握MVC开发模式,使用jsp+servlet完成模块开发适用人群具备java基础课程简介简  介课程包含以下知识点:1、JSP基础与九种内置对象2、结合九种内置对象实现一个基础的图书管理模块CRUD功能3、JSP标签4、Servlet与标... 查看详情

大数据技术与应用专业课程标准

...负责人:司马云信息工程系二〇二〇年二月《Java基础入门》课程标准1课程概述1.1课程名称课程名称:《Java基础入门》课程代码:22334341.2学时与适用对象课程总计36学时,理论课时18学时,实践课时18学时。本... 查看详情

java入门-语言基础-03.基础语法

原文地址:http://www.work100.net/training/java-basic-syntax.html更多教程:光束云-免费课程基础语法序号文内章节视频1第一个Java程序-2基本语法-3Java标识符-4Java修饰符-5Java变量-6Java数组-7Java枚举-8Java关键字-9Java注释-10Java空行-11继承-12接口... 查看详情

1html+div+css零基础快速入门到制作企业站视频课程_18盒模型[浮动计算]

 1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_18盒模型[浮动计算]  1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8">5<title>清除浮动</title>6<style>7ul,li{8l 查看详情

1html+div+css零基础快速入门到制作企业站视频课程_20css样式作业

 1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_20css样式作业  1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8">5<title>css样式作业</title>6<style>7*{8font 查看详情

自学java怎么入门?

...段包括前端、数据库和动态网页。Javaweb是互联网项目的入门课程,是学习后面高进阶课程的基础。首先,我们先看一下前端板块。该板块主要包括如下几个模块:HTML5,网页制作标记语言;CSS,对HTML制作网页进行美化;JavaScript... 查看详情

自学java如何入门?

...段包括前端、数据库和动态网页。Javaweb是互联网项目的入门课程,是学习后面高进阶课程的基础。首先,我们先看一下前端板块。该板块主要包括如下几个模块:HTML5,网页制作标记语言;CSS,对HTML制作网页进行美化;JavaScript... 查看详情

css入门课程css文本样式

文字是网页的非常基础的内容,文本的样式设置也是非常重要的1字体大小font-size:绝对大小单位和相对大小单位,绝对大小单位有cm,mmin(厘米,毫米,英寸)等,这是大小不随屏幕分辨率大小而变化,相对大小单位:px,em%他... 查看详情

1html+div+css零基础快速入门到制作企业站视频课程_12css边框

  复合写法:border:2pxsolidred; 分开写法:border-color:red; border-bottom-color:blue;border-bottom-style:dotted;border-bottom-width:5px; border-left-color:yellow;border-left-style:solid 查看详情

1html+div+css零基础快速入门到制作企业站视频课程_22实战:div+css企业站-头部

 1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_22实战:div+css企业站-头部  .html 1<!DOCTYPEhtml>2<htmllang="en">3<head>4<metacharset="UTF-8">5<title>企业首页</title>6< 查看详情

java入门-语言基础-01.java简介

原文地址:http://www.work100.net/training/java-intro.html更多教程:光束云-免费课程Java简介序号文内章节视频1概述-2主要特性-3发展历史-4开发工具-请参照如上章节导航进行阅读1.概述Java是由SunMicrosystems公司于1995年5月推出的Java面向对象... 查看详情

java入门-语言基础-01.java简介

原文地址:http://www.work100.net/training/java-intro.html更多教程:光束云-免费课程Java简介序号文内章节视频1概述2主要特性3发展历史4开发工具请参照如上章节导航进行阅读1.概述Java是由SunMicrosystems公司于1995年5月推出的Java面向对象程... 查看详情

2018最新springboot2.0教程(零基础入门)

一、零基础快速入门SpringBoot2.01、SpringBoot2.x课程全套介绍和高手系列知识点简介:介绍SpringBoot2.x课程大纲章节java基础,jdk环境,maven基础2、SpringBoot2.x依赖环境和版本新特性说明简介:讲解新版本依赖环境和springboot2新特性概述3... 查看详情

日语自学学习入门零基础到精通教材教学视频教程全套网络培训课程

  查看详情