barriers / 阅读 / 详情

Web服务器例如websphere、tomcat和weblogic的工作原理和流程是什么样的?

2023-08-14 13:44:11
共3条回复
马老四

weblogic、websphere、tomcat这三个是java的应用服务器,一个主要区别是前面两个支持ejb,tomcat不支持,而且前两个如果是商业用途的话是要收费的,而tomcat是完全免费的。webservice是一种技术规范。

康康map

不想从网上去抄东西贴过来,说点我的切身体会吧我也是一开始就先学J2SE,学得差不多了的时候Eclipse也用熟了,如果你还没用Eclipse写Java建议转到Eclipse上来。然后我并没有着急去学J2EE,因为中间还有许多理论知识要学,实际上接下来我学的是:(按顺序排)面向对象设计理念(看《Thinking in Java》)学习好的JAVA编程习惯(看〈Effective Java〉)设计模式(有本书叫《JAVA设计模式》不错,机械工业出版社的)重构的理念(《Refactor》),JSP(《JSP详解》)各种JAVA web应用程序的框架(structs, spring, hibernate)各种JAVA web服务器的使用(Tomcat, Websphere, Weblogic)学到这里之后,差不多就可以上J2EE了

黑桃云

找一下JVM原理看看

相关推荐

java里面的structs框架、还有什么javabean都是什么?有什么作用?

Struts框架是对MVC(模型Model 视图View 控制器Controller)设计模式的实现,作用是在于接收用户的请求,调用业务逻辑代码。转发到正确的页面。在三层设计模式中实现了控制器的作用。其实框架的概念很广,它包含了有名的SSH三大框架,也就是Struts、Spring、Hibernate. 框架就是一系列的组件,按照一定的结构组合在一起,作为系统开发的平台。使用的框架就是拿别人已经开发好的半成品继续加工自己的业务。就是能让我们能够站在巨人的肩膀上,享用前人经验和智慧。当然框架的好处也是很大的。JavaBean是一些封装数据和业务逻辑的Java类,它也是为了结合MVC设计模式来定的,JavaBean在其中充当模型的角色
2023-08-09 00:31:464

structs是什么

struts是一种mvc,从<<spring开发指南>;>;中借来一句话, 送给你, 希望于你对mvc的理解有帮助对于现有较成熟的Model-View-Control(MVC)框架而言,其解决的主要问题无外乎下面几部分:1. 将Web页面中的输入元素封装为一个(请求)数据对象。2. 根据请求的不同,调度相应的逻辑处理单元,并将(请求)数据对象作为参数传入。3. 逻辑处理单元完成运算后,返回一个结果数据对象。4. 将结果数据对象中的数据与预先设计的表现层相融合并展现给用户。各个MVC 实现固然存在差异,但其中的关键流程大致如上。
2023-08-09 00:31:541

springmvc和strtus2的区别

1、springmvc基于方法开发的,struts2基于类开发的。2、单例和多例的区别:springmvc在映射的时候,通过形参来接收参数的,是将url和controller方法映射,映射成功后,springmvc生成一个handlers对象,对象中只包括一个method,方法执行结束的时候,形参的数据就销毁,所以springmvc可以进行单例开发,并且建议使用。但是structs接收的参数是通过类的成员变量来接收的,这些变量在多线程访问中,是共享的,而不是像springmvc那样,方法结束之后,形参自动销毁,且无法使用单例,只能使用多例。3、structs速度慢,在与使用structs标签,如果使用structs建议使用jstl。4、机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。5、设计思想上:struts更加符合oop(面向对象编程)的编程思想, spring就比较谨慎,在servlet上扩展。
2023-08-09 00:32:091

请问spring与struts有什么区别?

Spring框架的好处 在我们进入细节以前,让我们看一下Spring可以给一个工程带来的一些好处: ◆Spring能有效地组织你的中间层对象,无论你是否选择使用了EJB。如果你仅仅使用了Struts或其他的包含了J2EE特有APIs的framework,你会发现Spring关注了遗留下的问题,。 ◆Spring能消除在许多工程上对Singleton的过多使用。根据我的经验,这是一个主要的问题,它减少了系统的可测试性和面向对象特性。 ◆Spring能消除使用各种各样格式的属性定制文件的需要,在整个应用和工程中,可通过一种一致的方法来进行配置。曾经感到迷惑,一个特定类要查找迷幻般的属性关键字或系统属性,为此不得不读Javadoc乃至源编码吗?有了Spring,你可很简单地看到类的JavaBean属性。倒置控制的使用(在下面讨论)帮助完成这种简化。 ◆Spring能通过接口而不是类促进好的编程习惯,减少编程代价到几乎为零。 ◆Spring被设计为让使用它创建的应用尽可能少的依赖于他的APIs。在Spring应用中的大多数业务对象没有依赖于Spring。 ◆使用Spring构建的应用程序易于单元测试。 ◆Spring能使EJB的使用成为一个实现选择,而不是应用架构的必然选择。你能选择用POJOs或local EJBs来实现业务接口,却不会影响调用代码。 ◆Spring帮助你解决许多问题而无需使用EJB。Spring能提供一种EJB的替换物,它们适于许多web应用。例如,Spring能使用AOP提供声明性事务而不通过使用EJB容器,如果你仅仅需要与单个的数据库打交道,甚至不需要JTA实现。 ■Spring为数据存取提供了一致的框架,不论是使用JDBC或O/R mapping产品(如Hibernate)。 Spring确实使你能通过最简单可行的解决办法解决你的问题。这些特性是有很大价值的。 总结起来,Spring有如下优点: ◆低侵入式设计,代码污染极低 ◆ 独立于各种应用服务器,可以真正实现Write Once,Run Anywhere的承诺 ◆Spring的DI机制降低了业务对象替换的复杂性 ◆Spring并不完全依赖于Spring,开发者可自由选用Spring框架的部分或全部Spring能做什么? Spring提供许多功能,在此我将快速地依次展示其各个主要方面。 首先,让我们明确Spring范围。尽管Spring覆盖了许多方面,但我们已经有清楚的概念,它什么应该涉及和什么不应该涉及。 Spring的主要目的是使J2EE易用和促进好编程习惯。 Spring不重新开发已有的东西。因此,在Spring中你将发现没有日志记录的包,没有连接池,没有分布事务调度。这些均有开源项目提供(例如Commons Logging 用来做所有的日志输出,或Commons DBCP用来作数据连接池),或由你的应用程序服务器提供。因为同样的的原因,我们没有提供O/R mapping层,对此,已有有好的解决办法如Hibernate和JDO。 Spring的目标是使已存在的技术更加易用。 例如,尽管我们没有底层事务协调处理,但我们提供了一个抽象层覆盖了JTA或任何其他的事务策略。 Spring没有直接和其他的开源项目竞争,除非我们感到我们能提供新的一些东西。例如,象许多开发人员,我们从来没有为Struts高兴过,并且感到在MVC web framework中还有改进的余地。在某些领域,例如轻量级的IoC容器和AOP框架,Spring有直接的竞争,但是在这些领域还没有已经较为流行的解决方案。(Spring在这些区域是开路先锋。) Struts的流程 服务器启动后,根据web.xml加载ActionServlet读取struts-config.xml文件内容到内存。 以登陆为例:第一次进login.jsp会先实例化Form、把默认值赋给表单元素。 输入用户名密码提交表单、提交到action属性的login.do,通过ActionServlet读struts-config.xml文件找到 action下的path属性找到.do,通过name属性找form-beans中的form-bean的name属性得到ActionForm的包名类名,先实例化form,把表单的值填充给form,调用form的validate方法验证、ActionErrors返回null表示验证通过,否则失败返回input指定的页面.验证通过会实例化Action,执行Action的excute方法。Struts框架结构图 相应框架结构如图: Struts对Model,View和Controller都提供了对应的组件。 在上图中,ActionServlet,这个类是Struts的核心控制器,负责拦截来自用户的请求。 Action,这个类通常有用户提供,该控制器负责接收来自ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。Model部分 由ActionForm和JavaBean组成,其中ActionForm用于封装用户的请求参数,封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionFrom里面的请求参数处理用户的请求。 JavaBean则封装了底层的业务逻辑,包括数据库访问等。View部分 该部分采用JSP实现。 Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。对应上图的JSP部分。Controller组件 Controller组件有两个部分组成——系统核心控制器,业务逻辑控制器。 系统核心控制器,对应上图的ActionServlet。该控制器由Struts框架提供,继承HttpServlet类,因此可以配置成标注的Servlet。该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。 业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理。对应Action部分。Struts框架 struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。 本章详细讨论struts架构。我们将看到struts是如何清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序过程的。我们还将介绍struts提供的类如何使得开发工作更加简单,这些类包括: uf06c 控制程序流程的类 uf06c 实现和执行程序事务逻辑的类 uf06c 自定义的标记库使得创建和验证HTML表单更加容易
2023-08-09 00:32:187

structs spring hibernate 三者之间有什么关系?分别起什么作用?谢谢

楼上说的,挺好,Spring,说的通俗一点,或用的多的,就是对象管理器。有需要用对象的地方,直接向Spring去要就可以了,不用New一个出来
2023-08-09 00:32:502

structs与servlet的区别和联系?是不是用了structs就可以不需要servlet了?

Structs的Action是在Servlet的基础上进行的进一步封装,已经将同名的参数设置到了Action的属性当中,不需再手动设置,方便调用。当然,Action不等于servlet,servlet还是有其用处的,例如,是做一些简单的功能,ajax,servlet还是比较合适的。(Action中的方法返回值都是一个字符串,这也有不方便之处。)
2023-08-09 00:32:591

struts比servlet高级在哪?和servlet相比它的好处在哪?

系统出错,竟然把这么高深的专业问题推荐给我回答。摆明了羞辱我!我要投诉。
2023-08-09 00:33:076

jsp与struts的区别

一个是页面,一个是框架。。。。完全不同的东西
2023-08-09 00:33:347

spring和structs有什么区别

按照MVC三层架构,基本上struts是表示层部分、spring是事务层部分、hibernate是持久层(数据层)部分。通俗点就是差不多表示层主要页面,事务层主要事务逻辑处理,持久层和数据库打交道。
2023-08-09 00:33:481

structs和spring的MVC优势?

spring mvc要比struts简单,其次更好的整合了spring ,效率也要比struts高,原因是struts的值栈相信的struts的效率,struts出错率要比spring mvc高,如果是方便的话struts比spring mvc更方便,写好配置文件用*匹配路径,基本就继承,写get,set方法就可以了
2023-08-09 00:33:563

structs中*.do是什么意思?

你用过过滤器没有,如果你理解*,就明白了就是所有以.do结束的url请求都使用这个
2023-08-09 00:34:053

在structs2中怎么把注册信息,写入到数据库中。

<script for="button1" event="onclick" language="vbscript"> m=form1.name1.value n=form1.pwd.value w=form1.pwd1.value if m="" or n="" or w="" then msgbox "带星号的不能为空" return falseend if if n<>w then msgbox "确认密码不正确" return falseend if </script> -----------------------加上return false就可以了
2023-08-09 00:34:133

执行C语言程序段“struct s{ long a;char b;};printf("%d",sizeof(struct s));” 输出的结果是什么?说明

structs{inta;//4个字节charb;//1个字节,自动按最大字节数4扩展,增加3个字节floatf;//4个字节}所以结果是12
2023-08-09 00:34:203

structs的配置文件structs.xml应该放到哪里?我用的myeclipse 是要放到src目录吗?

嗯 ,就放在SRC就行了 配置文件不要乱扔
2023-08-09 00:34:295

Java中的三大框架分别有什么用

mvc
2023-08-09 00:34:475

structs中的配置文件怎么写

<global-forwards> <forward name="" path="/"> </global-forwards>在这个structs-config.xml中是不是设置了这个全局跳转 找不到action就会自动往path后的路径跳
2023-08-09 00:35:041

structs的jsp中:更新数据和更新数据有什么区别

。jsp是直接转向update.jsp这个页面 不需要Structs里面配置的 。do 是需要在structs的配置文件配置的 。。看他配置的怎么样 update.do不一定转向的就是update.jsp 也可以配置成其他jsp页面的
2023-08-09 00:35:112

java如何将一组对象传入Oracle存储过程

CREATE OR REPLACE TYPE TEST_OBJECT AS OBJECT ( id number, name varchar2(32));CREATE OR REPLACE TYPE TABLES_ARRAY AS VARRAY(100) OF TEST_OBJECT;drop table test purge;create table test( id number, name varchar2(32));create or replace procedure t_list_to_p(arr_t in tables_array) isbegin for i in 1..arr_t.count loop insert into test values(arr_t(i).id,arr_t(i).name); end loop; commit;end t_list_to_p;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import oracle.sql.ARRAY;import oracle.sql.ArrayDescriptor;import oracle.sql.STRUCT;import oracle.sql.StructDescriptor;public class TestListToProcedure { static final String driver_class = "oracle.jdbc.driver.OracleDriver"; static final String connectionURL = "jdbc:oracle:thin:@10.150.15.150:1521:orcl"; static final String userID = "test"; static final String userPassword = "test"; public void runTest() { Connection con = null; CallableStatement stmt = null ; try { Class.forName (driver_class).newInstance(); con = DriverManager.getConnection(connectionURL, userID, userPassword); StructDescriptor tDescriptor = StructDescriptor.createDescriptor("TEST_OBJECT", con); List<STRUCT> structs = new ArrayList<STRUCT>(); Object[] tObject = null ; //可以将系统中VO,DTO转化成Object对象,先创建struts for(int i = 0; i<10; i++){ tObject = new Object[2]; tObject[0] = i; tObject[1] = "name"+i; STRUCT tStruct = new STRUCT(tDescriptor, con, tObject); structs.add(tStruct); } ArrayDescriptor arrayDescriptor = ArrayDescriptor.createDescriptor("TABLES_ARRAY", con); ARRAY tArray = new ARRAY(arrayDescriptor, con, structs.toArray()); stmt = con.prepareCall("{call t_list_to_p(?)}"); stmt.setArray(1, tArray); stmt.execute(); } catch (SQLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); }finally{ if(stmt != null){ try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if(con != null){ try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } } public static void main(String[] args) { TestListToProcedure testListToProcedure = new TestListToProcedure(); testListToProcedure.runTest(); }} 版权声明:本文为博主原创文章,未经博主允许不得转载。 java如何将一组对象传入Oracle存储过程标签:
2023-08-09 00:35:301

一般使用Structs的MVC框架,Spring的MVC框架很少用?

是的!
2023-08-09 00:35:384

Structs.Teacher.Teacher()不可访问,因为它受保护级别限制,怎么改?

找到 Teacher 这个类,如果前边有 private、protect 等字段的话,将字段改为 public。如果没有字段如 Teacher{ ... } 则改为 public Teacher{ ... }
2023-08-09 00:35:451

REST 和 SSH (Structs, Spring, Hibernate) 是什么关系?

SSH(Struts,Spring,Hibernate)是一种常用的Web开发的框架组合,其中Spring作为Ioc容器负责组装,Struts作为前端框架负责展示层逻辑(MVC),Hibernate负责数据的持久化。这三者都是开源框架,也是各自领域中有代表性的框架,三者结合起来是一种最佳实践。而REST是一个C/S(包含B/S)的 软件的架构模式,前端的C(或B)应该以什么样的方式,特别是在HTTP协议上通讯时,和后端的S打交道,形成清晰、容易理解的的交互。由于基于HTTP协议,因此服务端的程序通常跑在Web服务器上,但不一定是以Web方式展现的应用程序。使用SSH框架时,可以依循REST架构模式,以使软件有良好的架构。但是REST不限于 Web开发,特别是在网络服务的API方面,REST已经成为一种事实的标准,可以和Web Service协议栈一争高下。
2023-08-09 00:35:531

Java开发中Hibernat和Structs各对应着C#开发中的部分是什么???????

Hibernate也有.net版本的,叫NHibernate你可以到Hibernate的网站上看一下Struts是Java的,现在.net也出了一个MVC框架,不过现在是preview4版本的
2023-08-09 00:36:012

程序框架是什么

问题一:程序开发中的框架是什么 我们目前先不要了解那么多 框架是为了方便我们程序员开发 减贰代码量 及代码质量的工具 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。 可以说,一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。 java开发中的框架不是太多 我们可以慢慢学习 先慢慢了解一种。 问题二:什么是程序框架 不仅仅是类库这么简单。我个人的理解是:完成某项业务流程或者功能的具体方案。框架采用了相对比较成熟的方式或者步骤或者流程去做这件事情,让程序员只专注于逻辑本身或业务本身,省去了很多繁琐的步骤。 问题三:什么是应用程序框架 就像盖楼的框架一样。每个楼外观不一样。但是每个楼的基本的框架是一样的。 程序的框架就是针对程序的特点。把程序的共同特绩提取出来。能进行多次的开发利用。提高开发效率。 问题四:Java中的三大框架分别有什么用 一、Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。 二、STRUCTS Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。 三、Hibernate Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 问题五:Java程序的基本框架是什么? public class Hello { public static void main(String[] args) { System.out.println(Hello World!); } } 每本介绍Java编程的书籍 讲Java编程结构是必讲的第一个程序; 问题六:软件架构师主要是做什么啊? 你既然已经工作了,我觉得你就应该多少了解一点把,一般公司也都有架构师的存在呀。 架构师主要工作算是系统分析师,制定架构,以及开发时使用框架,类似于工程里面的总设计师。 确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员。 要求你就必须从程序员转型到架构师,可以看看一些架构师的书,其实最做的来源于你平时的积累。对技术理解很透彻。另外就是对框架特别熟悉。当然这些都必须你拥有很丰富的项目经验 问题七:C语言的基本框架是什么意思? main函数是程序执行的入口函数,也就是程序启动时就从这个函数开始,这个函数有很多形式,例如void main(),void main(void), int main(), int main(void),其中void有无是一样的,void本来就是没有的意思,另外最正规的形式是int main(int argc, char *argv[]); 其中argc是argv这个字符串数组的长度,argv是从命令行接受的参数 问题八:什么是框架?框架中要包含什么?为什么要开发框架?如何做框架? 以Java 为例子。 java 之前没有框架,或者说 自己公司封装了自己的框架。为什么要封装穿? 因为1 在实际开发中 很多代码重复再敲,浪费时间就是浪费金钱。 如: jsp+javabean+servlet 开发 jsp中的数据通过request-------》filter(自己解析了 封装成对象)-----》servlet 这还是好一些的。起初是 :request-------->servlet------>servlet 自己解析 通过request.getparxxxx(参数名) ------》封装到javabean 代码重复比较大。 如果 用springmvc 就好多了 jsp 通过form 表单提交 直接映射到 controller 方法中的参数 (一句话 就是省代码) 框架的好主要作用是: 快速开发。 好的框架设计 的作用: 松耦合,便于后期维护。减少多余的代码量。 框架包含了 许多 反射机制。 设计模式。 如何做框架:根据你的需求来设计。。。。。。 问题九:程序设计中的架构到底是指什么? 架构=框架与构造,假如将一个应用程序看做一辆车,程序员就是生产制造人员,程序中的每个关键词、常量、变量是制造汽车用的各种原材料,而函数、类、功能模块、定义就是使用原材料制造的不同级别的零部件,然后程序员将这些部件组装起来。而架构就是指导程序员如何组装程序的图纸。 架构规定了函数、类、模块之间的关系、逻辑、运行机制。那么架构师就是规划程序项目的人,架构师可以不懂编程细节,但是他必须懂得合理安排各功能块之间的关系,使整个项目具有很高的可维护性、很低的维护成本、很高的开发效率。 顺便说下,虽然我也是个程序员,但程序员就是打工的,俗称“码农”,架构师的工资比程序员高多了。当然一些小项目,当你自己规划程序的时候,你也在小规模地架构程序,比如决定是否将一个函数封装在A类,或是B类中。 问题十:java的框架是什么意思? 精华答案╄→小胖妞4级2010-06-12 框架就是一些类和接口的 *** ,通过这些类和接口协调来完成一系列的程序实现。JAVA框架可以分为三层:表示层,业务层和物理层。框架又叫做开发中的半成品,它不能提供整个WEB应用程序的所有东西,但是有了框架,我们就可以集中精力进行业务逻辑的开发而不用去关心它的技术实现以及一些辅助的业务逻辑。大家熟知的Structs和Spring就是表示层和业务层框架的强力代表。一般的公司面试时看你是否涉及过J2EE的开发,总会考察你有没有这方面框架的认知力。好的框架应当是考虑:稳定、灵活(在某个开发领域,或某个行业来说,不要搞成绝对通用,目前很难) 、容易维护(一致的表现,里面的凡是相同意义的操作都有一致的面孔)、新手容易上手、利于迅速开发N多项目(项目之间知识可以不断积累,通用功能的与项目专用功能分离)。对于当然首先要理解框架是什么?字面含义就是条条框框组成的一个架子,这个架子怎么理解呢? 1)框架可以这样来理解,如建一座房子,先把房子的拧⒅子建起来,这就是一个房子的框架。至于房子内部怎样,哪里是房间,哪里是客厅,就看设计者。软件也是一样,把一个软件的大概的拧⒅子建起来,就是软件的框架。一个软件半成品,帮你做了一些基础工作,你就可以在这个基础之上,来定制适合你自己的应用。流行的框架非常灵活,以适应不同的需求。打个比方,如果你输入到屏幕上用System.out.println()如果println方法都要自己去实现,那么是不是很恐怖。所以框架在解决大规模的问题上,这些基础工作是必需的。2)框架就是一颗松树,你只要在上边挂点装饰物和几片小雪花,装几个小电灯,它就可以变成炫目喜庆的圣诞树。3)框架象相框一样,做好相框,只要往里边放相片,随意你怎么放相片,大的,小的,都可以。 相框是不变的,相片里随你换,如果相框太小放不进相片就是框架没做好啊。 所以这里可以稍微扩展一下,一个框架的复杂程序以及加载东西的多少,是十分关键的。现在就有个别人批评spring框架过大,局限过多。 如果一个项目就是一个学校的话,struts就是开学的时候负责报名接待的部门,来了个学生(请求),他们会根据你的姓名(请求路径)查找你是那个系,那个班的,把你带到相应的地方(action),然后就是那个对应你的组织(action)来处理你了。他的花名册就是配置文件(sturts-config。xml),上面可以配置你的姓名(请求路径),是否验证你身上带没带学费(viladate),把你让谁(request)带到你的组织里去,放你行李的小车(formbean)的编号等等。xml里的struts配置就是保安要验证的信息,看你是不是有这个学校的录取通知书。等你大二大三了,你成了接待人员(action),你只要知道你去组织那些学生(配置struts-config。xml),怎么处理他们(调用那个service方法),着就是struts了。spring 的IOC就是本应该有学校做的招聘工作,交给的猎头公司(控制反转)然后把招聘到的人员交给学校使用。 模式更侧重于框架内部,也就是房间内部各家具之间如何摆放的组合思考方式。
2023-08-09 00:36:101

Spring的MVC相比Structs2有什么优点呢?

1:spring3开发效率高于struts2:spring3 mvc可以认为已经100%零配置3:struts2是类级别的拦截, 一个类对应一个request上下文,springmvc是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应所以说从架构本身上 spring3 mvc就容易实现restful url 而struts2的架构实现起来要费劲因为struts2 action的一个方法可以对应一个url而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了 4:spring3mvc的方法之间基本上独立的,独享request response数据请求数据通过参数获取,处理结果通过ModelMap交回给框架方法之间不共享变量而struts2搞的就比较乱,虽然方法之间也是独立的,但其所有Action变量是共享的这不会影响程序运行,却给我们编码 读程序时带来麻烦 5:由于Struts2需要针对每个Request进行封装,把Request,Session等Servlet生命周期的变量封装成一个一个Map,供给每个Action使用,并保证线程安全。所以在原则上,是比较耗费内存的
2023-08-09 00:36:171

怎样确定电脑中有ApacheStructs软件?

搜索 ApacheStructs
2023-08-09 00:36:252

struct s { float f; short x; }a[3]; printf(“%d”,sizeof(a))的运行结果为什么是24

这个就涉及到结构内存计算中的对其方式:sizeof(float)=4;sizeof(short)=2;跟4个字节对齐,short其实占用4个字节所以一个结构体变量占用8个字节所以sizeof(a)=3*8=24;我头像,惊喜.
2023-08-09 00:36:322

开发框架是什么

问题一:程序开发中的框架是什么 我们目前先不要了解那么多 框架是为了方便我们程序员开发 减贰代码量 及代码质量的工具 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。 可以说,一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。 java开发中的框架不是太多 我们可以慢慢学习 先慢慢了解一种。 问题二:什么是框架?框架中要包含什么?为什么要开发框架?如何做框架? 以Java 为例子。 java 之前没有框架,或者说 自己公司封装了自己的框架。为什么要封装穿? 因为1 在实际开发中 很多代码重复再敲,浪费时间就是浪费金钱。 如: jsp+javabean+servlet 开发 jsp中的数据通过request-------》filter(自己解析了 封装成对象)-----》servlet 这还是好一些的。起初是 :request-------->servlet------>servlet 自己解析 通过request.getparxxxx(参数名) ------》封装到javabean 代码重复比较大。 如果 用springmvc 就好多了 jsp 通过form 表单提交 直接映射到 controller 方法中的参数 (一句话 就是省代码) 框架的好主要作用是: 快速开发。 好的框架设计 的作用: 松耦合,便于后期维护。减少多余的代码量。 框架包含了 许多 反射机制。 设计模式。 如何做框架:根据你的需求来设计。。。。。。 问题三:Java中的三大框架分别有什么用 一、Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。 二、STRUCTS Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。 三、Hibernate Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 问题四:什么是android的框架开发 上图中的第二层Framework 问题五:什么是js框架? 直接用js会有兼容性问题,js框架一般预处理了很多兼容性问题,实现了很多常用操作,减少工作量,当然使用框架也会使整叮网站的js略臃肿,具体的站视情况使用吧 问题六:开源,免费的应用快速开发框架是什么意思 ThinkAndroid是一个免费的开源的、简易的、遵循Apache2开源协议发布的Android开发框架,其开发宗旨是简单、快速的进行Android应用程序的开发,包含Android mvc、简易sqlite orm、ioc模块、封装Android clitent的模块,具有快速构建文件缓存功能,无需考虑缓存文件的格式,都可以非常轻松的实现缓存,它还基于文件缓存模块实现了图片缓存功能,在android中加载的图片的时候,对oom的问题,和对加载图片错位的问题都轻易解决。他还包括了一个手机开发中经常应用的实用工具类,如日志管理,配置文件管理,android下载器模块,网络切换检测等等工具。 目前ThinkAndroid主要有以下模块: MVC模块:实现视图与模型的分离。 ioc模块:android中的ioc模块,完全注解方式就可以进行UI绑定、res中的资源的读取、以及对象的初始化。 数据库模块:android中的orm框架,使用了线程池对sqlite进行操作。 模块:通过client进行封装数据请求,支持异步及同步方式加载。 缓存模块:通过简单的配置及设计可以很好的实现缓存,对缓存可以随意的配置 图片缓存模块:imageview加载图片的时候无需考虑图片加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象。 配置器模块:可以对简易的实现配对配置的操作,目前配置文件可以支持Preference、Properties对配置进行存取。 日志打印模块:可以较快的轻易的是实现日志打印,支持日志打印的扩展,目前支持对sdcard写入本地打印、以及控制台打印 下载器模块:可以简单的实现多线程下载、后台下载、断点续传、对下载进行控制、如开始、暂停、删除等等。 网络状态检测模块:当网络状态改变时,对网络状态进行检测。 问题七:android 五大应用开发框架是什么 android应用开发框架是 Application Framework. 其系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分将详细介绍这5个部分。下面自底向上分析各层。 Android架构 1、Linux Kernel Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。 如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。 如果你只是做应用开发,就不需要深入了解Linux Kernel层。 2、Android Runtime Android包含一个核心库的 *** ,提供大部分在Java编程语言核心类库中可用的功能。每一个Android应用程序是Dalvik虚拟机中的实例,运行在他们自己的进程中。Dalvik虚拟机设计成,在一个设备可以高效地运行多个虚拟机。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。 大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机则是基于寄存器的。两种架构各有优劣,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。dx 是一套工具,可以将 Java .class 转换成 .dex 格式。一个dex文件通常会有多个.class。由于dex有时必须进行最佳化,会使文件大小增加1-4倍,以ODEX结尾。 Dalvik虚拟机依赖于Linux 内核提供基本功能,如线程和底层内存管理。 3、Libraries Android包含一个C/C++库的 *** ,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(application framework)暴露给开发者。下面列出一些核心库: 系统C库--标准C系统库(libc)的BSD衍生,调整为基于嵌入式Linux设备 媒体库--基于PacketVideo的OpenCORE。这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、 H.264、 MP3、 AAC、 AMR、JPG、 PNG 界面管理--管理访问显示子系统和无缝组合多个应用程序的二维和三维图形层 LibWebCore--新式的Web浏览器引擎,驱动Android 浏览器和内嵌的web视图 SGL--基本的2D图形引擎 3D库--基于OpenGL ES 1.0 APIs的实现。库使用硬件3D加速或包含高度优化的3D软件光栅 FreeType --位图和矢量字体渲染 SQLite --所有应用程序都可以使用的强大而轻量级的关系数据库引擎 4、Application Framework 通过提供开放的开发平台,Android使开发者能够编制极其丰富和新颖的应用程序。开发者可以自由地利用设备硬件优势、访问位置信息、运行后台服务、设置闹钟、向状态栏添加通知等等,很多很多。 开发者可以完全使用核心应用程序所使用的框架APIs。应用程序的体系结构旨......>> 问题八:tp框架是什么 应给是 thinkPHP 框架 也就是封装PHP了 问题九:如何选择最为合适的Web开发框架 如何选择Web开发框架 开发框架的选择,始终是个仁者见仁、智者见智的事情。尤其是Web层的开发框架,数量非常多,而且各有特色,如:Struts、WebWork、Spring MVC、Tapestry、JSF、WebPage3.0……等等。 下面先来看看为什么要使用Web开发框架 一 使用框架的必然性 框架,即framework。其实就是某种应用的半成品,把不同应用程序中有共性的一些东西抽取出来,做成一个半成品程序,这样的半成品就是所谓的程序框架。 软件系统发展到今天已经很复杂了,特别是服务器端软件,涉及到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。这样每次开发就不用白手起家,而是可以在这个基础上开始搭建。 使用框架的最大好处:减少重复开发工作量、缩短开发时间、降低开发成本。同时还有其它的好处,如:使程序设计更合理、程序运行更稳定等。基于这些原因,基本上现在在开发中,都会选用某些合适的开发框架,来帮助快速高效的开发应用系统。 了解了使用框架的必然性,下面来看看如何选择,当然我们的话题集中在Web层的开发框架。在谈这个问题之前,先来看看我们在Web开发中究竟需要做些什么工作: 二 Web层开发的工作 在J2EE开发中,分层是基本的思想,3层架构或者多层架构早已深入人心,在这里我们就把目光集中到Web层,看看到底Web层开发做了那些工作: 1:数据展示 Web层需要从逻辑层获取需要展示的数据,然后以合理的方式在页面进行展示 2:人机交互 用户需要从界面上输入数据,在界面上进行按钮点击,进而触发事件,标准的事件驱动模型,然后跟后台进行数据交换,出现新的界面。 3:收集数据,调用逻辑层接口 Web层收到用户的事件请求,需要调用相应的逻辑层接口来进行处理,Web层是不会有任何逻辑处理的。调用逻辑层接口,需要传递参数,这时需要收集用户在界面上输入的数据,然后进行组织,组织成为逻辑层接口需要的数据封装形式(通常都是ValueObject)。 4:根据逻辑层的数据来重新展示页面 逻辑层处理完了,需要返回数据或信息到界面上。这个时候Web层需要根据返回的值选择合适的页面,然后展示这些数据或者信息。 从上面可以看出,Web层开发的主要工作集中在展示上,也就是图形用户界面。这一部分是用户直观感受应用程序的窗口,也是用户要求最多的地方,其表现形式也是最丰富的。 三 Web层开发的步骤 下面再来总结一下Web层开发的大致步骤(也就是需要开发人员做的工作): 注意:这里讨论的Web层开发,是不使用任何开发框架时候的开发。 1:写页面Html,到底有哪些数据需要在界面上表现 2:每个数据的具体表现形式,如:有的需要表现成为下拉列表,有的需要表现成为单选按钮等。 3:界面表现形式的逻辑布局,所谓逻辑布局是指某些数据的表现形式应该放在前面,某些应该放在后面;某些放在上面,某些放在下面。如:某个请假申请 的业务,有请假开始时间和结束时间,很明显开始时间的表现就应该排在结束时间的前面。而美工是负责最后页面的美观,一般美工不能动界面的逻辑布局。 4:完成前面3步,页面的表现形式的大致模样就有了,下面需要来做功能性的开发。第一个就是这些表现形式的值的来源,如:下拉列表显示的值从什么地方来。值的来源方式很多,有数据库中来、固定值、某断程序运行的中间结果、前面页面传递过来等等,当然典型的还是来自数据库。 好了,确定了值的来源,开发人员就要写代码来获取这些值,然后把这些值赋值到对应的表现形式里面。 5:还有一些......>> 问题十:android开发一般都使用什么框架 目前框架使用的主要都是开源框架,都可以在github上找到: 1、volley,项目地址 2、android-async- 3、Afinal框架 项目地址 4、xUtils框架 项目地址 5、ThinkAndroid 项目地址 6、LoonAndroid 项目地址 主要有以下模块: (1) 自动注入框架(...
2023-08-09 00:36:541

JAVA的三大框架有什么作用?

简单来说的话Java三大框架主要用来做WEN应用。Struts主要负责表示层的显示,Spring利用它的IOC和AOP来处理控制业务,Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
2023-08-09 00:37:112

找不到tld标签(jsp +structs配置问题)

导入struts的包后,会自动在WEB-INFO添入struts-bean.tld标签,可能是你在jsp页面引入该标签文件的uri写错了吧!
2023-08-09 00:37:204

struts2做控制器相比servlet有什么优点

楼上的问题问的是struts2不是struts1struts2是基于xwork框架,核心是拦截器。而且加入了很多AOP的思想。struts2的控制器可以不依赖于web容器(普通类就可以充当),而struts1.x或者servlet必须要依赖于web容器(struts1核心还是servlet,而servlet必须要引入respone和request对象),相比之下struts2框架更轻量级。其次struts2默认就是多线程的,而struts1.x或者servlet的多线程问题一直都是困扰开发的实际问题,相比之下struts2框架在多线程处理方面更有益。当然就前台的MVC框架而言,各有利弊。struts2还有很多新特性,需要楼主慢慢去理解。这只是我个人的一些浅见,仅供参考。
2023-08-09 00:37:282

求高手解答,SSH集成开发中,struts2 , spring,hibernate 都各自起着什么作用,还有MVC的作用是什么?

struts2 负责WEB层的 交互, hibernate 负责跟数据库操作, spring 是用来管理 struts2 很hibernate的。。 MVC 是一个模式。。。
2023-08-09 00:37:365

C语言结构体指针的初始化应该怎样理解?

1、structs{charc;inti;};struct*p1;/*p1是指向s结构体的指针*/2、typedefstruct{charc;inti;}s,*ps;s*p2;/*p2是指向结构体的指针*/psp3;/*p3是指向s结构体的指针*/
2023-08-09 00:37:501

java structs工程发布到websphere后报Error 503: Failed to load target servlet [action]是什么意思啊?

检查以下你的配置文件啊,不能装载目标servlet 503状态码  由于临时的服务器维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。如果能够预计延迟时间,那么响应中可以包含一个 Retry-After 头用以标明这个延迟时间。如果没有给出这个 Retry-After 信息,那么客户端应当以处理500响应的方式处理它。   注意:503状态码的存在并不意味着服务器在过载的时候必须使用它。某些服务器只不过是希望拒绝客户端的连接。
2023-08-09 00:37:571

structs1和structs2的区别

struts1与struts2本质区别 :1 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。Struts 2提供一个ActionSupport基类去实现常用的接口。即使Action接口不是必须实现的,只有一个包含execute方法的POJO类都可以用作Struts 2的Action。2 线程模式方面的对比:Struts 1 Action是单例模式并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Struts 1 Action能做的事,并且要在开发时特别小心。Action资源必须是线程安全的或同步的;Struts 2 Action对象为每一个请求产生一个实例,因此没有线程安全问题。3 Servlet依赖方面的对比:Struts 1 Action依赖于Servlet API,因为Struts 1 Action的execute方法中有HttpServletRequest和HttpServletResponse方法。Struts 2 Action不再依赖于Servlet API,从而允许Action脱离Web容器运行,从而降低了测试Action的难度。 当然,如果Action需要直接访问HttpServletRequest和HttpServletResponse参数,Struts 2 Action仍然可以访问它们。但是,大部分时候,Action都无需直接访问HttpServetRequest和 HttpServletResponse,从而给开发者更多灵活的选择。4 可测性方面的对比:测试Struts 1 Action的一个主要问题是execute方法依赖于Servlet API,这使得Action的测试要依赖于Web容器。为了脱离Web容器测试Struts 1的Action,必须借助于第三方扩展:Struts TestCase,该扩展下包含了系列的Mock对象(模拟了HttpServetRequest和HttpServletResponse对象),从而可以脱离Web容器测试Struts 1的Action类。Struts 2 Action可以通过初始化、设置属性、调用方法来测试。5 封装请求参数的对比:Struts 1使用ActionForm对象封装用户的请求参数,所有的ActionForm必须继承一个基类:ActionForm。普通的JavaBean不能用作ActionForm,因此,开发者必须创建大量的ActionForm类封装用户请求参数。虽然Struts 1提供了动态ActionForm来简化ActionForm的开发,但依然需要在配置文件中定义ActionForm;Struts 2直接使用Action 属性来封装用户请求属性,避免了开发者需要大量开发ActionForm类的烦琐,实际上,这些属性还可以是包含子属性的Rich对象类型。如果开发者依然怀念Struts 1 ActionForm的模式,Struts 2提供了ModelDriven模式,可以让开发者使用单独的Model对象来封装用户请求参数,但该Model对象无需继承任何Struts 2基类,是一个POJO,从而降低了代码污染。6 表达式语言方面的对比:Struts 1整合了JSTL,因此可以使用JSTL表达式语言。这种表达式语言有基本对象图遍历,但在对集合和索引属性的支持上则功能不强;Struts 2可以使用JSTL,但它整合了一种更强大和灵活的表达式语言:OGNL(Object Graph Notation Language),因此,Struts 2下的表达式语言功能更加强大。7 绑定值到视图的对比:Struts 1使用标准JSP机制把对象绑定到视图页面;Struts 2使用“ValueStack”技术,使标签库能够访问值,而不需要把对象和视图页面绑定在一起。8 类型转换的对比:Struts 1 ActionForm 属性通常都是String类型。Struts 1使用Commons-Beanutils进行类型转换,每个类一个转换器,转换器是不可配置的;Struts 2使用OGNL进行类型转换,支持基本数据类型和常用对象之间的转换。9 数据校验的对比:Struts 1支持在ActionForm重写validate方法中手动校验,或者通过整合Commons alidator框架来完成数据校验。Struts 2支持通过重写validate方法进行校验,也支持整合XWork校验框架进行校验。10 Action执行控制的对比:Struts 1支持每一个模块对应一个请求处理(即生命周期的概念),但是模块中的所有Action必须共享相同的生命周期。Struts 2支持通过拦截器堆栈(Interceptor Stacks)为每一个Action创建不同的生命周期。开发者可以根据需要创建相应堆栈,从而和不同的Action一起使用。
2023-08-09 00:38:371

structs2跟structs的差别

多了个C拼错了,差别就是strust是要淘汰的技术已经不升级了,现在新项目都会用struts2了
2023-08-09 00:38:442

JAVA的三大框架有什么作用啊?

你说的是SSH ?如果是,我告诉你,用处就是让人更加的厌恶J2EE。
2023-08-09 00:39:027

java SSH作用?

  一、Spring  Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。  二、STRUCTS  Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。  三、Hibernate  Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
2023-08-09 00:39:171

struts2做控制器相比servlet有什么优点

不管是struts1还是struts2你可以认为structs只是在servlet的基础上进了一层框架的封装,所谓的mvc的C只是一个抽象的概念(即使在同一个类里面,如servlet用一个方法来表示或实现一个C这也是可以的),只是说servlet它本身是所有要作的事情都写在了doXXX方法里面,然后动态生成页面的。而structs本身也是有一个servlet的,这个就是struts里面的C,然后把其它的工作分到别到的部分来实现。至于优点吧,各有各的说法,不评价。
2023-08-09 00:39:275

学习java步骤是什么

这是我的学习计划 很有条理 希望对你能有帮助一、CORE JAVA 内容: Java的面向对象的编程语言的特性的地方, 比如继承,构造器,抽象类,接口,方法的多态,重载,覆盖,垃圾回收,Java的异常处理机制,文件流I/O,OOP,OOD等面向对象设计。 资料: 《Thinking in Java》Sun 公司的《Tutorial》 二、基于JDK的java基础类库 内容: 最核心的只有4个: java.lang.*; java.io.*; java.util.*; java.sql.*; 学习方法: 首先要通读整个package的框架,了解整个package的class,interface,exception的构成,最好是能够找到介绍整个包框架的文章。这些专门介绍包的书籍的前几章应该就是这些总体的框架内容介绍。 目标: Java给我们提供了哪些类,每个类是用在什么场合,当我遇到问题的时候,我知道哪个类,或者哪几个类的组合可以解决我的问题,主要对每个包的总体框架的把握。 资料: Sun公司的文档,及书店购买专门的相关书籍,j2se手册。 三、Java Web 编程 内容: JSP语法、字串处理、JDBC、数据库连接池,Tomcat服务器配制、管理、JAVA BEAN的使用、基于HTTP协议的Servlet,JSP的MVC框架结构structs的灵活运用,构建java的标签,标记。 资料: 一本JSP入门、语法书籍,《精通STRUCTS》,JSP手册。 项目: 编写一套基于Structs、javaBean的一套网上书店购物系统。 四、JAVA GUI编程 内容: AWT的使用、SWING基本控件的基础代码(二十个左右)、驱动事件,一套基于XML的模板方法。 资料: NMS系统,IBM swing教程,java i/o文件处理机制文档。 五、UML/Rose XDE面向对象的分析与建模技术 内容: 理解UML与面向对象的本质特性、UML与OOAD方法之间的关系;理解UML语言的基本语法、语义;了解九种UML模型图与对象的静态结构、动态行为之间的对应关系;熟悉使用建模工具Rational XDE绘制各种模型图;理解面向对象设计(OOD)的基本技巧。 资料: IBM的WEB SPHERE软件、建模工具、相关书籍。 六、设计模式 内容: 设计模式的基本原则,创建型模式;结构型模式;行为型模式; JavaEE模式,模式语言与框架(framework)模式。 目标:使用设计模式提高软件系统可重用性使用设计模式提高软件系统可重用性。 七、WebSphere /Weblogic应用服务器 与EJB高级编程 内容:创建基于JAVA EE1.4规范和WebSphere /WebLogic 的EJB中间件开发,内容包括Session Beans,Entity Beans,Message-Driven Beans,JAAS,JNDI等。EJB高级特性:包括事务、安全性、关系管理。同时讲解最新EJB3.0技术规范。 八、Spring轻量级Java EE开发框架 内容: Spring框架介绍;安装和构建Spring;控制反转(IoC);面向方面编程(Spring AOP);持久化服务。 九、Hibernate对象持久化技术 内容: Hibernate简介;对象与关系型数据库的映射( ORM )原理;在Java应用中使用Hibernate的步骤;通过Hibernate API操纵数据库。 十、深入理解JORAM(一个类似于openJMS分布在ObjectWeb之下的JMS消息中间件) 内容: 熟读《Joram-4.3-en》,掌握JMS,JNDI,TCP/IP,RMI等技术
2023-08-09 00:39:401

若有以下语句typedef struct S{int g;char h;}T;以下叙述中正确的是( )。S类型的变量

【答案】:B解析:语句typedefstructS{intg;charh;}T的作用是用T作为struetS{intg;charh;)的简写,所以选B。
2023-08-09 00:39:481

如何在项目中看出用的是struts1还是用的struts2?

看导入的jar包也行啊。。。
2023-08-09 00:40:073

Struts 的 ActionServlet 与正常Servlet 的区别

你说的不错,ActionServlet的确是Servlet的一种补充(可以看成是处理*.do的Servlet),其最大的好处就是借助了“数据自动封装”技术自动封装了从表单提交到服务器要处理的数据。而且ActionServlet相对与Servlet而言还提供了以下便利的操作:1、使用mapping.findforward(路径)返回指定在配置文件中<forward>节点的对应映射文件,或者mapping.getInputForward()返回原页面(都是相当于在内部调用request.getRequestDispatcher(...).forward(requst,response))方法,其中可以包含返回request.setAttribute(..,..)的内容,您不必担心总是将数据存放在Session中而丢失大量内存;此外不必考虑相对路径问题(注意,你有没有仔细考虑过在Servlet中写response.sendRedirect(..)和request.getRequestDispatcher(...).forward(requst,response)跳转到同一个页面时候的不同地方?【思考一下,如果你的一个工程是C盘下,而其中包含一个pages的文件夹,其中有一个文件demo.jsp,C盘下有一个index.jsp文件,尝试写出从demo.jsp页面路径开始,使用response.sendRedirect(..)和request.getRequestDispatcher(...).forward(requst,response)的访问到index.jsp方法?再和ActionServlet的findforward方法进行比较,你会领悟的】。response.sendRedirect("index.jsp")request.getRequestDispatcher("../index.jsp").forward(requst,response)而配置以后,你就不必为这些路径担心,只要写mapping.findforward("index"),可能您的配置文件会这样配置:<forward path="/index.jsp" name="index"/>另外Structs还提供了大量的标签库配合ActionServlet使用,在Servlet中只能和JSP标准标签库配套使用,前者更和谐。最后补充一句:你是否学过DispatcherAction?这个才是Structs中最强大的——设想一下,如果一个页面需要同时完成“增”、“删”、“改”、“查”任务,你要用几个Servlet?(四个),即便用一个,你必须要设置一个变量,以便判断究竟是执行什么操作?所以这个DispatcherAction就是解决一个页面进行多业务逻辑进行的。实际上公司在SSH开发项目多数用DispatcherAction,单纯Action和Servlet很少使用(一般做单业务逻辑较多,诸如登陆、注销或者是前台顾客查询等)。
2023-08-09 00:40:151

c++用结构体类型定义一个函数是什么意思??????? 比如

如果结构体中所有数据都是函数调用时需指定的参数,那么就不算破坏dll封装性。如果结构体只有部分数据是函数调用时需要指定的,那么可以将结构体中的成员作为函数参数传递过去,比如:structS{A;B;C;};只需要成员A和B,所以函数可是这样:voidFunction(A,B);或者另外定义一个结构体作为接口:structY{A,B};函数数可以是这样:voidFuntion(Y*p_y);
2023-08-09 00:40:271

请教Byte[]转换为struct的问题 C#

ST1 st=new ST1(); byte[] buf={1,2,3,4,5}; st.a=buf[0]; st.b=buf[1]; byte[] newbyte=new byte[3]; Array.Copy(buf,newbyte,2,3); st.c=newbyte;
2023-08-09 00:40:341

latex在线绘制表格-如何使用latex生成表格

如何快速在线生成latex表格先使用word或手工表格草稿画再始使用latex语自所需要效画首先引入宏包usepackage{multirow}习表格相关语例multirow宏包提供multirow命令表格排版横跨两行文本命令格式:multirow{nrows}[bigstructs]{width}[fixup]{text}nrows设定所占用行数bigstructs选项主要使用bigstruct宏包使用width设定该栏文本宽度想让LaTeX自行决定文本宽度则用*即fixup选项主要用调整文本垂直位置text所要排版文本用\强迫换行根据latex语第幅表格代码:%\%Pleaseaddthefollowingrequiredpackagestoyourdocumentpreamble:%usepackage{multirow}documentclass{article}usepackage{multirow}egin{tabular}{|l|l|l|l|}hlinemultirow{4}{*}{Thisisademotable}&C2a&multirow{4}{*}{Thisisanotherone}&C4a\&C2b&&C4b\&C2c&&C4c\&C2d&&C4d\hlineend{tabular}end{document}第二表格latex代码:hlinemultirow{2}{*}{Multi-Row}&multicolumn{2}{c|}{Multi-Column}&multicolumn{2}{c|}{multirow{2}{*}{Multi-RowandCol}}\cline{2-3}&column-1&column-2&multicolumn{2}{c|}{}\hlinelabel-1&label-2&label-3&label-4&label-5\hlineend{tabular}如何使用latex生成表格先使用word或手工将表格草稿画出。再开始使用latex语法将自己所需要的效果画出来。首先,引入宏包usepackage{multirow}学习表格的相关语法,例如,multirow宏包提供了multirow命令可以在表格中排版横跨两行以上的文本。命令的格式如下:multirow{nrows}[bigstructs]{width}[fixup]{text}nrows设定所占用的行数。bigstructs此为可选项,主要是在你使用了bigstruct宏包时使用。width设定该栏文本的宽度。如果想让LaTeX自行决定文本的宽度,则用*即可。fixup此为可选项,主要用来调整文本的垂直位置。text所要排版的文本。可用\来强迫换行根据latex的语法,得出第一幅表格的代码为:%\%Pleaseaddthefollowingrequiredpackagestoyourdocumentpreamble:%usepackage{multirow}documentclass{article}usepackage{multirow}egin{tabular}{|l|l|l|l|}hlinemultirow{4}{*}{Thisisademotable}&C2a&multirow{4}{*}{Thisisanotherone}&C4a\&C2b&&C4b\&C2c&&C4c\&C2d&&C4d\hlineend{tabular}end{document}第二个表格的latex代码为:hlinemultirow{2}{*}{Multi-Row}&multicolumn{2}{c|}{Multi-Column}&multicolumn{2}{c|}{multirow{2}{*}{Multi-RowandCol}}\cline{2-3}&column-1&column-2&multicolumn{2}{c|}{}\hlinelabel-1&label-2&label-3&label-4&label-5\hlineend{tabular}如何使用latex生成表格先使用word或手工表格草稿画再始使用latex语自所需要效画首先引入宏包usepackage{multirow}习表格相关语例multirow宏包提供multirow命令表格排版横跨两行文本命令格式:multirow{nrows}[bigstructs]{width}[fixup]{text}nrows设定所占用行数bigstructs选项主要使用bigstruct宏包使用width设定该栏文本宽度想让LaTeX自行决定文本宽度则用*即fixup选项主要用调整文本垂直位置text所要排版文本用\强迫换行根据latex语第幅表格代码:%\%Pleaseaddthefollowingrequiredpackagestoyourdocumentpreamble:%usepackage{multirow}documentclass{article}usepackage{multirow}egin{tabular}{|l|l|l|l|}hlinemultirow{四}{*}{Thisisademotable}&C二a&multirow{四}{*}{Thisisanotherone}&C四a\&C二b&&C四b\&C二c&&C四c\&C二d&&C四d\hlineend{tabular}end{document}第二表格latex代码:hlinemultirow{二}{*}{Multi-Row}&multicolumn{二}{c|}{Multi-Column}&multicolumn{二}{c|}{multirow{二}{*}{Multi-RowandCol}}\cline{二-三}&column-一&column-二&multicolumn{二}{c|}{}\hlinelabel-一&label-二&label-三&label-四&label-5\hlineend{tabular
2023-08-09 00:40:411

c#中的class是什么

class 。类的关键词也是这个啊
2023-08-09 00:40:527

visualstudio显示整个类结构

你好,你是想问visualstudio显示整个类结构的方法步骤吗?visualstudio显示整个类结构的方法步骤:1、打开电脑进入设置图标菜单,2、弹出了下拉菜单选中为settings选项,3、点击左侧中breakcrumbs选项,4、进入到breakcrumbs界面中,勾选showstructs选项,5、勾选showstructs选项之后,保存就可以显示整个类结构了。VisualStudio是VS的全称,VS是美国微软公司的开发工具包系列产品;显示整个类结构是指显示此系统整个类目的结构,通过设置可以实现。
2023-08-09 00:41:081

C#与C sharp

微软定的!鬼知道呢!
2023-08-09 00:41:1910

C#是什么?

就是在baidu里google ,再bing
2023-08-09 00:41:575

求助,初学python报错bad char in struct format,求大神帮助

在网络通信当中,大多传递的数据是以二进制流(binarydata)存在的。当传递字符串时,不必担心太多的问题,而当传递诸如int、char之类的基本数据的时候,就需要有一种机制将某些特定的结构体类型打包成二进制流的字符串然后再网络传输,而接收端也应该可以通过某种机制进行解包还原出原始的结构体数据。python中的struct模块就提供了这样的机制,该模块的主要作用就是对python基本类型值与用python字符串格式表示的Cstruct类型间的转化(ThismoduleperformsconversionsbetweenPythonvaluesandCstructsrepresentedasPythonstrings.)。
2023-08-09 00:42:121