当前位置: 首页 > news >正文

Struts、spring、hibernate、EJB、ant术语说明

Struts、spring、hibernate、EJB、ant术语说明

Struts

Struts只是一个MVC框架(Framework),用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。

Spring

Spring是一个轻型容器(light-weight container),其核心是Bean工厂(Bean Factory),用以构造我们所需要的M(Model)。在此基础之上,Spring提供了AOP(Aspect-Oriented Programming, 面向层面的编程)的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE的应用;DAO/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。
就是说可将两者一起使用,达到将两者自身的特点进行互补。

Hibernate

Hibernate是一个免费的开源Java包,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通Java对象一样,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。它解放了您,使您可以专注于应用程序的对象和功能,而不必担心如何保存它们或稍后如何找到它们。

EJB

一个技术规范:EJB 从技术上而言不是一种"产品"
EJB 是一种标准描述了构建应用组件要解决的:
可扩展 (Scalable)
分布式 (Distributed)
事务处理 (Transactional)
数据存储 (Persistent)
安全性 (Secure)

ANT

-. Ant简介
Ant是一个类似make的工具,用来编译/运行/测试java程序。
构建、包装和发布过程中几乎每一件事都可以由Ant的任务来处理.

二.Ant的安装及配置
你可以从Jakata网站下载预编译的ANT,解压至任一目录;
设置自己的环境变量,即ANT_HOME,指向解压目录;
设置JAVA_HOME环境变量,指向jdk的根目录;

三:用ant管理项目

Ant一启动就会自动地加载一个叫做Build.xml的项目配置文件。如果想给这个项目配置文件取别的名字,你可以使用buildfile标记来运行ant,就像下面这样:
ant -buildfile Project_configuration.xml
主要特点:
使用xml文件作为配置文件,即build.xml;
可与junit作无缝整合,达到系统测试、编译到发布的功能;
强大、详细的报表功能;
控制灵活,可自定义要执行的任务组合。

相关文章:

  • nexus 安装_Nexus在windows和centos中安装教程
  • 傅里叶级数拟合实验
  • k8s 安装nfs_GCP学习笔记6-NFS\MySQL\GKE配置
  • 数据图表与分析图_单一数据图表动态展示,学会圆环图搭配饼图,效果就是与众不同...
  • 关于inline函数
  • python怎么重新运行_崩溃后如何重新运行Linux? - python
  • 蓝眼泪
  • python3元组_python3 列表、元组操作
  • AT91RM9200引导程序的建立(一)--------建立交叉编译工具链
  • python 平均值_Python随笔11:Python代码规范之注释和文档
  • 心中无敌,天下无敌——转“赢在中国”主持人王利芬的博客片断
  • qt qmidarea 关闭事件_Qt摄像头热插拔实现
  • ogm 转 avi
  • windows桌面待办事项_桌面图标快满屏?你居然不知道这4款神器能帮你整理!
  • python贪婪匹配顺序_python正则表达式的懒惰匹配和贪婪匹配说明
  • 自己简单写的 事件订阅机制
  • CAP 一致性协议及应用解析
  • C语言笔记(第一章:C语言编程)
  • jquery ajax学习笔记
  • JS+CSS实现数字滚动
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • Python十分钟制作属于你自己的个性logo
  • Python学习笔记 字符串拼接
  • React as a UI Runtime(五、列表)
  • Travix是如何部署应用程序到Kubernetes上的
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 因为阿里,他们成了“杭漂”
  • 自动记录MySQL慢查询快照脚本
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 积累各种好的链接
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • #Z0458. 树的中心2
  • #传输# #传输数据判断#
  • (39)STM32——FLASH闪存
  • (C++20) consteval立即函数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐
  • (十六)串口UART
  • (转)ABI是什么
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .NET下ASPX编程的几个小问题
  • [bzoj1038][ZJOI2008]瞭望塔
  • [BZOJ1089][SCOI2003]严格n元树(递推+高精度)
  • [C#]扩展方法
  • [ESP32 IDF]web server
  • [flume$2]记录一个写自定义Flume拦截器遇到的错误
  • [Gym-102091E] How Many Groups