我需要通过此属性的XPath从XML文档中删除属性.
一切都应该用Java来完成.
我能够使用以下代码找到属性的节点:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
Document document = dbf.newDocumentBuilder().parse(new File("input.xml"));
XPathFactory xpf = XPathFactory.newInstance();
XPath xpath = xpf.newXPath();
XPathExpression expression = xpath.compile("//div[@id='1']/@id");
Node myNode = (Node) expression.evaluate(document, XPathConstants.NODE);
Run Code Online (Sandbox Code Playgroud)
我的想法是获取属性的节点父节点,然后调用removeChild方法将属性的节点作为参数传递.
myNode.getParentNode().removeChild(myNode);
Run Code Online (Sandbox Code Playgroud)
遗憾的是,根据API文档,属性节点始终没有父节点.
在这种情况下,有没有办法确定属性的Node父节点?
我将如何以编程方式单击一个Swing JButton,以便注册所有相关的动作/鼠标事件并对用户可见(即他们看到按钮被按下就像他们实际点击它一样)?
该按钮与我正在运行的应用程序相同; 我不是想控制另一个应用程序中的按钮.我想我可以直接将事件注入队列,但是如果可能的话我宁愿避免使用这种方法,这样做也不会显示可见的点击.
我看到java.awt.Robot类提供了移动鼠标并单击鼠标的方法,但没有让它单击特定按钮.
我有树结构的类别.我试图通过为每个人定义父母来将他们联系在一起.(我无法弄清楚如何调用该属性parent所以它只是暂时category,但它意味着父母).
class Category < ActiveRecord::Base
has_one :category # the parent category
end
Run Code Online (Sandbox Code Playgroud)
但这种关系最终走错了方向.
getter函数在子类别上(正确)但category_id存储在父类中:
parent = Category.create(:name => "parent")
child = Category.create(:name => "child", :category => parent)
parent.id # 1
child.id # 2
child.category_id # nil
parent.category_id # 2
child.category.name # "parent" (!!)
Run Code Online (Sandbox Code Playgroud)
父母需要能够有多个孩子,所以这不会起作用.
在AppStore上看到一个名为PhoneRecover的应用程序.
他们宣传以下内容:
这怎么可能?在启动后使用哪些API自动启动应用程序?
当我在模拟器上运行我的应用程序时它运行良好,当我尝试使用设备不起作用,我得到这些错误:
注意:我在我的代码中没有找到任何类的authView
2011-02-24 12:04:14.472 TestP[473:307] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<TestP 0x19d2b0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key authView.'
*** Call stack at first throw:
(
0 CoreFoundation 0x33ac0987 __exceptionPreprocess + 114
1 libobjc.A.dylib 0x3347b49d objc_exception_throw + 24
2 CoreFoundation 0x33ac0705 -[NSException dealloc] + 0
3 Foundation 0x3367db4f -[NSObject(NSKeyValueCoding) setValue:forUndefinedKey:] + 182
4 Foundation 0x3367d03b _NSSetUsingKeyValueSetter + 90
5 Foundation 0x3367eda3 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 194
6 Foundation 0x33630b17 -[NSObject(NSKeyValueCoding) setValue:forKeyPath:] …Run Code Online (Sandbox Code Playgroud) 我正在使用JPA 2和Hibernate 3.我注意到调用EntityManager.merge()会在对象图中的每个引用实体上产生一个SELECT,并在其中一些实体之间加入内部连接.
假设你想合并()一个FooBar.
@Entity
public class FooBar {
@ManyToOne
private Foo foo;
@ManyToOne
private Bar bar;
}
@Entity
public class Foo {
@ManyToOne
private Baz baz;
}
@Entity
public class Bar {
@ManyToOne
private Baz baz;
}
Run Code Online (Sandbox Code Playgroud)
如果你这样做,Hibernate将为FooBar,Foo和Bar发出一个SELECT,为Baz发出两个SELECT.然后,它将发出一个SELECT for Foo与Baz连接,另一个用于Bar与Baz一起加入.因为我只想合并一个FooBar,所以我期待从中获得一个SELECT,但我最终得到了一个惊人的7个SELECT!
首先,这是正常的吗?第二,如果是,有没有办法只发出一个SELECT?
谢谢.
既然最终的SDK已经推出google apis - 使用MapView创建片段的最佳方法是什么?MapView需要MapActivity才能正常工作.
让管理片段的Activity继承自MapActivity(糟糕的解决方案,因为它违背了Fragments自包含的想法)并使用常规的基于xml的布局不起作用.我在MapActivity.setupMapView()中得到一个NullPointerException:
E/AndroidRuntime( 597): Caused by: java.lang.NullPointerException E/AndroidRuntime( 597): at com.google.android.maps.MapActivity.setupMapView(MapActivity.java:400) E/AndroidRuntime( 597): at com.google.android.maps.MapView.(MapView.java:289) E/AndroidRuntime( 597): at com.google.android.maps.MapView.(MapView.java:264) E/AndroidRuntime( 597): at com.google.android.maps.MapView.(MapView.java:247)
我的第二个想法是以编程方式创建MapView并将关联的活动(通过getActivity())作为Context传递给MapView构造函数.不起作用:
E/AndroidRuntime( 834): Caused by: java.lang.IllegalArgumentException: MapViews can only be created inside instances of MapActivity. E/AndroidRuntime( 834): at com.google.android.maps.MapView.(MapView.java:291) E/AndroidRuntime( 834): at com.google.android.maps.MapView.(MapView.java:235) E/AndroidRuntime( 834): at de.foo.FinderMapFragment.onCreateView(FinderMapFragment.java:225) E/AndroidRuntime( 834): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:708) E/AndroidRuntime( 834): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:900) E/AndroidRuntime( 834): at android.app.FragmentManagerImpl.addFragment(FragmentManager.java:978) E/AndroidRuntime( 834): at android.app.Activity.onCreateView(Activity.java:4090) E/AndroidRuntime( 834): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:664)
真的应该有类似MapFragment的东西来处理MapView需要的后台线程我猜...那么目前最好的做法是什么呢?
感谢和问候来自德国,Valentin
android google-maps android-maps android-fragments android-3.0-honeycomb
在Spring中,@Transactional如果没有注释的方法,则注释的方法 将获得新事务,但我注意到,如果从非事务性方法调用事务方法,则事务方法不会获取任何事务.这是代码.
@Component
public class FooDao {
private EntityManager entityManager;
@PersistenceContext
protected void setEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
@Transactional
public Object save(Object bean) {
return this.entityManager.merge(bean);
}
public Object saveWrap(Object bean) {
return save(bean);
}
}
@Component
public class FooService {
private FooDao fooDao;
public void save(Object bean) {
this.fooDao.saveWrap(bean); // doesn't work.
this.fooDao.save(bean); // works
}
}
Run Code Online (Sandbox Code Playgroud)
saveWrap()是一种常规方法,它调用save()哪些是事务性的,但saveWrap()不会保留任何更改.
我正在使用Spring 3和Hibernate 3.我在这里做错了什么?谢谢.
我遇到了jQuery函数'hasClass'的问题.它返回false,而它应该返回true.hasClass函数正在寻找一个由javascript添加的类.那么也许hasClass函数无法在改变的HTML中找到类?如果是这样,我该如何解决它最好的方法?
$(".slides").mouseover(function(){
$(this).stop(true, true).animate({"width": "+=30px", "height": "+=30px", "margin-top": "+=15px"}, 200);
})
$(".slides").mouseout(function(){
alert($(this).hasClass('activeSlide'));
if(!$(this).hasClass('activeSlide')){
$(this).stop(true, true).animate({"width": "-=30px", "height": "-=30px", "margin-top": "-=15px"}, 200);
}
});
$("body").click(function(){
$(".activeSlide").removeClass("activeSlide");
});
$(".slides").click(function(){
$(".activeSlide").removeClass("activeSlide");
$(this).addClass("activeSlide");
alert("Set");
});
Run Code Online (Sandbox Code Playgroud) 和往常一样,如果这是一个愚蠢的问题我会道歉(实际上是两个问题).我不是DBA,所以我对索引知之甚少.我的问题是:
是否存在索引无意义的截止点(就行数而言)?例如,对具有10-20行的查找表的索引有什么好处吗?
我已经阅读了一些关于在Oracle中覆盖索引的内容,这个概念很有意义,因为可以直接从索引中检索数据,并且不需要访问表.如何判断索引是否为覆盖索引?这是创建索引时的值,还是默认情况下基于索引包含的行?
我希望这是有道理的.