struts2教程视频(Guice整合Struts2简易教程)

2026-04-13 19:00:01 0

struts2教程视频(Guice整合Struts2简易教程)

大家好,如果您还对struts2教程视频不太了解,没有关系,今天就由本站为大家分享struts2教程视频的知识,包括Guice整合Struts2简易教程的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

本文目录

Guice整合Struts2简易教程

   Guice简介

   Helloworld

  简介 本文为如何用Guice进行DI和如何整合Struts

   简介

  Guice是Google推出的一款DI框架 因其优秀荣获了Jolt大奖 和Spring相比 要轻量很多 运行时只要指定一个配置类 实现其 google inject Module接口 指定接口和实现类即可

  需要的基础jar包有

  Guice需要的jar包 如果是web应用 需要guice servlet jar 整合Struts 则需要guice struts plugin jar

  aopalliance jar

  guice jar

  guice servlet jar

  guice struts plugin jar

  Struts 需要的jar包

  mons fileupload jar

  mons io jar

  mons logging jar

  freemarker jar

  ognl jar

  struts core jar

  xwork jar

  Guice与Spring的对比(此表格转自网络)

  Spring

  Guice

  使用XML

  使用将类与类之间的关系隔离到xml中 由容器负责注入被调用的对象 因此叫做依赖注入

  不使用xml 将类与类之间的关系隔离到Module中 声名何处需要注入 由容器根据Module里的描述 注入被调用的对象

  使用Annotation

  使用支持自定义Annotation标注 对于相同的接口定义的对象引用 为它们标注上不同的自定义Annotation注释 就可以达到同一个类里边的同一个接口的引用 注射给不同的实现 在Module里用标注做区分 灵活性大大增加 使用Annotation也未必是好事 范型等新特性也未必是好事 目前大多的服务器均不支持jdk wls要 以前才支持 而目前的客户由于价格原因也很少选用wls 的 至少我们做过的项目中都没有 功能再强 客户不需要 何用?

  运行效率

  装载spring配置文件时 需解析xml 效率低 getBean效率也不高 不过使用环境不会涉及到getBean 只有生产环境的时候会用到getBean 在装载spring应用程序的时候 已经完成全部的注射 所以这个低效率的问题不是问题

  使用Annotation cglib 效率高与spring最明显的一个区别 spring是在装载spring配置文件的时候把该注入的地方都注入完 而Guice呢 则是在使用的时候去注射 运行效率和灵活性高

  类耦合度

  耦合度低 强调类非侵入 以外部化的方式处理依赖关系 类里边是很干净的 在配置文件里做文章 对类的依赖性极低

  高 代码级的标注 DI标记@inject侵入代码中 耦合到了类层面上来 何止侵入 简直侵略 代码耦合了过多guice的东西 大大背离了依赖注入的初衷 对于代码的可维护性 可读性均不利

  类编写时

  需要编写xml 配置Bean 配置注入

  只需声明为@inject 等著被注入 最后在统一的Module里声明注入方式

  仅支持IOC

  否 spring目前已经涉猎很多部分

  是 目前仅仅是个DI容器

  是否易于代码重构

  统一的xml配置入口 更改容易

  配置工作是在Module里进行 和spring异曲同功

  支持多种注入方式

  构造器 setter方法

  Field 构造器 setter方法

  灵活性

   如果同一个接口定义的引用需要注入不同的实现 就要编写不同的Module 烦琐

   动态注入

  如果你想注射的一个实现 你还未知呢 怎么办呢 spring是没办法 事先在配置文件里写死的 而Guice就可以做到 就是说我想注射的这个对象我还不知道注射给谁呢 是在运行时才能得到的的这个接口的实现 所以这就大大提高了依赖注射的灵活性 动态注射

  与现有框架集成度

    高 众多现有优秀的框架(如struts x等)均提供了spring的集成入口 而且spring已经不仅仅是依赖注入 包括众多方面  Spring也提供了对Hibernate等的集成 可大大简化开发难度  提供对于orm rmi webservice等等接口众多 体系庞大

   可以与现有框架集成 不过仅仅依靠一个效率稍高的DI 就想取代spring的地位 有点难度

  配置复杂度

  在xml中定位类与类之间的关系 难度低

  代码级定位类与类之间的关系 难度稍高

  关于Annotation的简介 可以查看笔者另一篇教程

  %E %AE% %E %BB% B

   Helloworld

  笔者写了一个demo 对于简单的应用Guice还是比Spring方便很多

  └─

  └─greysh

  └─guice

  ├─action

  │ UserAction java

  │

  ├─config

  │ ModuleConfig java

  │

  ├─model

  │ User java

  │

  └─service

  │ UserService java

  │

  └─impl

  UserServiceImpl java

  代码见附件

  Guie加载的原理是

  先去调用自己实现Module接口的类 这个类类似Spring的applicationcontext 然后调用configure函数的binder进行绑定 相当于spring里面的ref绑定 然后绑定完后就在需要注入的放指定 @Inject 进行注入 主要有构造函数注入 方法注入 字段注入 一般而言用方法注入

  本教程的User为实体类 仅仅有一个字段userName;  

《!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
--》 public interface UserService {  void invoke(User user);  }

  对于接口实现  

《!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
--》 public void invoke(User user) {  user setUserName( Name : + user getUserName());

  当然最重要的是action  

《!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
--》 @Injectprivate UserService userService;@Injectprivate User user;

  本教程采用字段注入

《!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
--》 《constant name= struts objectFactory value= guice /》《constant name= struts i n encoding value= utf /》《constant name= guice module value= nfig ModuleConfig /》 lishixinzhi/Article/program/Java/ky/201311/28927

如何用struts2+hibernate+spring实现网页视频转换

后台调用mencoder。一般转换的时间比较长,cpu占用率比较高,所以一般要单独做一台视频转换服务器。参数
%1 %2 -o %3 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=412:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=4:vb_strategy=1 -vf scale=512:-3 -ofps 12 -srate 22050
1是 mencoder路径 2是 原文件炉具 3是生成文件路径

struts2.0怎样用

csdn和javaeye上有很多struts2入门教程,你也可以去电驴下载stust2的教程,我以前看的是张冰的视频,很不错。
struts2相对struts1的优点:
1.后台Action不用传request、response、formbean等乱七八糟的参数,struts2通过拦截器能够捕获访问请求,同时通过xml配置文件配置跳转路径,利于维护。
2.不用针对一个action专门定制formbean,你只需要在Action里封装属性并且加上getset方法即可实现与jsp页面数据的交互
3.xml配置文件中的命名更清晰、准备,玩过struts1的都知道xml配置文件那些属性名词不达意
4.更强大的自定义标签和OGNL表达式,以前用struts1的时候要加5个标签库才能完全替换jsp标签,而使用sturts2只需要用它自带的标签即可,而且ONGL表达式的功能相当强大,这个等你入门以后再研究吧
5.struts2是支持多线程的,struts1属于单例,存在线程安全问题,当然你用spring整合的话就不存在这方面的问题了。
这个是根据我目前在项目中的亲身体验总结的结果,纯属个人想法

关于本次struts2教程视频和Guice整合Struts2简易教程的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

struts2教程视频(Guice整合Struts2简易教程)

本文编辑:admin

更多文章:


分页符包括什么(WORD2010中分页符和分节符各有什么作用)

分页符包括什么(WORD2010中分页符和分节符各有什么作用)

大家好,今天小编来为大家解答以下的问题,关于分页符包括什么,WORD2010中分页符和分节符各有什么作用这个很多人还不知道,现在让我们一起来看看吧!本文目录WORD2010中分页符和分节符各有什么作用word分页符.分栏符.换行符.分节符有

2025年11月17日 00:00

linux培训班有前途吗(学习Linux,我是自学好还是参加培训好呢前景怎么样呢)

linux培训班有前途吗(学习Linux,我是自学好还是参加培训好呢前景怎么样呢)

今天给各位分享学习Linux,我是自学好还是参加培训好呢前景怎么样呢的知识,其中也会对学习Linux,我是自学好还是参加培训好呢前景怎么样呢进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录学习Linux,我是自

2025年8月13日 07:30

php网站怎么设置环境(PHP网站怎么搭配环境)

php网站怎么设置环境(PHP网站怎么搭配环境)

各位老铁们好,相信很多人对php网站怎么设置环境都不是特别的了解,因此呢,今天就来为大家分享下关于php网站怎么设置环境以及PHP网站怎么搭配环境的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录PHP网站怎么搭配

2025年6月23日 01:15

appear on(happen与appear的用法区别)

appear on(happen与appear的用法区别)

本篇文章给大家谈谈appear on,以及happen与appear的用法区别对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录happen与

2025年12月4日 13:15

源代码2021(我的世界2021指令汇总最新指令代码大全)

源代码2021(我的世界2021指令汇总最新指令代码大全)

各位老铁们好,相信很多人对源代码2021都不是特别的了解,因此呢,今天就来为大家分享下关于源代码2021以及我的世界2021指令汇总最新指令代码大全的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录我的世界2021

2025年7月25日 17:00

rsvp怎么读?rsvp是什么意思

rsvp怎么读?rsvp是什么意思

“rsvp”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看rsvp怎么读?rsvp是什么意思!本文目录rsvp怎么读rsvp是什么意思rsvp详细资料大全rsvp是什么意思 rsvp英语解释rsvp是什么英文的缩写rsvp指

2026年3月21日 18:00

查看网页的整个css(怎么显示网页中的CSS样式)

查看网页的整个css(怎么显示网页中的CSS样式)

今天给各位分享怎么显示网页中的CSS样式的知识,其中也会对怎么显示网页中的CSS样式进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录怎么显示网页中的CSS样式一个网页怎么查出他的CSS样式呢如何获取浏览博客网页

2025年12月27日 16:45

json手册(json格式的数据的定义是什么)

json手册(json格式的数据的定义是什么)

各位老铁们,大家好,今天由我来为大家分享json手册,以及json格式的数据的定义是什么的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录json格式

2025年12月5日 22:00

苹果手机做app的软件(湖南软件制作在长沙有多少家公司可以做)

苹果手机做app的软件(湖南软件制作在长沙有多少家公司可以做)

大家好,关于苹果手机做app的软件很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于湖南软件制作在长沙有多少家公司可以做的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所

2025年9月28日 22:15

utime手机(请问UTime FX手机采用什么操作系统)

utime手机(请问UTime FX手机采用什么操作系统)

大家好,utime手机相信很多的网友都不是很明白,包括请问UTime FX手机采用什么操作系统也是一样,不过没有关系,接下来就来为大家分享关于utime手机和请问UTime FX手机采用什么操作系统的一些知识点,大家可以关注收藏,免得下次来

2025年6月8日 21:15

php返回json(thinkphp中怎么返回json数据)

php返回json(thinkphp中怎么返回json数据)

其实php返回json的问题并不复杂,但是又很多的朋友都不太了解thinkphp中怎么返回json数据,因此呢,今天小编就来为大家分享php返回json的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录thinkp

2026年4月10日 17:30

麦语言编程入门书籍(易盛程序化交易软件用麦语言编程吗)

麦语言编程入门书籍(易盛程序化交易软件用麦语言编程吗)

“麦语言编程入门书籍”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看麦语言编程入门书籍(易盛程序化交易软件用麦语言编程吗)!本文目录易盛程序化交易软件用麦语言编程吗文华财经的指标和程序化交易编写都是用的“麦语言”吗期货程序化

2025年7月10日 01:45

shell脚本写计时脚本(一个关于生日倒计时的shell,编译的时候显示unexpected EOF while looking for matching ’“’)

shell脚本写计时脚本(一个关于生日倒计时的shell,编译的时候显示unexpected EOF while looking for matching ’“’)

“shell脚本写计时脚本”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看shell脚本写计时脚本(一个关于生日倒计时的shell,编译的时候显示unexpected EOF while looking for matchi

2025年6月9日 23:30

pythonunicode转换(Python怎么把ansi编码的文本转换为 unicode的文字)

pythonunicode转换(Python怎么把ansi编码的文本转换为 unicode的文字)

本篇文章给大家谈谈pythonunicode转换,以及Python怎么把ansi编码的文本转换为 unicode的文字对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录Python怎么把ansi编码的文本转换为 unicode的

2026年4月18日 07:45

solidworks飞机建模教程(怎么运用solidworks画飞机最方便呢)

solidworks飞机建模教程(怎么运用solidworks画飞机最方便呢)

本篇文章给大家谈谈solidworks飞机建模教程,以及怎么运用solidworks画飞机最方便呢对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本

2026年8月5日 12:30

电脑编程是学什么的?自学电脑编程要多长时间

电脑编程是学什么的?自学电脑编程要多长时间

大家好,关于电脑编程很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于电脑编程是学什么的的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录电脑编程是学什么的

2025年9月4日 03:15

uniapp js教程(uni-app 封装接口以及使用)

uniapp js教程(uni-app 封装接口以及使用)

本篇文章给大家谈谈uniapp js教程,以及uni-app 封装接口以及使用对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录uni-app

2026年8月31日 00:15

从北大青鸟源码时代培训出来的IT程序员能赚多少一个月薪,15000元一个月赚得到吗?作为程序员,是否需要去阅读源代码原因是什么

从北大青鸟源码时代培训出来的IT程序员能赚多少一个月薪,15000元一个月赚得到吗?作为程序员,是否需要去阅读源代码原因是什么

其实源码程序员的问题并不复杂,但是又很多的朋友都不太了解从北大青鸟源码时代培训出来的IT程序员能赚多少一个月薪,15000元一个月赚得到吗,因此呢,今天小编就来为大家分享源码程序员的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的

2025年9月22日 12:15

eclipse创建窗口程序(如何用eclipse编写java窗口程序)

eclipse创建窗口程序(如何用eclipse编写java窗口程序)

各位老铁们好,相信很多人对eclipse创建窗口程序都不是特别的了解,因此呢,今天就来为大家分享下关于eclipse创建窗口程序以及如何用eclipse编写java窗口程序的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年5月13日 07:00

oracle下载官网是多少(oracle 8i在哪能下载啊)

oracle下载官网是多少(oracle 8i在哪能下载啊)

各位老铁们好,相信很多人对oracle下载官网是多少都不是特别的了解,因此呢,今天就来为大家分享下关于oracle下载官网是多少以及oracle 8i在哪能下载啊的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录o

2026年2月18日 05:45

近期文章

本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索