前端人学习java开发—使用Spring Boot开发

好久没有写技术文章了。最近有了一些新的认知,技术还是要坚持的,归结起来就是守正出奇,技术是我的正,毕竟从事了这么多年的技术工作,奇则是其他探索性副业。

java开发前介绍

平台无关性

java是一种开发语言,得益于Java的运行环境------Java虚拟机(JVM),其可以实现平台无关性。

当你编写Java代码并编译后,会生成一种被称为字节码(Bytecode)的中间代码,而不是直接生成特定操作系统的机器代码。这个字节码是可以在任何安装了JVM的系统上运行的。

当这个字节码在某个平台上运行时,JVM会将字节码转换为该平台的机器代码。因此,只要一个设备安装了JVM,无论这个设备的操作系统是Windows、Linux还是Mac,都可以运行Java程序。

很多开发语言比如go、python都是平台的无关的。但也有与平台有关的比如Objective-C、Visual Basic、Swift等。

java的开发源码格式

Java的源代码通常保存在扩展名为.java的文件中。这些文件包含了Java类的定义,每个文件通常包含一个公共类或接口。

当编译Java源代码时,Java编译器(javac)会生成扩展名为.class的字节码文件。这些文件包含了可以被Java虚拟机(JVM)执行的字节码。

如果有多个.class文件或者其他资源(如图片、音频、配置文件等),可以将它们打包到一个JAR(Java Archive)文件中,以便于分发和部署。JAR文件是一个包含了多个.class文件和其他资源的压缩文件,它可以被JVM直接执行。

对于Web应用程序,可以使用WAR(Web Application Archive)文件格式。WAR文件是一种特殊类型的JAR文件,用于打包Java Web应用程序的所有组件,包括Servlets、JSP、HTML、CSS、JavaScript、图像文件、库文件等。

java的war和jar区别

java的war和jar包都是源代码编译后的产物。

  1. 文件类型:WAR文件是Web Application Archive的缩写,主要用于分发和部署Web应用程序。JAR文件是Java Archive的缩写,主要用于分发Java类库和应用程序。

  2. 内容:WAR文件通常包含JSP、HTML、JavaScript等Web资源文件,以及Java类、库等。JAR文件主要包含Java类和库。

  3. 使用场景:WAR文件主要用于Web服务器或应用服务器,如Tomcat、Jetty、WebLogic等。JAR文件可以在任何安装了Java环境的地方运行。

  4. 结构:WAR文件有特定的目录结构,如WEB-INF目录用于存放配置文件和类文件等。JAR文件没有特定的目录结构,通常按照开发者的需要来组织。

  5. 打包工具:WAR文件通常使用Ant、Maven等工具进行打包。JAR文件可以使用Java自带的jar命令进行打包。

  6. 运行方式:WAR文件需要部署到服务器上才能运行。JAR文件可以直接通过java -jar命令运行。

java开发

安装jdk

Java Development Kit是Sun公司(已被Oracle收购)针对Java开发员的软件开发工具包。这个安装网上有很多教程,这里就不做介绍了。可以安装经典的java 8,也可以是长期稳定版本11和17。

安装Idea、maven和数据库

对于前端开发来说使用的是vscode,对于java这里使用idea。idea有官网,可以直接下载社区版使用。

maven是java开发的构建工具可以类比为前端开发的npm。maven也需要下载,现成的教程也很多,这里就不做介绍了。maven我安装的是3.6.7版本。

如果项目需要使用使用数据库,还需要下载数据库,比如mysql,mysql下载教程也很多,不做介绍了。

使用Spring Boot开发

对于前端的同学来说,可以理解Spring Boot类比使用vue-cli或者create-react-app生成的代码产物。

Idea有专业版和社区版,专业版有30天试用期,社区版免费。但是使用社区版不能直接生成Spring Boot的项目,需要在Spring Boot的官网配置生成后下载。

现在vue-cli也可以网页配置生成了,原理都是一样的。

注意:如果本机安装的是java 8,以及本机安装的idea是2022年版本的,可能会提示有问题

这个时候需要修改下载后代码中的pom.xml文件,这个文件类比前端的package.json文件。具体修改

修改spring-boot-starter-parent版本,以及修改java版本,降低版本。

项目结构介绍

如下所示

也可以创建application.properties/yml作为项目的配置文件:可以配置依赖文件里面的依赖包,也可以配置spring属性。

在Idea右侧有maven插件,可以用来执行maven的相关命令,而不用手动在命令行执行。

好了后面就可以进行java或Spring Boot的开发学习和研究了。个人觉得java开发学习曲线要比前端学习陡峭,入门相对较难。

相关推荐
XiaoLeisj2 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
paopaokaka_luck2 小时前
【360】基于springboot的志愿服务管理系统
java·spring boot·后端·spring·毕业设计
dayouziei2 小时前
java的类加载机制的学习
java·学习
Yaml44 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
小小小妮子~4 小时前
Spring Boot详解:从入门到精通
java·spring boot·后端
hong1616884 小时前
Spring Boot中实现多数据源连接和切换的方案
java·spring boot·后端
aloha_7894 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot
记录成长java5 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet
睡觉谁叫~~~5 小时前
一文解秘Rust如何与Java互操作
java·开发语言·后端·rust
程序媛小果5 小时前
基于java+SpringBoot+Vue的旅游管理系统设计与实现
java·vue.js·spring boot