BuguMongo是一个轻量级的MongoDB Java开发框架,集成了DAO、Query、Lucene、GridFS等功能。
经常有朋友在群里问:使用BuguMongo做开发,连接数据库的代码应该写在哪里?
如果是开发Java Application,那么连接数据库的代码可能是写在main()方法里;如果开发的是web应用,那么可以在web.xml里添加一个监听器,比如:
- <listener>
- <listener-class>com.xbwen.context.SystemInitListener</listener-class>
- </listener>
<listener>
<listener-class>com.xbwen.context.SystemInitListener</listener-class>
</listener>
SystemInitListener是自己定义的一个监听器,用来在系统启动的时候进行一些初始化设置,在系统关闭的时候回收资源。使用BuguConnection连接MongoDB数据库,使用BuguIndex初始化索引参数,都可以写在里面。如:
package com.xbwen.context;
import com.bugull.mongo.BuguConnection;
import com.bugull.mongo.lucene.BuguIndex;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class SystemInitListener implements ServletContextListener{
@Override
public void contextInitialized(ServletContextEvent event) {
BuguConnection conn = BuguConnection.getInstance();
conn.connect("192.168.0.100", 27017, "test", "test", "test");
BuguIndex index = BuguIndex.getInstance();
index.setDirectoryPath("/data/lucene_index/");
index.open();
}
@Override
public void contextDestroyed(ServletContextEvent event) {
BuguIndex.getInstance().close();
}
}