java ee 前后端分离书籍_关于javaweb前后端分离,在自学时候遇到了问题,求各位大佬看一下?...

我说的土一点,方便你理解哈

前后端不分离,你在eclipse里面的同一个工程里 一边写Java代码 一边写前端代码。写好了跑起来,localhost 8080走起。

前端代码一般是放在文件夹里的,后台程序启动,进入index页面,得到渲染好的页面。

一般来讲首页都是IndexController.java 对吧, 这里使用 @Controller注解 请求指向一个模板

如果前后端分离,意味着前端和后端是两套工程。前端代码不再是后端代码的附属。

后端代码写好了,比方说端口是8080,启动后台。 前端代码搞定了之后,把它放在server里跑起来,比方说端口4000.

localhost 4000进去,数据从8080里拿到然后渲染到页面上。

后端MVC 的结构就变成了MC 。 V这一层被扩展为独立前端,我们先不提。所有对后端的请求都最好应该是RESTful风格的。

后端就说这么多,说说前端。

我只有使用Angular的经验,和你说说Angular是怎样的。

Angular的开发我使用VScode这款IDE ,微软出品,简洁,速度快,插件多。

Angular作为真正的前端框架,将你的前端规范、分层、分模块。

Angular支持typescript和javascript 官方推荐使用typescript。

关于Angular的细节不再赘述,有兴趣可以查资料看一下,我就简单说一下分离后的前端的开发套路。

使用Angular开发前端,也是分层的,大概一个页面你需要编写:

1.HTML : 这里的HTML不是纯粹原生的,而是支持Angular双向绑定、支持UI组件模块的HTML。也是非常容易学习的。上手之后,是非常容易搞定的。

2.Component: 这是一个Class(typescript是强类型的面向对象的语言) 和Java类似, 有成员变量(绑定到页面的数据), 方法(如何取数据)

3.Service:这一层的功能是描述你的component如何从后台拿数据的。就好比Java的service层如何从DB拿数据。但是要比Java简单的多,因为数据格式是前后端已经既定好的,你把数据从后端拿回来就行了。Component负责把数据绑定到HTML上。

前端开发好后,整个前端工程是需要放在server容器里启动的。对比一下:

前后端不分离: 前后端代码被打包在一起,然后放在server容器里启动。前端代码看起来好像是后端的附属一样。

前后端分离: 前后端分别独立启动。前端工程部署在server容器里(Nginx),后端不需要放在server容器里。但是可以通过虚拟容器技术部署在K8S、docker里。甚至你可以直接使用Java -jar命令启动你的后台!

你的问题:是的,JSP完全再见。前端工程完全独立,和后台毫不相干。你的前端可以独立运行,但是后台如果不启动页面是没有任何数据的。这里体现出一点好处:前端完全不在乎后端究竟是什么程序在提供数据,完全不在乎是什么编程语言。只要规定好通信协议(HTTP Websocket等)和数据格式就行了。前端的模块化你可以理解成Java里的一个个包。彼此之间相对比较独立。说白了就是为了实现一个自我解耦。

大三了,时间比较紧迫啊!在我看来,前端的知识天花板比后台低,容易出活,容易产生成就感。因此我比较建议后端做的越简单越好。你甚至后台可以只有Controller层,配合Spring Boot JPA, 你的代码可以非常简洁。可以一起学,如果就是为了毕业设计,重点要放在前端。后端能给前端提供数据就行了,别玩得太花哨。但是从职业发展的角度,我没法说,看你兴趣,前后端你都可以选。

这个看你目标了。你现在的程度找一个实习没有问题。但是如果你想去大厂,同学,凭你的学校和技能我只能说很难。去大厂的话,前端我不太清楚,后端你至少要会JVM调优 Spring Boot ,K8S ,docker,redis,MQ, 分布式这些玩意,而且关键原理要非常清楚,再就是数据结构、算法的知识要门儿清。网上有的是面试题。

大概就是这样,希望我说明白了。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值