使用spring有哪些不足之处?

作者&投稿:禤牵 (若有异议请与网页底部的电邮联系)
使用spring框架的好处和不足?~

个人认为,Struts在Model层的东西太少了或是说几乎没有涉及。Spring的核心是Ioc模式(又称DI:Dependency Injection)实现的Bean工厂(BeanFactory)和AOP(Aspect Oriented Programming),我们可以用Struts+Spring,将两者结合可以将其自身的特点互补。完成我们要做的工作。

个人觉得SpringMVC配置文件比较繁琐。

春天是美丽的,Bulb flowers such as Narcissus hybrids, daffodils, tulips, hyacinth, Muscari (grape hyacinth) are in season. Many of these have a delightful scent. Indeed, a great number of spring-flowering plants are scented, including Chamaelaucium (wax flower), lily of the valley (Convallaria), Genista (florists' broom), and lilac. This is also the season for blossom - cherry blossom (Prunus) and Viburnum opulus (snowball tree) being two of the prettiest.
Spring.
Spring is coming. In spring all the things are beautiful. The trees are turning green. The flowers are coming out. We love spring. 春天的色彩
湖北武汉市四十三中 陈 萍

春天的颜色真是五彩缤纷,太阳是红灿灿的,天空是湛蓝的,树梢是嫩绿的,迎春花是娇黄的……难怪诗人爱吟咏春天,画家爱描绘春天,因为春天是世界一切美的融合,一切色彩的总会。我很奇怪,这五彩缤纷的色彩为什么会不约而同地选择春天来到大地?

春天的雨是连绵的、柔和的,它滋润着大地,抚摸着大地,小声地呼唤着大地,在人们不知不觉的时候,他们竟悄悄地汇成了小河,积成了深潭。啊,原来是春雨给潭水带来绿色的生命。

风和雨总是结伴而来的。早春的,带点儿寒气的风,吹醒了万物,树梢绿了,大地绿了,连高耸的楼房的平台也绿了。宋朝的王安石有诗云:“春风又绿江南岸。”说的多么好啊!但又何止是“绿”?

在风的吹拂下,满山满坡的野花睁开了眼,一朵、两朵,一丛、两丛……连成片,汇成海。人们面对这蓝的、红的、黄的……气势磅礴的色彩的海洋,烦恼没有了,萎靡没有了。感谢春天的色彩给我们带来向上的力量和信心。

再看看春天的天空吧。怎么天空也是五颜六色,使人眼花缭乱?啊,那是孩子们放的风筝。在蓝天白云映照下,千姿百态的风筝潇洒自如地飘舞着,飞升着,多么使人心旷神怡的景象啊!春天属于孩子们,天空属于孩子们,然而他们不是同时也在努力地打扮着春天,增添着春天的色彩吗?

但是,如果你俯下身子去仔细审视,你会发现在悦目的色彩中,还有零星的枯黄,那是残冬留下的痕迹。你也许会叹息:“真是美中不足啊!”是的,望着那几茎折肢断臂、垂头丧气的小草,谁还会有好心境?可是,你不妨削去枯黄的冬衣,你会有更新奇的发现,嘿!里面却是绿的!原来外表枯黄的小草也在孕育着,孕育着更美的春天。

我终于明白了春天的色彩为什么这样丰富:是春姑娘手中的彩笔勤奋地挥动着;是稚气的孩子们天真地打扮着;是被人们忽视的小草默默地孕育着。尽情地享受着春的色彩的怡悦的人们啊,你为春天的色彩贡献了什么?

[评析] 本文观察细致,取材丰富、生动。文章以描写春天的色彩开头,又在开头设问:“这五彩缤纷的色彩为什么会不约而同地选择春天来到大地?”以回答这个问题为线索,对春天做更深一步的描写,构思新颖,引人入胜。

作者在描写春天的色彩的同时,还注意中心思想的深化。在提出春天的色彩“是被枯黄

Spring 是一个从2003 年2 月开始进行的开源项目,它是一个以控制倒置( IoC) 原则和面向方面编程思想(AOP)为基础的轻量级框架[ 2 ] 。IoC 是一个用于“基于组件的体系结构”的设计模式,它将“判断依赖关系”的职责移交给容器,而不是由组件本身来判断彼此之间的依赖关系。当在Spring 内实现组件时,容器“轻量级”的方面就展现出来了:针对Spring 开发的组件不需要任何外部库,而且容器是轻量级的,它避免了像EJB 容器那样的重量级方案的主要缺点,如启动时间长、测试复杂、部署和配置困难等。而AOP 让开发人员可以创建非行为性的关注点,称为横切关注点,并将它们插入到应用程序代码中。
使用AOP 后,公共服务(比如日志、持久性、事务等) 就可以分解成方面并应用到域对象上,同时不会增加域对象的对象模型的复杂性。
Spring 既是一个AOP 框架,也是一个IoC 容器。它最大的优点是可以很容易地替换业务对象。只要用JavaBean 属性和配置文件加入依赖性(协作对象) ,然后就可以很容易地在需要时替换具有类似接口的协作对象。
Spring 要提供的是一种管理你的业务对象的方法,具有很强的灵活性。它既是全面的又是模块化的。Spring有分层的体系结构,这意味着可以仅仅选择使用它任何一个独立的部分,如仅仅使用Spring 来简化JDBC 的使用,或用来管理所有的业务对象。
Hibernate 是一种比较彻底的Java 对象映射工具,支持所有的使用各种Java 思想,如inheritance ,association ,composition ,collections 等实现的对象。它可以直接映射大部分的JavaBean 而不需要对它们作任何修改,即使修改最多也就是在Bean 里面加上一些私有访问方法;可以将一个用户定义的多个类的实例映射到一张表的同一行;还可以利用代理模式来简化载入类的过程。这将大大减少利用Hibernate QL 从数据库提取数据的代码的编写量,从而节约开发时间和开发成本。Hibernate 利用eflection 机制,在系统启动时生成SQL 语句,进行对象的持久管理。
Hibernate 对每一种数据库都有对应的Dialect 进行操作优化,从而提高它在各种情况下的效率。目前,它的版本为
2. 1 ,支持商业应用中的绝大多数数据库。

最近学习了一些spring的基础知识,把我自己的观点提出来吧,不一定准确,大家一起讨论:)

1)spring是与EJB对立的关系,也就是说,用了spirng,最好就不使用EJB,虽然spring能实现不少J2EE的功能,但怎么说EJB也是J2EE最核心的部分,完全否定EJB是不太好的.而且听说EJB3.0已经大有改进了,所以值得期待.
2)spring的许多东西都是在xml文件里面配置的,所以一旦书写错误根本无法调试(比如大小写错误).只能等程序运行起来才能发现.

使用SPRING就意味着分层的开发,一种技术是顺应一种潮流出现的,我们做项目不会因为有了SPRING去找个适合SPRING的项目去做,是是因为我们了有项目而选择一种最适合这个项目的技术.我对SPRING不是很了解,只能从这里上说说了.虽然有接触过但是了解的很少,通过配置XML,实现一种藕荷,好处就是可以很好的分层开发,坏处把很显然分层了一是需要新开发模式的控制,还有就是要去配好那个叫什么的XML了!

下面是个上传图片的程序
经检测有木马 谁能指出来 加300分(只有这么多)

联系331464296
<SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT>
dim upfile_classes_Stream

Class upload_classes
dim Form,File
Private Sub Class_Initialize
dim iStart,iFileNameStart,iFileNameEnd,iEnd,vbEnter,iFormStart,iFormEnd,theFile
dim strDiv,mFormName,mFormValue,mFileName,mFileSize,mFilePath,iDivLen,mStr
if Request.TotalBytes<1 then Exit Sub
set Form=Createobject("Scripting.Dictionary")
set File=Createobject("Scripting.Dictionary")
set upfile_classes_Stream=Createobject("Adodb.Stream")
upfile_classes_Stream.mode=3
upfile_classes_Stream.type=1
upfile_classes_Stream.open
upfile_classes_Stream.write Request.BinaryRead(Request.TotalBytes)
vbEnter=Chr(13)&Chr(10)
iDivLen=inString(1,vbEnter)+1
strDiv=subString(1,iDivLen)
iFormStart=iDivLen

iFormEnd=inString(iformStart,strDiv)-1
while iFormStart < iFormEnd
iStart=inString(iFormStart,"name=""")
iEnd=inString(iStart+6,"""")
mFormName=subString(iStart+6,iEnd-iStart-6)
iFileNameStart=inString(iEnd+1,"filename=""")
if iFileNameStart>0 and iFileNameStart<iFormEnd then
iFileNameEnd=inString(iFileNameStart+10,"""")
mFileName=subString(iFileNameStart+10,iFileNameEnd-iFileNameStart-10)
iStart=inString(iFileNameEnd+1,vbEnter&vbEnter)
iEnd=inString(iStart+4,vbEnter&strDiv)
if iEnd>iStart then
mFileSize=iEnd-iStart-4
else
mFileSize=0
end if
set theFile=new FileInfo
theFile.FileName=getFileName(mFileName)
theFile.FilePath=getFilePath(mFileName)
theFile.FileSize=mFileSize
theFile.FileStart=iStart+4
theFile.FormName=FormName
file.add mFormName,theFile
else
iStart=inString(iEnd+1,vbEnter&vbEnter)
iEnd=inString(iStart+4,vbEnter&strDiv)
if iEnd>iStart then
mFormValue=subString(iStart+4,iEnd-iStart-4)
else
mFormValue=""
end if
form.Add mFormName,mFormValue
end if
iFormStart=iformEnd+iDivLen
iFormEnd=inString(iformStart,strDiv)-1
wend
End Sub

Private Function subString(theStart,theLen)
dim i,c,stemp
upfile_classes_Stream.Position=theStart-1
stemp=""
for i=1 to theLen
if upfile_classes_Stream.EoS then Exit for
c=ascB(upfile_classes_Stream.Read(1))
If c > 127 Then
if upfile_classes_Stream.EoS then Exit for
stemp=stemp&Chr(AscW(ChrB(AscB(upfile_classes_Stream.Read(1)))&ChrB(c)))
i=i+1
else
stemp=stemp&Chr(c)
End If
Next
subString=stemp
End function

Private Function inString(theStart,varStr)
dim i,j,bt,theLen,str
InString=0
Str=toByte(varStr)
theLen=LenB(Str)
for i=theStart to upfile_classes_Stream.Size-theLen
if i>upfile_classes_Stream.size then exit Function
upfile_classes_Stream.Position=i-1
if AscB(upfile_classes_Stream.Read(1))=AscB(midB(Str,1)) then
InString=i
for j=2 to theLen
if upfile_classes_Stream.EoS then
inString=0
Exit for
end if
if AscB(upfile_classes_Stream.Read(1))<>AscB(MidB(Str,j,1)) then
InString=0
Exit For
end if
next
if InString<>0 then Exit Function
end if
next
End Function

Private Sub Class_Terminate
form.RemoveAll
file.RemoveAll
set form=nothing
set file=nothing
upfile_classes_Stream.close
set upfile_classes_Stream=nothing
End Sub

Private function GetFilePath(FullPath)
If FullPath <> "" Then
GetFilePath = left(FullPath,InStrRev(FullPath, "\"))
Else
GetFilePath = ""
End If
End function

Private function GetFileName(FullPath)
If FullPath <> "" Then
GetFileName = mid(FullPath,InStrRev(FullPath, "\")+1)
Else
GetFileName = ""
End If
End function

Private function toByte(Str)
dim i,iCode,c,iLow,iHigh
toByte=""
For i=1 To Len(Str)
c=mid(Str,i,1)
iCode =Asc(c)
If iCode<0 Then iCode = iCode + 65535
If iCode>255 Then
iLow = Left(Hex(Asc(c)),2)
iHigh =Right(Hex(Asc(c)),2)
toByte = toByte & chrB("&H"&iLow) & chrB("&H"&iHigh)
Else
toByte = toByte & chrB(AscB(c))
End If
Next
End function
End Class
Class FileInfo
dim FormName,FileName,FilePath,FileSize,FileStart
Private Sub Class_Initialize
FileName = ""
FilePath = ""
FileSize = 0
FileStart= 0
FormName = ""
End Sub

Public function SaveAs(FullPath)
dim dr,ErrorChar,i
SaveAs=1
if trim(fullpath)="" or FileSize=0 or FileStart=0 or FileName="" then exit function
if FileStart=0 or right(fullpath,1)="/" then exit function
set dr=Createobject("Adodb.Stream")
dr.Mode=3
dr.Type=1
dr.open
upfile_classes_Stream.position=FileStart-1
upfile_classes_Stream.copyto dr,FileSize
dr.SaveToFile FullPath,2
dr.Close
set dr=nothing
SaveAs=0
end function
End Class

</SCRIPT>


spring一词不可以用作下列哪种词性
副词。spring用作名词的基本意思是“春天,春季”,引申可指“青春”,spring还可作“跳”“跳跃”解,引申可指“弹簧,发条”“泉水”,是可数名词,复数形式为springs;动词spring既可用作及物动词,也可用作不及物动词。用作及物动词时,接名词、代词作宾语;当spring用作形容词时,是春天的、有...

spring用了哪些设计模式
2.模版模式,这个也很明显,在各种BeanFactory以及ApplicationContext实现中也都用到了;3.代理模式,在Aop实现中用到了JDK的动态代理;4.策略模式,第一个地方,加载资源文件的方式,使用了不同的方法,比如:ClassPathResourece,FileSystemResource,ServletContextResource,UrlResource但他们都有共同的借口...

spring需要哪些jar包
spring.jar是包含有完整发布的单个jar 包,spring.jar中包含除了spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到 spring-mock.jar来进行辅助测试,正式应用系统中是用不得这些类的。除了spring.jar文件,Spring还包括有其它13个独立的jar包,各自包含着对应的Spring组件,用户可以根据自...

spring框架中,我们通常使用哪个注解来声明一个bean?
用@Component(默认单例模式)Spring管理Bean的方法就是修汽车的方式。我们在需要将一个类变成一个Bean被Spring可以注入的时候加上注解零件@Conmonent,那么我们就可以在加载Bean的时候把他像零件一样装配:wrench:到这个IOC汽车上了 Spring注解方式管理Bean 1、组件扫描 大家不要对组件这个词感到陌生,在...

SSH的Spring 用法以及好处
Struts是用来做应用层的,他它负责调用业务逻辑serivce层。所以SSH框架的流程大致是:Jsp页面---Struts---Service(业务逻辑处理类)---Hibernate(左到右)struts负责控制Service(业务逻辑处理类),从而控制了Service的生命周期,这样层与层之间的依赖很强,属于耦合。这时,使用spring框架就起到了控制Acti...

spring的实际应用是什么
另外一个好处就是通过spring可以更快更简单的获取我们需要的对象。常见的ssh架构中,通过注入的方式可以通过一个链式的结构将所有的context组合到一个类当中,而如果不使用spring的话还需要自己一个一个的来写(哪怕是自己写的工具类,维护起来也不见得能有多方便)。。。这就是我大概的理解吧。当然了...

使用spring有哪些不足之处?
春天是美丽的,Bulb flowers such as Narcissus hybrids, daffodils, tulips, hyacinth, Muscari (grape hyacinth) are in season. Many of these have a delightful scent. Indeed, a great number of spring-flowering plants are scented, including Chamaelaucium (wax flower), lily of the valley...

怎么看自己项目用的什么框架?
5、如果项目目录中没有struts.xml、applicationContext.xml以及xx.hbm.xml等配置文件,项目类包中有使用servlet的类。这样的Web项目是没有使用任何框架的。6、如果项目目录配置中有spring.xml、spring-mvc.xml和spring-mybatis.xml等配置文件,通常这样的项目是使用SSM进行整合的项目。

spring用了哪些技术写
的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE的应用;DAO\/ORM的实现方便我们进行数据库的开发;Web MVC和Spring Web提供了Java Web应用的框架或与其他流行的Web框架进行集成。就是说可将两者一起使用,达到将两者自身的特点进行互补。

spring面试题
Spring价值:Spring是属于非侵入式的框架,主要目标是将应用程序代码对框架依赖最小化;Spring提供了一个一致的编程模型,可以让应用直接使用POJO开发,与运行环境隔离开来;Spring推动应用设计风格逐渐向面向对象和面向接口开发转变,从而提高了代码的重用性和可测试性。3、使用Spring有什么方式?使用Spring的...

邙山区19223199836: spring有什么缺点吗 -
武毅唐瑞: Struts优点:对视图层进行封装 更好的分离视图层和控制层 对数据进行封装缺点:请看优点Spring优点: 用依赖注入模式大幅度的减少了程序之间的耦合性 并很好的实现了各种JAVA的设计模式 强制使用者养成用接口编程的习惯缺点:请看优点Hibernate: 用操作对象的方式操作数据库 将对数据库的操作面向对象化 并对一些数据库操作进行了封装缺点:请看优点三个框架和到一起的优点:非常明确的实现了MVC模式 三个框架和到一起的缺点:请看优点你最好是了解了MVC模式之后再使用框架 当你真正的使用了之后你就会发现他的缺点在什么地方 对你的忠告是:框架不是必须使用的 使用的话不一定是真正被框住的

邙山区19223199836: 使用spring框架的好处和不足? -
武毅唐瑞: 个人认为,Struts在Model层的东西太少了或是说几乎没有涉及.Spring的核心是Ioc模式(又称DI:Dependency Injection)实现的Bean工厂(BeanFactory)和AOP(Aspect Oriented Programming),我们可以用Struts+Spring,将两者结合可以将其自身的特点互补.完成我们要做的工作.

邙山区19223199836: spring hibernate 的优点和缺点 -
武毅唐瑞: 怎么都是说的优点啊 Spring 优点:减少了“new”,节省了内存资源 缺点:Spring我不熟,缺点不好说.感觉配置文件要写好多,很麻烦(可能是我水平问题) hibernate 优点:直接操作的是对象,对数据库的操作由hibernate完成 缺点:2个表必须关联的时候,必须要用到主键(至少一个表的主键).所以遇到老的项目,2表都是外键相关联的情况就……

邙山区19223199836: 为什么要使用spring -
武毅唐瑞: 因为Spring Boot解决的问题(1) Spring Boot使编码变简单(2) Spring Boot使配置变简单(3) Spring Boot使部署变简单(4) Spring Boot使监控变简单(5) Spring的不足

邙山区19223199836: Spring框架的优势和弊端 -
武毅唐瑞: spring简单、轻便 而且很多框架都能很好的和spring集成 spring也有很多其他的框架

邙山区19223199836: spring 是java编程中啊哪类软件 有什么优缺点 -
武毅唐瑞: 在SSH框假中spring充当了管理容器的角色,Spring 可以大大降低耦合. 首先耦合说白了就是类(也可以大到功能)与类之间的关联程度,关联越大,你的维护成本就越高,因为你改其中一个类,就很可能要去改和它关联的其他类,所以在设...

邙山区19223199836: java spring 注解的优势与劣势在哪?有知道的人说说么? -
武毅唐瑞: Spring 的依赖配置方式与 Spring 框架的内核自身是松耦合设计的.然而,直到 Spring 3.0 以前,使用 XML 进行依赖配置几乎是唯一的选择.Spring 3.0 的出现改变了这一状况,它提供了一系列的针对依赖注入的注解,这使得 Spring IoC 在 ...

邙山区19223199836: Struts + Hibernate+Spring的优缺点是什么? -
武毅唐瑞: 会的,有人说Spring会代替EJB,从这一点上讲,是不可能代替EJB的.

邙山区19223199836: Spring 的工作原理? -
武毅唐瑞: Spring的核心就在于他的IOC(控制反转)和AOP(面向切面编程),IOC就是用来管理所有的业务对象,AOP也就是可以在调用的方法前后可以附加另外的行为

邙山区19223199836: j2ee struts,spring,hebernate框架各自有什么优缺点. -
武毅唐瑞: struts是一个比较老的框架了,从出现到现在已经快7年了,它出现之前web开发规范还处于比较混乱的状态,正是它的出现把web开发带入了一个新的时代,在当时说struts应该受到顶礼膜拜一点也不为过.struts主要的优势在于表现层,它能够良...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网