如何使用spring数据或本地java适配器连接到数据存储来创建应用程序?
一.准备工作
像往常一样,我们首先需要准备一系列的jar包。这里我截了一张图,如下图。
哪个罐子包?Commons-beans-1.8.3,commons-lang-2.6,Commons-collections-3.2 . 1,Commons-logging-1.1,Ezmorph-1。
二、数据库连接配置
使用Spring数据连接MongoDB数据库有两种方式:一种是通过JDBC连接,另一种是通过Spring读取XML配置文件连接。
这里介绍第一种连接方式,后面再介绍第二种连接方式。
1.创建配置文件“DataSource.properties ”,以存储数据库信息供以后修改。内容如下:
主机=127.0.0.1
Port=27017
数据库=国王
用户名=国王
密码=国王
以上配置为:目标数据库所在的服务器地址、数据库连接端口、数据库名称、用户名和密码。*请根据实际情况进行配置。
2.获取数据库连接
这里就不介绍负责数据库连接的接口和类了。有兴趣的可以点击链接查看官方文档:界面?MongoOperations?还有阶级?MongoTemplate .其中,MongoTemplate类实现了接口MongoOperations。
下面我附上我写的MongoUtil类的源代码。这个类主要是封装代码得到一个MongoTemplate的实例。
包裹?com . report . util;
进口?Java . net . unknown host exception;
进口?Java . util . locale;
进口?Java . util . resource bundle;
进口?org . spring framework . data . authentic ation . user credentials;
进口?org . spring framework . data . MongoDB . core . mongooperations;
进口?org . spring framework . data . MongoDB . core . mongotemplate;
进口?org . spring framework . data . MongoDB . core . simplemongodbfactory;
进口?com . MongoDB . mongo;
公?班级?蒙戈提尔?{
私人?易变?静电?MongoOperations?mongoOperation
私人?静电?决赛?字符串?配置文件名称?=?”数据源”;
私人?静电?决赛?字符串?KEY_HOST?=?”主机”;
私人?静电?决赛?字符串?KEY_PORT?=?”端口”;
私人?静电?决赛?字符串?KEY_DATABASE?=?”数据库”;
私人?静电?决赛?字符串?KEY_USERNAME?=?”用户名”;
私人?静电?决赛?字符串?KEY_PASSWORD?=?”密码”;
私人?MongoUtil()?{
}
公?静电?MongoOperations?getMongoOperation()?{
如果?(mongoOperation?==?null)?{
资源捆绑包?资源捆绑包?=?ResourceBundle.getBundle(
配置文件名称?locale . get default());//获取配置文件“DataSource.properties”
字符串?hostAddr?=?resource bundle . getstring(KEY _ HOST)?+?":"
+?resource bundle . getstring(KEY _ PORT);
用户凭据?用户凭据?=?新的?用户凭据(
resource bundle . getstring(KEY _ USERNAME),
resource bundle . getstring(KEY _ PASSWORD));
试试?{
mongoOperation?=?新的?MongoTemplate(
新的?SimpleMongoDbFactory(新?Mongo(hostAddr),
resource bundle . getstring(KEY _ DATABASE),
user credentials));
}?接住?(UnknownHostException?e)?{
e . printstacktrace();
}
}
回归?mongoOperation
}
}3.在MongoDB中创建测试数据数据库、表和用户。
在MongoDB中创建数据库时,使用的是“Use XXX”命令,因此在创建数据库之前需要进行一些额外的操作。在这里,您选择创建表“king”,如果没有,您可以使用“db.king.drop()”删除该表。点击这里获取MongoDB详细的指令文档,也可以输入“help”获得帮助。
4.编写测试代码来验证数据库连接。
创建一个测试类TestMongoDB.java。
包裹?com.report.Tests
进口?org . spring framework . data . MongoDB . core . query . criteria;
进口?org . spring framework . data . MongoDB . core . query . query;
进口?com . report . util . mongoutil;
公?班级?TestMongoDB?{
私人?字符串?名字;
私人?字符串?姓氏;
TestMongoDB(字符串?名字?字符串?姓什么?){
这个.名字?=?名字;
这个姓?=?姓氏;
}
公?字符串?getFirstName()?{
回归?名字;
}
公?作废?setFirstName(String?名字)?{
这个.名字?=?名字;
}
公?字符串?getLastName()?{
回归?姓氏;
}
公?作废?setLastName(字符串?姓氏)?{
这个姓?=?姓氏;
}
公?静电?作废?main(String[]?args){
TestMongoDB?测试?=?新的?TestMongoDB("John ",《康纳》);
MongoUtil.getMongoOperation()。插入(测试);
TestMongoDB?储存?=?MongoUtil.getMongoOperation()。findOne(新?查询(Criteria.where("firstName ")。is(test.getFirstName()),
testmongodb . class);
如果?(存储?!=?空)
system . out . println(stored . get first name()?+?"?"?+?stored . get last name());
}
}Eclipse控制台输出信息:?约翰·康纳
验证数据库记录: