Java新手如何学习三大框架(java要学的框架)
ccwgpt 2024-11-06 09:56 65 浏览 0 评论
Java新手如何学习Spring、Strurs、Hibernate三大框架?
1. 学习方法
1.1 给我一个可以运行的学习Demo
曾经有过面向百度学习框架的同学,一定会有这种感受,哗啦一搜,各种框架文章呀,真好,真好,趁着学习干劲足足的, 赶紧的照着这些文章做呀。 可是,倒腾了几十分钟,妈蛋~ 怎么跑不出来啊, 怎么报错啊? 这个报错的话,文章里没有说怎么解决呀! 不行不行,换篇文章吧,换了好几个,还是没办法做出效果出来。 慢慢的,心里就凉了,一点点的丧失了学习的兴趣和动力,最后就不了了之了~
其实呢,一个框架的demo跑不起来,主要有两个原因:
一:Jar包不对,现在各种框架都有很多的版本,当Jar包的兼容性出现问题的时候会导致启动失败。
二:配置细节出错,框架用熟练了,开发是很快的,但是第一次用的时候,会进行很多的配置,只要有一个细节出错,都会导致无法运行看到效果,并且出来一些奇奇怪怪的报错。
可是,对于新手而言,无论是Jar包不对,还是配置细节出错,我都是无法识别的啊,我怎么知道哪个包版本不对? hibernate下的antlr-2.7.6.jar这个包版本不对?我连它是做什么的都不知道,你让我识别他版本不对? 再说配置细节了,我就是来学的呀,我能知道这篇文章这个配置细节讲错了,我还用来学吗?
所以说。。。。 学习姿势很重要
正确的学习姿势是,先来一个能运行的学习Demo,里面包含了运行这个框架所需要的全部包,并且都是配置正确的,确保一定是可以跑起来。
所以呢,我在学习每个知识点的部分,提供了 需要的Jar包,以及一个可以运行的项目
这样确保,跟着教程走,一定走得通,不会花冤枉时间,那么学下去的信心,就增强了。 退一万步讲,实在是做不出来,挨个比较 "正确答案" 的代码,总能找到自己出错的地方在哪里,最终把代码跑起来,看到运行效果。
1.2 先让我看下运行效果是怎么样的
那么就开始学习教程内容吧。 说到这里,又不得不吐槽一下各种面向百度搜来的教程文章,就说学个Hibernate吧,一开篇,就给我讲Hibernate层次架构图,原理图,各种包名的含义,引用的各种Jar的用途。。。。 等等等等~ 妈蛋,我能看得懂这些,我还是新手吗?
(唱) 简单点,学习的方式,简单点
能不能一来就直接告诉我,这个文章跟着做了,能得到什么效果,让我明确学习目标
1.3 从零开始,按部就班来一遍
好了,现在我知道学习目标是什么了,勤快点的话,我还会把可以运行的项目拿来自己跑过一遍了,确实能用, 现在得我自己做一遍了。 ok, 那么就一步一步来吧
每个步骤,都有源代码,可以一行一行地跟着敲,也可以复制粘贴。
并且这个步骤所用到的代码里面的含义,也有详细的解释
1.4 代码比较
为什么我写的就是不行,而复制粘贴你的代码就以呢? 那多半是某个很小的细节没写对,可是查找起来很麻烦呢,有提高效率的办法吗?
在每个源代码旁边,都有一个在线代码比较按钮:
这样把错误高亮出来,就可以更快得定位出错行,原来是id写成di了~
1.5 原理讲解
好吧,还是花了些时间,跟着步骤一个一个做出来了,哟,确实能用呢。 这个时候,我就对框架为什么能用感兴趣了,你再讲原理啊,思路图啊,层次结构什么的啊,我就听得进去了
1.6 练习
这么走一遍,好,我对这个框架的基本使用心里有底了,但是,这基本上都是我抄你的代码啊? 不行,我得自己从头撸一遍,不然不会变成我自己的东西
2. 学习内容的层层推进
前面谈过了学习方法,接下来聊聊学习内容的规划
2.1 总体上的SSH学习节奏
既然题主是问的三大框架~ 那么说下学习顺序的个人建议吧
先学 Hibernate,因为你只需要Java中级的基础,有使用JDBC经验,就可以用它了,毕竟它是对JDBC的轻量级封装嘛。
然后是Struts,为什么放在Hibernate后面呢? 因为掌握Struts需要有前端基础,还需要有J2EE的知识才可以更好的理解其工作原理。
最后是Spring, 在SSH三大框架中,Spring扮演的是一个整合工具的角色,所以总要先了解其他的,再来用Spring。
2.2 Hibernte 的学习节奏
Hibernate的东西也不少呢,按照由浅入深,先把单个表CRUD搞了
然后再说多个表的关系
以上都搞了之后,就会对hibernate有一定程度的感性认识了,也会带着一些问题,这个时候再来谈谈里面的各种概念,就好理解了。
2.3 Struts 的学习节奏
跟Hibernate类似的,Struts也先把各种基础用法捋一遍
接着是Struts特有的标签,常用的列出来
最后是各种杂七杂八的概念和用法。。。。
2.4 spring 的学习节奏
Spring 因为是扮演整合工具的角色,所以其基本的东西并不多,就是IOC(DI), AOP。 而SpringMVC作为一个独立的,流行的MVC框架,是在专门的模块系统讲解,题主既然问的是SSH 三大框架,那么SpringMVC就不在本答的讨论范围了。
3. 整合
接着呢,就是整合了,要做SSH整合,我建议的学习方式是事先两两各自整合,这样整合需要消化的信息量相对较少,更易理解两两整合的思路。
等两两整合熟练了, 再SSH来一发
先2P,熟练了再3P,这样更符合广大人民群众的生活习俗,不是吗?
4. 关于注解和XML配置方式
最后说说注解和XML方式,这两种配置方式都比较常见,各自有合适的业务环境。 从学习的角度,建议先使用XML的配置方式进行学习,然后再对比着转到注解的方式。
对于刚开始在框架中使用注解方式的同学,通常会问一个问题,为什么用了这些注解,就可以替代xml了呢? 它们的工作原理是什么呢? 关于这个问题,做了个模块来专门讲解
5. 教程地址:http://how2j.cn/k/hibernate/hibernate-tutorial/31.html?tid=63
教程由个人独立完成,局限于个人能力和视野,有诸多不足之处,请大家多多指正,谢谢。
6. 其他相关
相关推荐
- 一个基于.Net Core遵循Clean Architecture原则开源架构
-
今天给大家推荐一个遵循CleanArchitecture原则开源架构。项目简介这是基于Asp.netCore6开发的,遵循CleanArchitecture原则,可以高效、快速地构建基于Ra...
- AI写代码翻车无数次,我发现只要提前做好这3步,bug立减80%
-
写十万行全是bug之后终于找到方法了开发"提示词管理助手"新版本那会儿,我差点被bug整崩溃。刚开始两周,全靠AI改代码架构,结果十万行程序漏洞百出。本来以为AI说没问题就稳了,结果...
- OneCode低代码平台的事件驱动设计:架构解析与实践
-
引言:低代码平台的事件驱动范式在现代软件开发中,事件驱动架构(EDA)已成为构建灵活、松耦合系统的核心范式。OneCode低代码平台通过创新性的注解驱动设计,将事件驱动理念深度融入平台架构,实现了业务...
- 国内大厂AI插件评测:根据UI图生成Vue前端代码
-
在IDEA中安装大厂的AI插件,打开ruoyi增强项目:yudao-ui-admin-vue31.CodeBuddy插件登录腾讯的CodeBuddy后,大模型选择deepseek-v3,输入提示语:...
- AI+低代码技术揭秘(二):核心架构
-
本文档介绍了为VTJ低代码平台提供支持的基本架构组件,包括Engine编排层、Provider服务系统、数据模型和代码生成管道。有关UI组件库和widget系统的信息,请参阅UI...
- GitDiagram用AI把代码库变成可视化架构图
-
这是一个名为gitdiagram的开源工具,可将GitHub仓库实时转换为交互式架构图,帮助开发者快速理解代码结构。核心功能一键可视化:替换GitHubURL中的"hub...
- 30天自制操作系统:第六天:代码架构整理与中断处理
-
1.拆开bootpack.c文件。根据设计模式将对应的功能封装成独立的文件。2.初始化pic:pic(可编程中断控制器):在设计上,cpu单独只能处理一个中断。而pic是将8个中断信号集合成一个中断...
- AI写代码越帮越忙?2025年研究揭露惊人真相
-
近年来,AI工具如雨后春笋般涌现,许多人开始幻想程序员的未来就是“对着AI说几句话”,就能轻松写出完美的代码。然而,2025年的一项最新研究却颠覆了这一期待,揭示了一个令人意外的结果。研究邀请了16位...
- 一键理解开源项目:两个自动生成GitHub代码架构图与说明书工具
-
一、GitDiagram可以一键生成github代码仓库的架构图如果想要可视化github开源项目:https://github.com/luler/reflex_ai_fast,也可以直接把域名替换...
- 5分钟掌握 c# 网络通讯架构及代码示例
-
以下是C#网络通讯架构的核心要点及代码示例,按协议类型分类整理:一、TCP协议(可靠连接)1.同步通信//服务器端usingSystem.Net.Sockets;usingTcpListene...
- 从复杂到优雅:用建造者和责任链重塑代码架构
-
引用设计模式是软件开发中的重要工具,它为解决常见问题提供了标准化的解决方案,提高了代码的可维护性和可扩展性,提升了开发效率,促进了团队协作,提高了软件质量,并帮助开发者更好地适应需求变化。通过学习和应...
- 低代码开发当道,我还需要学习LangChain这些框架吗?| IT杂谈
-
专注LLM深度应用,关注我不迷路前两天有位兄弟问了个问题:当然我很能理解这位朋友的担忧:期望效率最大化,时间用在刀刃上,“不要重新发明轮子”嘛。铺天盖地的AI信息轰炸与概念炒作,很容易让人浮躁与迷茫。...
- 框架设计并不是简单粗暴地写代码,而是要先弄清逻辑
-
3.框架设计3.框架设计本节我们要开发一个UI框架,底层以白鹭引擎为例。框架设计的第一步并不是直接撸代码,而是先想清楚设计思想,抽象。一个一个的UI窗口是独立的吗?不是的,...
- 大佬用 Avalonia 框架开发的 C# 代码 IDE
-
AvalonStudioAvalonStudio是一个开源的跨平台的开发编辑器(IDE),AvalonStudio的目标是成为一个功能齐全,并且可以让开发者快速使用的IDE,提高开发的生产力。A...
- 轻量级框架Lagent 仅需20行代码即可构建自己的智能代理
-
站长之家(ChinaZ.com)8月30日消息:Lagent是一个专注于基于LLM模型的代理开发的轻量级框架。它的设计旨在简化和提高这种模型下代理的开发效率。LLM模型是一种强大的工具,可以...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 框架图 (58)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- springmvc框架 (49)
- 分布式事务框架 (65)
- scrapy框架 (56)
- shiro框架 (61)
- 定时任务框架 (56)
- java日志框架 (61)
- mfc框架 (52)
- abb框架断路器 (48)
- beego框架 (52)
- java框架spring (58)
- grpc框架 (65)
- tornado框架 (48)
- 前端框架bootstrap (54)
- orm框架有哪些 (51)
- 知识框架图 (52)
- ppt框架 (55)
- 框架图模板 (59)
- 内联框架 (52)
- cad怎么画框架 (58)
- ssm框架实现登录注册 (49)
- oracle字符串长度 (48)