Tag: 架构

将大型XML文档从一种格式转换为另一种格式的最快速最佳方法

我有一堆大型XML文件(所有文件的总大小超过1 GB),我需要将它们从供应商模式转换为我们的模式。 供应商在其服务器上的某个FTP位置有一个ZIP文件(它包含大型XML文件)。 我必须选择该ZIP文件,然后转换所有可用的XML文件。 转换为我们的架构格式后,我需要将数据保存在数据库中。 实现这个的好设计是什么? 什么是支持Java的相关工具和实用程序?

如何在Java中实现复合模式?

我想在Java中实现一个复合模式,以映射软件开发组织。 所以,我们假设有多个项目经理和多个开发人员。 每个开发人员只分配给一个项目经理,每个开发人员都能够使用各种编程语言进行编码。 项目经理带领开发人员并确切地知道他们的工作量。 我不是百分百肯定这个设计模式,但我认为这是这个场景的完美用例,不是吗? 结果应如下: 我想查询项目经理,检查所有能够使用特定编程语言编写代码的开发人员的工作量,例如Java 。 这是我到目前为止: Employee.java: public class Employee { private String name = null; public Employee() { name = “Noob”; } public String getName() { return name; } public void setName(String name) { this.name = name; } } ProgrammingLanguages.java: public enum ProgrammingLanguages { JAVA, JAVASCRIPT, C, PHP, SWIFT, PYTHON } […]

创建一个简单的事件驱动架构

目前在项目上遇到一些麻烦。 我正在实施一个游戏,我想让它以事件为导向。 到目前为止,我有一个EventHandler类,它具有重载方法,具体取决于生成的事件类型(PlayerMove,Contact,Attack等) 我将有游戏驱动程序或类生成事件。 我的问题是如何在不将事件生成类紧密耦合到事件处理程序并使EDA冗余使用的情况下如何有效地处理事件? 我想设计自己的简单处理程序,而不是使用内置的Java处理程序

将现有凌乱的webapp迁移到优雅的MVC的最佳方法是什么?

我大约一个月前加入了一家新公司。 该公司规模相当小,并且具有非常强大的“初创”感觉。 我是一个由另外3人组成的团队的Java开发人员。 该公司主要为企业/商业类型的人销售服务,以便彼此进行通信。 我一直在努力的主要事情之一就是公司的主要网站 – 从中​​出售服务,现有用户登录查看服务并支付账单,新用户可以报名参加试用目前,这是一个部署在Tomcat上的JSP应用程序,可以通过公司自己编写的持久层访问数据库。 我在这里反复且越来越沮丧(我对整体工作非常满意,所以这不是“哦,不,我不喜欢我的工作” – 类型的post)是缺少任何更大的设计或此Web应用程序的体系结构。 该应用程序由几十个JSP页面组成,Servlet或Bean中几乎没有逻辑或任何其他类型的框架。 许多JSP页面都是数千行代码,它们jsp:include其他JSP页面,业务逻辑与HTML混合,经常使用的代码片段(如获取Web服务连接)被剪切和粘贴而不是重用换句话说,应用程序是一团糟。 公司内部有一些声音,试图重新设计这个网站,以便更好地适应MVC; 我认为开发人员和高层人员开始意识到,目前的意大利面条代码模式不可持续或非常容易扩展,无法为用户添加更多function。 高层和开发人员对完全重写事物持谨慎态度(有充分理由,因为这意味着需要几周或几个月的时间重写现有function),但我们已经讨论过(慢慢地)将网站的某些区域写入新框架。 有哪些最佳策略可以将应用程序和代码库转移到这个方向? 作为一名开发人员,我怎样才能真正帮助实现这一目标,并且很快就能看到像工作中的那个混蛋新人并且告诉每个人他们写的东西是废话? 当您遇到这种事情时,您在自己的工作经历中使用过任何经过validation的策略或经验吗?

从Java中的JSON字符串中检测JSON模式

我一直在寻找一种方法来检测来自Java中JSON字符串的JSON对象的模式。 我发现将JSON字符串转换为POJO的方法很多,但我发现的所有示例都要求Java类将JSON转换为提前知道和定义。 我的JSON是数据,我不知道它的结构,所以我不能这样做。 我也看到很多方法将POJO序列化为JSON,大多数问题的答案是使用Jackson模块,但我仍然没有找到我的问题的答案: 我想读一个我不知道结构的JSON字符串,并检测它的模式。 有没有一个模块可以做到这一点? 我可以通过它来处理并处理不同的情况,但这必须在以前完成! 我知道我可以用类似的东西读JSON mapper = new org.codehaus.jackson.map.ObjectMapper(); JsonNode json = mapper.readTree(in); 我可以用Java来读取Java类的模式 JsonSchema schema = mapper.generateJsonSchema(myObjectClass.class); 但如果我这样做 JsonSchema schema = mapper.generateJsonSchema(json.getClass()); 无论JSON字符串输入是什么,我得到的就是: {“type”:“对象”} 那么,有谁知道如何检测我的未知对象的架构? 我认为这与从JsonNode正确构建POJO有关,但我不知道如何得到它。 感谢您的见解。

如何审核Java EE项目?

我将审核基于JSF / CDI / EJB3.0 / JPA的Java EE Web项目的代码体系结构质量和可维护性(最终确保我们已经付出了代价)(仅举几个技术的名称)参与)。 这可能不是一个正确的问题,但你如何处理这类任务呢? 基本上,我将从粗粒度到细粒度,即从整个架构到java代码。 完全处理每一层是否更好? 我应该花更多时间在低层吗? 你评估整个事情(构建,部署,测试)吗?

Web服务架构:Redis(作为缓存)和PostgreSQL用于持久性

我正在开发一个使用postgreSQL数据库中的客户端数据的Java REST API。 数字: 。 一开始约有600个客户。 他们中的一些人每隔几秒就会做一次请求 由于客户按要求付费,我们需要控制他们的成功请求数量是否达到限制,并且在每次请求性能不佳后查询postgresql数据(更新’hitsCounter’字段的值)时,我们正在考虑实施一个带redis的缓存系统。 想法:在客户端完成第一次请求后,我们从postgresql中检索他的数据并将其存储到redis缓存中。 然后使用此缓存数据,例如递增’hitsCounter’键值,直到客户端停止执行请求。 同时,后台进程每隔几分钟就会将数据从redis缓存持久存储到db表,所以最后我们将更新后的数据恢复到postgresql,我们将来可以处理它们。 我认为它显然会提高性能,但我不确定这个“后台进程”。 一个选项是检查缓存元素的TTL,如果它小于某个值(这意味着客户端已完成请求),则保留数据。 我很想听听有关这方面的一些意见。 这是一个好主意吗? 你知道更好的选择吗?

Java中的MySQL模式解析器?

有谁知道是否有用于解析MySQL模式的java库? 在代码中,我希望能够确定模式中指定的表和字段。 或者我需要自己写吗? 谢谢理查德。 编辑:只是想避免不必要地重新发明轮子:)

JSP到Servlet的关系

书中有很多很多例子,互联网上有关如何将Servlet用作JSP的例子。 但我想知道使用它们的最佳方式是什么,以及对良好架构的思考。 Servlet与JSP之间是否存在一对一的关系? 像ASP.NET“Code-Behind”页面一样? 或者更像是ASP.NET MVC,一个Servlet控制多个动作,并转发到多个视图? 这是关于纯Java EE开发的问题。 请不要简单地建议另一个框架。

Java:在各种其他类中使用相同的类实例

这可能是一个愚蠢的问题,但我不知道它的答案,我不知道在哪里搜索答案,所以如果有人可以帮助我会很好。 我有一个类(让我们命名为A)具有不同的成员和方法。 我在另一个类中使用此类的方法(让我们将其命名为B)。 对于每个创建的B-Object,我想使用A的SAME实例。这可能吗? 实际上我在B中有一个构造函数,我称之为A a = new A(); 当然,我总是得到这个类的不同实例。 我现在该怎么改变这个? 我知道可以用spring框架解决它(将相同的对象注入到B的实例中),但我无法使用它。 怎么还能解决这个问题? 非常感谢您的帮助! 🙂