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

商城网站带宽控制dm网站制作软件

商城网站带宽控制,dm网站制作软件,律师如何做网络推广,移动应用开发就业方向和前景Java SE还可以。 Java EE是邪恶的。 这就是我一直想的。 好吧#xff0c;现在不再了。 让我分享我的经验。 几周前#xff0c;我开始考虑将旧版spring hibernate tomcat应用程序移植到新平台上#xff1a; SAP NetWeaver云 。 我知道您在极客那里的想法#xff1a;… Java SE还可以。 Java EE是邪恶的。 这就是我一直想的。 好吧现在不再了。 让我分享我的经验。 几周前我开始考虑将旧版spring hibernate tomcat应用程序移植到新平台上 SAP NetWeaver云 。 我知道您在极客那里的想法这篇文章越来越糟。 它从Java EE开始不完全是一个怪胎而现在进入SAP 不完全是一个怪胎公司……请再给我十分钟 我的遗留应用程序的spring层的配置是基于xml的它是在注释进入游戏之前编写的。 我对再次陷入我自己的xml恐怖的前景感到恐惧。 然后出现此推文 欢迎 sap参加JavaEE6聚会NetWeaver Cloud现在已通过Java EE 6 Web Profile认证 bit.ly/Wf8VNS — GlassFishglassfish 2012年11月16日 几天后还有本文档 。 我尝试了。 而且有效。 我改变了对Java EE的想法。 “水管工比尔”Bill the Plumber有一篇博客文章 准确地描述了我在经历之后的想法 。 bla bla bla太多了。 让我们开始编码 如果您赶时间请从https://github.com/cthiebaud/adventscloud克隆完整的应用程序 在疯狂剪切和粘贴之前让我们简要描述一下下面的代码。 我们将免费构建一个小型Web应用程序并将其部署到云中 1.登录用户对不起您需要一个SAP Community Network帐户不用担心它是免费的 2.登录后代表用户向世界其他地方问好 3.连续登录后不必一遍又一遍地说“你好”而只是在数据库中存储说了多少个“ hellos”并且 4.就是这样。 为此我们需要一个Java接口三个Java类一个Java服务器页面以及persistence.xml用于数据库配置和web.xml用于安全性约束向导的最终版本。 为了简洁起见以下代码中省略了包导入getter和setter。 但是正如刚刚所说的 完整的源代码可以在github上找到。 编写一个Hello.java POJO 此处是完整的类 public class Hello {private Long id;private String username;private Integer counter;private Timestamp when;// ... getters and setters ... } 显而易见对于每个username 此POJO都会在counter存储用户点击我们应用程序的index.jsp的次数以及上次是when 。 使用JPA批注对此Hello.java POJO批注 在此处完成类 Entity Table(nameT_HELLO) NamedQueries( {NamedQuery(name allHellos, query select h from Hello h),NamedQuery(name helloFromUsername, query select h from Hello h where h.username :username) }) public class Hello {IdGeneratedValueprivate Long id;Column(nameA_USER, uniquetrue, nullablefalse)private String username;Column(nameA_COUNTER, nullablefalse)private Integer counter;VersionColumn(nameA_TIMESTAMP, nullablefalse)private Timestamp when;public Hello() {this.counter 1;}// ... getters and setters ... } 编写一个访问POJO的HelloDao.java接口 此处为完整接口 Local public interface HelloDao {Listhello getAll();Hello fromUsername(String username);Hello save(Hello hello); } 编写一个用EJB注释注释的HelloBean.java它实现了HelloDao接口 此处是完整的类 Stateless public class HelloBean implements HelloDao {PersistenceContextprivate EntityManager em;Overridepublic Listhello getAll() {SuppressWarnings(unchecked)Listhello hellos (Listhello)em.createNamedQuery(allHellos).getResultList();Collections.sort(hellos, new Comparatorhello() {Overridepublic int compare(Hello o1, Hello o2) {return o2.getWhen().compareTo(o1.getWhen()); // latest first}});return hellos;}Overridepublic Hello fromUsername(String username) {Query query em.createNamedQuery(helloFromUsername);query.setParameter(username, username);Hello hello null;try {hello (Hello)query.getSingleResult();} catch (NoResultException ignored) {}return hello;}TransactionAttributeOverridepublic Hello save(Hello hello) {hello em.merge(hello);return hello;} } 编写一个HelloFilter.java Java Servlet 3过滤器该过滤器是1.登录时更改计数器并且2.在即将推出的Java Server页面 此处是完整类中公开HelloBean实例 WebFilter(/index.jsp) public final class HelloFilter implements Filter {EJBHelloDao helloDao;Overridepublic void init(FilterConfig fConfig) throws ServletException {}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {try {request.setAttribute(helloDao, helloDao);String username ((HttpServletRequest)request).getRemoteUser();Hello hello helloDao.fromUsername(username);if (hello null) {hello new Hello();hello.setUsername(username);} else {hello.setCounter(hello.getCounter()1);}hello helloDao.save(hello);chain.doFilter(request, response);} finally {request.removeAttribute(helloDao);}}Overridepublic void destroy() {} } 注意 上面的粗体字是我们的Java EE 6 Web Profile容器在所有这些类之间完成的神奇工作 PersistenceContext EntityManager em; EJB HelloDao helloDao; WebFilter(/index.jsp) 编写一个persistence.xml JPA配置 在此处完成xml ?xml version1.0 encodingUTF-8? persistence version2.0 xmlnshttp://java.sun.com/xml/ns/persistence xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsdpersistence-unit nameadventscloud-persist transaction-typeJTAproviderorg.eclipse.persistence.jpa.PersistenceProvider/providerjta-data-sourcejdbc/DefaultDB/jta-data-sourceclassnet.aequologica.adventscloud.Hello/classpropertiesproperty nameeclipselink.ddl-generation valuecreate-or-extend-tables //properties/persistence-unit /persistence 编写一个web.xml以在用户访问index.jsp时触发登录并通知Web应用程序容器管理数据库的存在 在此处完整xml ?xml version1.0 encodingUTF-8? web-appxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlnshttp://java.sun.com/xml/ns/javaeexsi:schemaLocationhttp://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsdversion3.0login-configauth-methodFORM/auth-method/login-configsecurity-constraintweb-resource-collectionweb-resource-nameProtected Area/web-resource-nameurl-pattern/index.jsp/url-pattern/web-resource-collectionauth-constraintrole-nameEveryone/role-name/auth-constraint/security-constraintsecurity-roledescriptionAll SAP NetWeaver Cloud users/descriptionrole-nameEveryone/role-name/security-roleresource-refres-ref-namejdbc/DefaultDB/res-ref-nameres-typejavax.sql.DataSource/res-type/resource-ref/web-app 再次NB。 以上以粗体显示的进一步魔术效果 jta-data-sourcejdbc/DefaultDB/jta-data-source classnet.aequologica.adventscloud.Hello/class res-ref-namejdbc/DefaultDB/res-ref-name 最后编写一个index.jsp Java服务器页面其中显示所有“ hellos” 此处完整页面 % taglib prefixc urihttp://java.sun.com/jstl/core_rt % % taglib prefixfmt urihttp://java.sun.com/jstl/fmt_rt % !DOCTYPE html htmlheadtitleadventscloud/title/headbodytabletbodyc:forEach varhello items${requestScope.helloDao.all} varStatusstatustrtdfmt:formatDate typeboth value${hello.when} //tdtd${hello.counter}/tdtdhelloc:if test ${hello.counter 1}(s)/c:if from/tdtd${hello.username}/td/tr/c:forEach/tbody/table /body/html 我们几乎完成了……最后两件事1.类路径地狱以及2.使用javac -processor生成JPA 2.0元模型。 1.类路径地狱。 为了编译所有这些东西您需要某种方式在类路径上具有以下jar group | artifact | version javax.persistence : persistence-api : 1.0 javax.ejb : ejb-api : 3.0 javax.servlet : javax.servlet-api : 3.0 javax.servlet : jstl : 1.2 当然最简单的方法是在像我的maven项目中声明这些依赖关系但是如果您是厌恶Maven的人我会花一些时间超链接到上面的jars以便在maven Central中节省一些时间来追逐jars。 2.使用javac -processor生成JPA 2.0元模型。 最后该构建必须能够生成JPA 2.0元模型类 。 在这里我选择eclipselink生成器因为eclipselink最终是SAP NetWeaver Cloud使用的JPA实现。 我相信任何符合JPA 2.0的生成器也应完成此工作。 同样maven在pom.xml的build plugins部分中提供了以下xml片段可以为您提供帮助 plugingroupIdorg.bsc.maven/groupIdartifactIdmaven-processor-plugin/artifactIdversion2.1.0/versionexecutionsexecutionidprocess/idgoalsgoalprocess/goal/goalsphasegenerate-sources/phaseconfigurationprocessorsprocessororg.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor/processor/processors/configuration/execution/executions /plugin Maven-averse可以参考有关JPA 2.0 matamodel生成的eclipselink文档以获取生成JPA 2.0元模型类的替代方法。 至此我们有了一个adventscloud.war文件该文件应在所有符合Java EE 6 Web Profile的容器上逐字运行。 其中包括SAP NetWeaver Cloud。 您可以在我的SAP NetWeaver Cloud终生免费试用版实例上运行该应用程序。 它比本博客文章中显示的代码更丰富并带有Twitter引导程序的响声。 如果您对火花感兴趣请遵循应用程序中的github功能区。 如果你想获得的SAP NetWeaver云的免费的终身试用实例请描述的初始步骤在这里 。 参考 Java EE 6 Web配置文件。 在云上。 简单。 在Java Advent Calendar博客上可以从我们的JCG合作伙伴 Christophe Thiebaud获得。 翻译自: https://www.javacodegeeks.com/2012/12/java-ee-6-web-profile-on-the-cloud-easy.html
http://www.yutouwan.com/news/22240/

相关文章:

  • 四川省城乡建设厅官方网站重庆企业网络推广价格
  • 域名可以绑定几个网站做游戏网站在哪里找
  • 设计师如何注册个人网站网站开发必须要搭建环境吗
  • 服装公司网站网页设计网站做302重定向
  • asp企业网站cmswordpress 新闻发布
  • 大良营销网站建设平台甘肃网络公司网站建设
  • 建网站怎样往网站传视频宁波咨询网站设计
  • 网站背景图片代码上海市建筑业官网
  • 网站开发案例教程做网站的学校有哪些
  • 网站管理建设网店怎么经营才能好啊
  • 百度网站建设目标女孩学建筑学好找工作吗
  • 做网站的计划概要网站维护运行建设报告
  • 孝感住房和城乡建设部网站网站开发公司上海
  • 建设一个网站的过程html个人网页制作模板
  • 网站403错误泉州网站建设选择讯呢
  • 公司网站模板设计网站建设投资资金
  • 茂名公司网站开发公司东莞做网站建设公司
  • 游戏介绍网站模板上海网站设计公司推荐亿企邦
  • 男女做暧暧试看网站怎么创建收费网站
  • 江门网站推广优化广告设计专业学校有哪些
  • 无锡网站建设和申请域名之后如何做网站
  • 请简述网站开发的流程图cms系统免费
  • 如何建设景区旅游网站营销运营管理
  • wordpress前台多语言版苏州优化价位
  • 做网站本溪dede网站建设流程
  • frp做网站毕业设计都是做网站吗
  • 做暧暧暖网站欧美网站哪里买外链
  • 传奇服务器如何做网站深圳市市场监督管理局官网
  • 哪有做网站学做网站看那个网
  • 行业门户网站建设wordpress 文字颜色