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

下厨房网站学做蒸包视频怎么自己搭建小程序

下厨房网站学做蒸包视频,怎么自己搭建小程序,介绍自己做的网站的论文,做php门户网站那个系统好java ee cdi在本教程中#xff0c;我们将向您展示如何避免CDI bean中的依赖关系消除歧义。 在CDI中#xff0c;我们可以为应用程序中不同客户端的接口的多个实现实现依赖项注入。 依赖性消除歧义的问题是客户端如何在不同的实现中调用特定的实现#xff0c;而不会发生任何错… java ee cdi 在本教程中我们将向您展示如何避免CDI bean中的依赖关系消除歧义。 在CDI中我们可以为应用程序中不同客户端的接口的多个实现实现依赖项注入。 依赖性消除歧义的问题是客户端如何在不同的实现中调用特定的实现而不会发生任何错误。 为了了解在将bean注入应用程序时如何避免依赖消除歧义我们将创建一个简单的服务。 我们将创建服务的两个实现然后将这两个实现注入到应用程序的servlet中。 我们将使用Qualifiers 如下所述。 我们首选的开发环境是Eclipse 。 我们正在使用Eclipse Juno4.2版本以及Maven Integration插件版本3.1.0。 您可以从Eclipse的这里从和Maven Eclipse插件这里 。 用于Eclipse的Maven插件的安装不在本教程的讨论范围之内因此不再讨论。 Tomcat 7是使用的应用程序服务器。 让我们开始 1.创建一个新的Maven项目 转到文件-项目- Maven- Maven项目。 在向导的“选择项目名称和位置”页面中确保未选中 “创建简单项目跳过原型选择”选项单击“下一步”以继续使用默认值。 在这里必须添加用于创建Web应用程序的Maven原型。 单击“添加原型”并添加原型。 将“ Archetype组ID”变量设置为org.apache.maven.archetypes 将“ Archetype构件ID”变量设置为maven-archetype-webapp 将“ Archetype版本”设置为1.0 。 点击“确定”继续。 在向导的“输入工件ID”页面中您可以定义项目的名称和主程序包。 将“组ID”变量设置为com.javacodegeeks.snippets.enterprise 将“工件ID”变量设置为cdibeans 。 上述选择组成主体工程包作为com.javacodegeeks.snippets.enterprise.cdibeans和项目名称为cdibeans 。 将“ Package”变量设置为war 以便创建一个war文件以部署到tomcat服务器。 点击“完成”退出向导并创建您的项目。 Maven项目结构如下所示 它由以下文件夹组成 / src / main / java文件夹其中包含应用程序动态内容的源文件 / src / test / java文件夹包含用于单元测试的所有源文件 / src / main / resources文件夹包含配置文件 / target文件夹包含已编译和打包的可交付成果 / src / main / resources / webapp / WEB-INF文件夹包含Web应用程序的部署描述符 pom.xml是项目对象模型POM文件。 包含所有项目相关配置的单个文件。 2.添加所有必要的依赖项 通过在POM编辑器的“ Pom.xml”页面上对其进行编辑可以在Maven的pom.xml文件中添加依赖项如下所示 pom.xml project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.javacodegeeks.snippets.enterprise.cdi/groupIdartifactIdcdibeans/artifactIdpackagingwar/packagingversion0.0.1-SNAPSHOT/versionnamecdibeans Maven Webapp/nameurlhttp://maven.apache.org/urldependenciesdependencygroupIdorg.jboss.weld.servlet/groupIdartifactIdweld-servlet/artifactIdversion1.1.10.Final/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdjstl/artifactIdversion1.2/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.0.1/versionscopeprovided/scope/dependencydependencygroupIdorg.glassfish/groupIdartifactIdjavax.faces/artifactIdversion2.1.7/version/dependency/dependenciesbuildfinalNamecdibeans/finalName/build /project 如您所见Maven以声明方式管理库依赖关系。 创建本地存储库默认情况下位于{user_home} /。m2文件夹下所有必需的库都从公共存储库下载并放置在该库中。 此外库内的依赖关系会自动解决和处理。 3.创建一个简单的服务 我们利用一个简单的服务为使用它的应用程序创建问候消息。 GreetingCard.java类是带有产生问候消息的方法的接口。 GreetingCard.java package com.javacodegeeks.snippets.enterprise.cdibeans;public interface GreetingCard {void sayHello(); } 我们创建服务的两个实现。 每个实现都会产生不同的消息如下所示 GreetingCardImpl.java package com.javacodegeeks.snippets.enterprise.cdibeans.impl;import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingCard;public class GreetingCardImpl implements GreetingCard {public void sayHello() {System.out.println(Hello!!!);}} AnotherGreetingCardImpl.java package com.javacodegeeks.snippets.enterprise.cdibeans.impl;import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingCard;public class AnotherGreetingCardImpl implements GreetingCard {public void sayHello() {System.out.println(Have a nice day!!!);}}4.服务的使用 为了将服务注入另一个bean我们可以使用Qualifier 。 CDI允许我们创建自己的Java批注然后在应用程序的注入点中使用它以根据Bean的GreetingType获得正确的GreetingCard实现。 Greetings.java package com.javacodegeeks.snippets.enterprise.cdibeans;import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.ElementType.TYPE; import static java.lang.annotation.ElementType.METHOD; import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.Retention; import java.lang.annotation.Target;import javax.inject.Qualifier;Qualifier Retention(RUNTIME) Target({ FIELD, TYPE, METHOD }) public interface Greetings {GreetingType value();} GreetingType.java是一个枚举如下所示 GreetingType.java package com.javacodegeeks.snippets.enterprise.cdibeans;public enum GreetingType {HELLO, HI; } 现在服务实现使用注释如下所示 GreetingCardImpl.java package com.javacodegeeks.snippets.enterprise.cdibeans.impl;import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingCard;Greetings(GreetingType.HELLO) public class GreetingCardImpl implements GreetingCard {public void sayHello() {System.out.println(Hello!!!);}} AnotherGreetingCardImpl.java package com.javacodegeeks.snippets.enterprise.cdibeans.impl;import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingCard;Greetings(GreetingType.HI) public class AnotherGreetingCardImpl implements GreetingCard {public void sayHello() {System.out.println(Have a nice day!!!);}}5.将服务注入到servlet中 我们创建一个简单的servlet并使用CDI提供的Inject注释注入服务的两种实现如下所示 GreetingServlet.java package com.javacodegeeks.snippets.enterprise.cdibeans.servlet;import java.io.IOException; import java.io.PrintWriter;import javax.inject.Inject; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingCard; import com.javacodegeeks.snippets.enterprise.cdibeans.GreetingType; import com.javacodegeeks.snippets.enterprise.cdibeans.Greetings;WebServlet(name greetingServlet, urlPatterns {/sayHello}) public class GreetingServlet extends HttpServlet {private static final long serialVersionUID 2280890757609124481L;InjectGreetings(GreetingType.HELLO)private GreetingCard greetingCard;InjectGreetings(GreetingType.HI)private GreetingCard anotherGreetingCard;public void init() throws ServletException {}public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType(text/html);PrintWriter out response.getWriter();out.println(h1 greetingCard.sayHello() /h1);out.println(h1 anotherGreetingCard.sayHello() /h1);}public void destroy(){}} 要运行该示例我们必须使用Maven构建项目然后将产生的war文件放置在tomcat的webbaps文件夹中。 然后我们可以继续 http://localhost/8080/cdibeans/sayHello 结果是如下所示 请注意当使用Producer方法注入CDI bean时依赖关系也可能会消除歧义如Java EE CDI Producer方法教程中所示 。 这是Java EE CDI依赖关系消除歧义的教程。 下载本教程的源代码 CDIDependencyDisambiguationExample.zip 翻译自: https://www.javacodegeeks.com/2013/06/java-ee-cdi-dependency-disambiguation-example.htmljava ee cdi
http://www.pierceye.com/news/986714/

相关文章:

  • 本地网站开发宁夏建设工程招标投标信息网站
  • 网站建设服务费怎么记账维护一个网站一年多少钱
  • 电子商务网站建设定位设想我的网站为什么打不开
  • 旅游网站开发方案ppt移动商城积分和积分区别
  • 如何做网站推广自己的产品WordPress+百度+主动
  • 商丘网站建设推广公司赣州seo唐三
  • 产品网站设计计算机专业做网站运营
  • 做平台网站怎么做的wordpress获取当前分类下的子分类
  • 广州网站建设性价比长安高端装备网站设计公司
  • 电子商务网站推广计划沈阳建设工程造价
  • 网站备案接入商是什么网站语言版本
  • 个人做网站做什么样的话网站站点连接不安全
  • 响应式网站 外贸平顶山 网站设计
  • 手袋 东莞网站建设成都哪里好玩适合情侣
  • 苏州哪个公司做门户网站给学校建网站那个系统好
  • 现在网站都是拿什么软件做的wordpress 自动alt
  • 山东省住房和城乡建设部网站首页网站中的自助报价系统
  • 如何 网站收录软件开发大概需要多少钱
  • 网站建设微信端简洁型网页
  • 一般的网站开发语言用什么《网站开发实践》 实训报告
  • php企业网站开发实验总结服务器
  • 织梦网站文章内容模板荣耀商城
  • seo 网站太小平面设计师招聘广告文案
  • 凡科网站建设桂林网站开发m0773
  • 做跨境都有哪些网站做电影类网站
  • 琼海商城网站建设东莞网站建设价位
  • 装饰网站建设重要性云服务器 多个网站
  • 邯郸市城乡建设管理局网站小米商城wordpress
  • 河北中石化建设网站html用户登录注册页面代码
  • 如何在网站后台备份数据库表设计本家装