1.解壓
修改文件名為mongo3.2.5,執(zhí)行命令如下:
mv mongodb-linux-i686-3.2.5 mongo3.2.5
2.創(chuàng)建組mongoDB與用戶mongoDB、文件夾data以及l(fā)og
用于與組是為了便于管理MongoDB
data用于存放mongoDB數(shù)據(jù)。
log用于記錄mongoDB日志。
3.指定組、用戶
4.啟動(dòng)mongo服務(wù)命令
bin/mongod --dbpath=/usr/local/mongo-3.25/data/ --logpath=/usr/local/mongo-3.25/log/mongo.log --journal --storageEngine=mmapv1
注意:因?yàn)槲沂褂玫氖莑inux32位系統(tǒng)的,故默認(rèn)的存儲(chǔ)引擎wiredTiger是不支持的。需要指定存儲(chǔ)引擎。如果不指定可能會(huì)報(bào)以下錯(cuò)誤:
開啟MongoDB服務(wù)成功后,截圖如下:
連接mongo服務(wù)
上面啟動(dòng)MongoDB之后,需要重新打開一個(gè)窗口,進(jìn)行連接。
當(dāng)提示如下信息,代表連接成功。
當(dāng)然,也可以通過(guò)瀏覽器訪問(wèn)以下網(wǎng)址,查看輸出結(jié)果
http://192.168.153.140:27017
初始安裝的時(shí)候沒(méi)有admin數(shù)據(jù)庫(kù)
修改配置文件/etc/MongoDB.conf
打開auth的注釋,設(shè)置為auth = true
重啟mongodb
sudo service mongodb restart
使用命令mongo進(jìn)入命令行
創(chuàng)建第一個(gè)用戶,該用戶需要有用戶管理權(quán)限
這里設(shè)置其角色為root
use admin
db.createUser({user:"admin",pwd:"password",roles:["root"]})
新增的用戶在system.users中
> db.getCollectionNames()
[ "system.indexes", "system.users", "system.version" ]
第一個(gè)用戶添加完成后,便需要認(rèn)證才能繼續(xù)添加其他用戶
使用db.auth("admin", "password")認(rèn)證
為其他數(shù)據(jù)庫(kù)添加用戶,添加用戶前需要切換到該數(shù)據(jù)庫(kù)
這里設(shè)置其角色為dbOwner
use testdb1
db.createUser({user: "testdb1u1", pwd: "xyz123", roles: [{ role: "dbOwner", db: "testdb1" }]})
查看用戶
> use admin
switched to db admin
> db.system.users.find()
{ "_id" : "admin.admin", "user" : "admin", "db" : "admin", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "Fdh2ldIW3Aw8Cxz9Dt+96g==", "storedKey" : "zbkfj6ZQH1xwGoOg8JJ6OjtR3Cs=", "serverKey" : "yqkqHABZ64rEeq1X0htOAtUnwFU=" } }, "roles" : [ { "role" : "root", "db" : "admin" } ] }
{ "_id" : "testdb1.testdb1u1", "user" : "testdb1u1", "db" : "testdb1", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "Xxt2uET3jRtAYVigyLUydw==", "storedKey" : "yinLG61nRFzfC+3NtB5p9RR+avM=", "serverKey" : "OX/Pdft7JWJm/g0jg07q49OC4c8=" } }, "roles" : [ { "role" : "dbOwner", "db" : "testdb1" } ] }
<context:component-scan base-package="com.mweb.**.controller" /> 掃描 controller
<aop:aspectj-autoproxy /> aop 參考下面的也行
/*多條-刪除*/
function deleteBatch(){
layer.confirm('確認(rèn)要?jiǎng)h除嗎?',function(index){
var idList = new Array();
// 獲得選中的ID值
$("input[name='id']:checkbox:checked").each(function(){
idList.push(this.value);
});
$.ajax({
type:"post",
url:"${CONTEXT_PATH}/sys/menu/deletebatch.html",
data: $('#form-menu').serialize(),//表單數(shù)據(jù)
data: {"idList":idList},
//cache:false,
success:function(msg){
if(msg=="success"){
// 延時(shí)1S刷新
setTimeout('location.replace(location.href)', 1000);
layer.msg('全部刪除成功!',{icon:1,time:1000});
}
if(msg=="error"){
layer.msg('異常!');
}
}
});
});
}
@CacheEvict(value="defaultCache",allEntries=true)
public void removeMulti(List<String> objs) {
BasicDBList basicDBList=new BasicDBList();
for(String id : objs) {
basicDBList.add(new BasicDBObject("id",id));
}
DBObject obj =new BasicDBObject();
obj.put("$or", basicDBList);
Query query=new BasicQuery(obj);
mongoTemplate.remove(query,Menu.class);
}
/** ajax登錄,并jquery md5 加密密碼 */
function loginsubmit() {
var salt=$("#username").val();
var pwd=$("#password").val();
var md5Pwd=$.md5(pwd+salt);
var validateCode=$("#validateCode").val();
var rememberMe=$("#rememberMe").val();
data="username="+ salt
+ "&password=" + md5Pwd
+ "&validateCode=" + validateCode
+ "&rememberMe=" + rememberMe;
$.ajax({
type: "POST",
url: "loginsubmit",
dataType:'html',
data: data,
contentType:"application/x-www-form-urlencoded;charset=UTF-8",
success: function(msg){
if(msg=="ok") {
location.href = "index";
}else if (msg=="errorcode"){
alert("驗(yàn)證碼無(wú)效!");
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
}
以上代碼中url為 loginsubmit.html 去掉".html"即可提交 ,后臺(tái)代碼用的@ResponseBody注解