我们有一个基于Java Spring MVC的项目使用Eclipse(Juno - 最新版本),使用最新的JVM 1.7和Tomcat 7. Eclipse非常快,一切都设置为默认设置.一旦它全部装满,它就会闪电般快速,这是一个令人愉快的变化.
然而,唯一的抱怨是如果我打开一个项目,它开始"加载描述符",据我所知,这是我们的185行web.xml文件.有时这可能需要5分钟才能加载,有时可能根本不加载.这可以防止进行任何更改,因为系统在其他任何事情发生之前等待描述符加载.按下停止按钮使系统"等待"取消通过,唯一的出路似乎是杀死java进程是任务管理器.如果它偶然加载,那么系统运行正常(除非你打开另一个项目以供参考,然后再次开始的乐趣).
是否存在跳过描述符的一些配置(例如,它是否与可以跳过的验证有关)或者是否存在描述符可能无法正确加载的某些原因?
我有一个豆子${product}.我想查看这个bean的所有可用字段/属性.因此,例如,${product.price},${product.name},${product.attributes.colour}等.
是否可以使用JSTL/EL在JSP中动态打印出这些属性的所有名称和值?
就像是:
<c:forEach items="${product}" var="p">
${p.key} - ${p.value}
</c:forEach>
Run Code Online (Sandbox Code Playgroud) 我们正在尝试在我们的网站上实现新的Google reCAPTCHA,但是当我们尝试使用命名空间函数从中加载回调时,回调不会运行.
将回调更改为不使用回调可以正常工作.我们正在使用谷歌地图API做类似的事情.
有没有办法解决这个问题,或者这是新版Google reCAPTCHA系统的限制?
码
<script>
var namespace = {};
namespace.captcha = function() {
alert("Hello world!")
};
</script>
<script src="//www.google.com/recaptcha/api.js?onload=namespace.captcha&render=explicit" async defer></script>
Run Code Online (Sandbox Code Playgroud)
问题实际上是我们希望使用揭示模块化模式将所有代码保存在命名空间脚本中.解决这个问题的方法是创建一个全局变量并将其用作回调,但它并没有放弃我所希望的.
全球回调
<script>
var namespace = {};
namespace.captcha = (function() {
function call() {
alert("Hello world!")
};
window.callback = namespace.captcha.call;
return call:call;
})();
</script>
<script src="//www.google.com/recaptcha/api.js?onload=callback&render=explicit" async defer></script>
Run Code Online (Sandbox Code Playgroud) 我正在编写JSP/JSTL,我正在尝试迭代数据库中的几个项目.
我目前在数据库中有三列${image1},${image2}和${image3}.我正在尝试使用以下代码为它们打印出信息:
<c:forEach begin="1" end="3" var="i">
${image${i}}
</c:forEach>
Run Code Online (Sandbox Code Playgroud)
有什么方法可以让我的工作吗?
我已经为我的spring/hibernate项目配置了一个自定义通用服务DAO - 这个想法是我可以从我的控制器中轻松地重用它.
它基本上是这样的:
public class DefaultService<T> {
private Class<T> e;
public String className(Class<T> e) {
String clip = e.getName();
clip = clip.substring(clip.lastIndexOf('.') + 1, clip.length());
return clip;
}
public List<T> getAll(Integer status) {
Session session = sessionFactory.getCurrentSession();
Query query = session.createQuery("FROM " + className(e) + " WHERE status = " + status);
return query.list();
}
...
Run Code Online (Sandbox Code Playgroud)
哪个被引用:
@Autowired
public DefaultService<Address> addressService;
addressService.get(1);
Run Code Online (Sandbox Code Playgroud)
但是该String clip = e.getName()行会抛出Null指针异常.如果我将类移动到属性部分,addressService.get(Address.class, 1)我可以使用它(所以但我觉得这有些不整齐,特别是当有多个不同的类被调用时.
有没有办法让类正确生成一个值而不必重复添加到我的所有函数中?
提前致谢.
java ×2
jsp ×2
jstl ×2
captcha ×1
descriptor ×1
eclipse ×1
el ×1
genericdao ×1
javabeans ×1
javascript ×1
properties ×1
recaptcha ×1
spring ×1
spring-mvc ×1