📄 nodebean.java
字号:
/**
* Created on 2003-7-21
*/
package com.liuyang.ejb.cmp.node;
import java.io.StringWriter;
import java.rmi.RemoteException;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import javax.ejb.CreateException;
import javax.ejb.EJBException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.FinderException;
import javax.ejb.RemoveException;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.exolab.castor.xml.Marshaller;
import com.liuyang.ejb.cmp.node.data.NodeBook;
/**
* @author liuyang
*
* @ejb.bean description="NodeBean"
* display-name="NodeBean"
* local-jndi-name = "cmp/nodelocal"
* name="Node"
* primkey-field="title"
* schema="node"
* type="CMP"
* view-type="local"
* cmp-version = "2.x"
*
*
*
* @ejb.finder signature="java.util.Collection findAll()"
* query = "SELECT OBJECT(g) FROM node g"
*
* @ejb.finder query="SELECT OBJECT(g) FROM node g WHERE g.title =?1"
* signature="java.util.Collection findByTitle(java.lang.String title)"
*
* @ejb.finder query="SELECT OBJECT(g) FROM node g WHERE g.date < ?1"
* signature="java.util.Collection findByDate(java.util.Date date)"
*
* @jboss.query query="SELECT OBJECT(g) FROM node g WHERE g.date < ?1 ORDER BY g.date"
* signature="java.util.Collection findByDate(java.util.Date date)"
*
*
*/
public abstract class NodeBean implements EntityBean {
/**
* @ejb.interface-method view-type = "local"
*/
public abstract void setTitle(String title);
/**
* @ejb.persistence
*
* @ejb.interface-method view-type = "local"
*/
public abstract String getTitle();
/**
* @ejb.interface-method view-type = "local"
*/
public abstract void setText(String text);
/**
* @ejb.persistence
* @ejb.interface-method view-type = "local"
*/
public abstract String getText();
/**
* @ejb.interface-method view-type = "local"
*/
public abstract void setDate(Date date);
/**
* @ejb.persistence
* @ejb.interface-method view-type = "local"
*/
public abstract Date getDate();
/**
*
* @ejb.home-method view-type = "local"
*/
public NodeBook ejbHomeGetNodeBook(String title){
NodeLocalHome home = (NodeLocalHome) ctx.getEJBLocalHome();
NodeBook nbook = new NodeBook();
try {
if(!home.findByTitle(title).isEmpty()){
NodeLocal node = home.findByPrimaryKey(title);
nbook.setTitle(title);
nbook.setText(node.getText());
nbook.setDate(node.getDate());
}
} catch (FinderException e) {
e.printStackTrace();
}
return nbook;
}
/**
*
* @ejb.home-method view-type = "local"
*/
public String ejbHomeGetXML(){
NodeLocalHome home = (NodeLocalHome) ctx.getEJBLocalHome();
Document nodesresult = DocumentHelper.createDocument();
Element root = DocumentHelper.createElement("nodebooks");
nodesresult.add(root);
Collection nodes;
try {
nodes = home.findByDate(new Date());
for(Iterator it = nodes.iterator();it.hasNext();){
NodeLocal node = (NodeLocal) it.next();
String t = node.getTitle();
System.out.println(t);
NodeBook nBook = home.getNodeBook(t);
StringWriter wr = new StringWriter();
String encoding = "ISO-8859-1";
Marshaller marshaller = new Marshaller(wr);
marshaller.setEncoding(encoding);
marshaller.marshal(nBook);
String cs = wr.toString();
cs = new String(cs.getBytes(encoding),"gb2312");
cs = cs.substring(0,cs.indexOf("ISO-8859-1"))+"gb2312"+cs.substring(cs.indexOf("ISO-8859-1")+10);
Element element = DocumentHelper.parseText(cs).getRootElement().createCopy();
root.add(element);
}
} catch (Exception e) {
e.printStackTrace();
}
//System.out.println(nodesresult.asXML());
return nodesresult.asXML();
}
/**
* @ejb.create-method view-type = "local"
*/
public String ejbCreate(String title,String text,java.util.Date date)throws CreateException{
setTitle(title);
setText(text);
setDate(date);
return title;
}
public void ejbPostCreate(String title,String text,java.util.Date date){
}
/**
* @ejb.create-method
*/
public String ejbCreate(String title,String text) throws CreateException{
setTitle(title);
setText(text);
setDate(new java.util.Date());
return title;
}
public void ejbPostCreate(String title,String text){
}
/**
* @ejb.create-method
*/
public String ejbCreate(String title) throws CreateException{
setTitle(title);
setText("empty content");
setDate(new java.util.Date());
return title;
}
public void ejbPostCreate(String title){
}
public void ejbActivate() throws EJBException, RemoteException {
}
public void ejbLoad() throws EJBException, RemoteException {
}
public void ejbPassivate() throws EJBException, RemoteException {
}
public void ejbRemove()
throws RemoveException, EJBException, RemoteException {
}
public void ejbStore() throws EJBException, RemoteException {
}
private EntityContext ctx;
public void setEntityContext(EntityContext context)
throws EJBException, RemoteException {
ctx = context;
}
public void unsetEntityContext() throws EJBException, RemoteException {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -