我有一个Java servlet网站,但是没有使用任何类似Spring甚至Struts的框架!它确实具有休眠功能,它与常规sql一起使用.它还没有单元测试.它使用cvs和ant.该服务器只能在JSP中运行Java 1.4.
除此之外,代码的结构也相当好.
有没有什么好的方法可以在代码中添加更多现代功能,同时最大程度地降低风险?似乎我们可以在新代码中添加一些spring功能.也许用Subversion和Maven替换cvs和Ant,或者其他方法.
是否可以让站点的新部分在Spring MVC甚至JRuby on Rails等环境中运行?
解决方法:
>代码结构合理
如果是这样,我将首先编写一些测试,以确保当前的行为/业务保持不变,同时继续进行Spring的介绍.
>是否有可能使站点的新部分在Spring MVC甚至JRuby on Rails等环境中运行
一切皆有可能,但是由于代码已经是Java,并且正如您所指出的“结构良好”,我将选择Spring.
最简单的开始方法是弄清楚什么取决于什么才能启动“网站”.一旦有了它,您将已经具有可以使用Spring“入门”应用程序上下文起草的不同组件(代码中的书面文件),可以通过以下方式使用web.xml加载:
contextConfigLocation
classpath:META-INF/spring/starter-application-context.xml /WEB-INF/spring/transportes-webflow.xml ...
org.springframework.web.context.ContextLoaderListener
那是在您使用任何Spring MVC功能之前.完成后,请查看是否可以为此项目定义域模型.然后,您可以开始将Servlet转换为Spring MVC控制器和模型(这些域).
一次移动一个步骤时,请运行这些测试,以确保行为仍然稳定.这些可以是简单的JUnit测试,也可以是Selenium测试,它们可以确保“网站”流仍然完整.
>它使用cvs和ant
我建议将您的构建体系结构切换到Gradle,这确实需要花一点时间或学习曲线才能使您全神贯注地访问构建脚本中的所有内容(这是一件好事),但确实有回报.
对于CVS,我更喜欢git,但是如果您对SVN感到满意,那么也可以切换到git.在我看来,git已成为版本控制系统的标准,也成为了Java开发的Spring.
>它确实有休眠,它与常规sql一起使用
了解使用常规SQL的原因.如果这些是出于性能原因,则可以改用存储过程(可以在Spring中使用存储过程).另请参阅使用Hibernate的原因,因为它可能带来您可能不需要的其他复杂性,并且使用简单的Spring JdbcTemplate会更好.
标签:legacy,java
来源: https://codeday.me/bug/20191102/1988953.html