一、后端开发的概念和技术栈
1.1 什么是后端开发?
后端相较于前端来说,更多的是与数据库进行交互以处理相应的业务逻辑。需要考虑的是如何实现功能、数据的存取、平台的稳定性与性能等。
Web后端:
1)精通jsp,servlet,java bean,JMS,EJB,Jdbc,Flex开发,或者对相关的工具、类库以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,对Web开发模式有较深的的理解
2)练使用oracle、sqlserver、mysql等常用的数据库系统,对数据库有较强的设计能力
3)熟悉maven项目配置管理工具,熟悉tomcat、jboss等应用服务器,同时对在高并发处理情况下的负载调优有相关经验者优先考虑
4)精通面向对象分析和设计技术,包括设计模式、UML建模等
5)熟悉网络编程,具有设计和开发对外API接口经验和能力,同时具备跨平台的API规范设计以及API高效调用设计能力
1.2 Java后端技术图谱
二、JavaEE概念
Java EE是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用.随着WEB和EJB容器概念诞生,使得软件应用业开始担心SUN的伙伴们是否还在Java平台上不断推出翻新的标准框架,致使软件应用业的业务核心组件架构无所适从,从一直以来是否需要EJB的讨论声中说明了这种彷徨。
在2004年底中国软件技术大会Ioc微容器(也就是Jdon框架的实现原理)演讲中指出:我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本.此次J2EE改名为Java EE,实际也反映出业界这种共同心声。
Java EE的核心是EJB3.0, 其提供了更兼便捷的企业级的应用框架。
三、Spring框架特点及构成
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
Spring框架为现代基于Java的企业应用提供了一个全面的编程和配置模型——在任何类型的部署平台上。
Spring的一个关键元素是应用程序级别的基础结构支持:Spring关注企业应用程序的“管道”,这样团队就可以专注于应用程序级别的业务逻辑,而不必与特定的部署环境建立不必要的联系。
- Core technologies: dependency injection, events, resources, i18n, validation, data binding, type conversion, SpEL, AOP.
- Testing: mock objects, TestContext framework, Spring MVC Test,
WebTestClient
.
- Data Access: transactions, DAO support, JDBC, ORM, Marshalling XML.
- Spring MVC and Spring WebFlux web frameworks.
- Integration: remoting, JMS, JCA, JMX, email, tasks, scheduling, cache.
- Languages: Kotlin, Groovy, dynamic languages.
核心技术:依赖注入、事件、资源、i18n、验证、数据绑定、类型转换、spel、aop。
测试:模拟对象、测试上下文框架、SpringMVC测试、WebTestClient。
数据访问:事务、DAO支持、JDBC、ORM、编组XML。
SpringMVC和SpringWebFlux Web框架。
集成:远程处理、JMS、JCA、JMX、电子邮件、任务、调度、缓存。
语言:Kotlin、groovy、动态语言。
四、Spring的起步练习步骤
1.准备maven环境。在idea中进行配置
2.建立项目 添加maven支持
3.在pom文件中添加SpringContext依赖
4.编写HelloWorld类
五、JavaWeb掌握什么?
1.网络通信协议:http
2.服务器:tomcat jetty weblogic nginx apache
3.云服务器:阿里云 腾讯云
4.servlet、过滤器、 监听器
5.其他:跨域、负载均衡、缓存、日志、git、maven
六、依赖
context:上下文(依赖)
aop:面向切面编程~
beans:对象管理~
core:核心~
expression:表达式~