blogjava-凯发k8网页登录

blogjava-凯发k8网页登录http://www.blogjava.net/supercrsky/专注于javaweb开发zh-cnsat, 08 apr 2023 20:35:17 gmtsat, 08 apr 2023 20:35:17 gmt60android-高级工程师必须要掌握的这些技术,http://www.blogjava.net/supercrsky/articles/436101.html々上善若水々々上善若水々tue, 21 dec 2021 15:43:00 gmthttp://www.blogjava.net/supercrsky/articles/436101.htmlhttp://www.blogjava.net/supercrsky/comments/436101.htmlhttp://www.blogjava.net/supercrsky/articles/436101.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/436101.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/436101.html

々上善若水々 2021-12-21 23:43 发表评论
]]>
多精心设计的架构,平时运行稳定,在实战中才会暴露出各种细节问题。http://www.blogjava.net/supercrsky/archive/2021/12/21/436100.html々上善若水々々上善若水々tue, 21 dec 2021 15:40:00 gmthttp://www.blogjava.net/supercrsky/archive/2021/12/21/436100.htmlhttp://www.blogjava.net/supercrsky/comments/436100.htmlhttp://www.blogjava.net/supercrsky/archive/2021/12/21/436100.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/436100.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/436100.html

々上善若水々 2021-12-21 23:40 发表评论
]]>
linux上安装jdk1.7与tomcat7.0http://www.blogjava.net/supercrsky/archive/2012/12/11/392821.html々上善若水々々上善若水々tue, 11 dec 2012 08:54:00 gmthttp://www.blogjava.net/supercrsky/archive/2012/12/11/392821.htmlhttp://www.blogjava.net/supercrsky/comments/392821.htmlhttp://www.blogjava.net/supercrsky/archive/2012/12/11/392821.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/392821.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/392821.htmlubuntu上安装jdk1.7请用tar.gz包,fedora可选用rpm包。

如果在ubunturpm包安装,需要先转换为deb格式。

安装包的下载

jdk7

http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads-1859576.html

tomcat7

 

jdk的安装

1.解压或安装

.gz

#tar -zxvf jdk-7u9-linux-i586.tar.gz

解压后的目录如:jdk1.7.0_09

将其复制或移动到/usr目录下

#mv jdk1.7.0_09 /usr

 

.rpm

#rpm -ivh jdk-7u9-linux-i586.rpm

 

2.配置环境变量

#vi /etc/profile

profile文件中 umask 022 结束字符前加入

export java_home=/usr/jdk1.7.0_09

export java_bin=/usr/jdk1.7.0_09/bin

export path=$path:$java_home/bin

export classpath=.:$java_home/lib/dt.jar:$java_home/lib/tools.jar

export path=$java_home/bin:$jre_home/bin:$path

 

 

如果ubuntu系统还要修改默认jdk

update-alternatives --install /usr/bin/java java /usr/jdk1.7.0_09/bin/java 300

update-alternatives --install /usr/bin/javac javac /usr/jdk1.7.0_09/bin/javac 300

通过这一步将我们安装的jdk加入java选单。

update-alternatives --config java

 

 

重启terminal测试

#java -version

 

tomcat的安装

 

1.首先解压缩    

#tar -zxvf apache-tomcat-7.0.32.tar.gz

得到tomcat的所有文件.然后把它拷贝到你要安装的位置,如/opt/tomcat

#cp -r /home/zdw/software/apache-tomcat-7.0.32 /opt/tomcat

切换到/opt/tomcat/bin

#cd /opt/tomcat/bin

运行命令

#./startup.sh

 

正常情况下可以见到如下的信息:    

 

using catalina_base:   /opt/tomcat

using catalina_home:   /opt/tomcat

using catalina_tmpdir: /opt/tomcat/temp

using jre_home:        /usr/java/jdk1.7.0_09

using classpath:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar

 

2.然后用浏览器打开如下的网页   

http://localhost:8080/    (如果没有把port number改为80

如果你见到tomcat的网页(index.jsp),证明tomcat安装成功,并已经启动.

 如要关闭tomcat,在/opt/tomcat/bin下运行下面的命令即可    

#./shutdown.sh



々上善若水々 2012-12-11 16:54 发表评论
]]>
navicat_for_mysql_10.0.11在linux下的安装http://www.blogjava.net/supercrsky/articles/392820.html々上善若水々々上善若水々tue, 11 dec 2012 08:39:00 gmthttp://www.blogjava.net/supercrsky/articles/392820.htmlhttp://www.blogjava.net/supercrsky/comments/392820.htmlhttp://www.blogjava.net/supercrsky/articles/392820.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/392820.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/392820.html官方下载地址:http://www.navicat.com/cn/download/download.html

navicat_for_mysql_10.0.11_cn_linux.tar.gz

使用方法:

1.打开终端:应用程序->系统工具(或附件)->终端,切换到root账户:

#su -

密码:

(注意:输入root账户密码时,密码不会显示出来,也没有提示的特殊字符,直接输完密码按enter键就行了)

 

2.切换到放置下载得到的 navicat_for_mysql_10.0.11_cn_linux.tar.gz 软件包的目录,

例如我把软件包放置到了 /home/zdw/software 目录下

# cd /home/zdw/software

3.解压 navicat_for_mysql_10.0.11_cn_linux.tar.gz

# tar -zxvf navicat_for_mysql_10.0.11_cn_linux.tar.gz

解压后会得到名为 navicat_for_mysql 的文件夹

4.将解压生成文件夹移动到/opt目录下:

# mv /home/zdw/software/navicat_for_mysql /opt

 

5.运行 navicat 方法:

进入安装目录:

# cd /opt/navicat_for_mysql

执行命令:

 

# ./start_navicat

这样即可启动navicat

 

为了方便,也可以创建navicat的桌面启动器,方法如下:

在桌面点击右键->点击[创建启动器]->

【类型】栏选择[应用程序]

【名称】栏填入:navicat

【命令】栏点击右边的【浏览】选择到->[文件系统]->[opt]->[navicat_for_mysql]->[start_navicat]

最后点击【确定】,就在桌面创建好navicat的启动器

 

6.破解:

注册码 navn-lnxg-xhhx-5noo

用户和组织随便填

 

7.连接上数据库后里面的中文数据若是乱码,把字符集修改为zh_cn.utf8就行了,修改方法:

查看系统支持的字符集

# locale -a

修改字符集

# export lang=zh_cn.utf8



々上善若水々 2012-12-11 16:39 发表评论
]]>
mysql5.5.28在linux下的安装http://www.blogjava.net/supercrsky/articles/392801.html々上善若水々々上善若水々tue, 11 dec 2012 06:39:00 gmthttp://www.blogjava.net/supercrsky/articles/392801.htmlhttp://www.blogjava.net/supercrsky/comments/392801.htmlhttp://www.blogjava.net/supercrsky/articles/392801.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/392801.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/392801.html1.       下载mysql

.

2.       解压

   假如tar包在/home/zdw/software目录下

#tar -xvf mysql-5.5.28-linux2.6-i686.tar.gz

3.       移动到/usr/local/mysql

#mv mysql-5.5.28-linux2.6-i686 /usr/local/

添加快捷方式mysql指向mysql-5.5.28-linux2.6-i686

#ln -s mysql-5.5.28-linux2.6-i686/ mysql

4.       安装依赖的lib:执行/usr/local/mysql/bin/mysqld,报错

/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot               open shared object file: no such file or directory

使用apt-cache search libaio,找到如下软件源

libaio-dev - linux kernel aio access library - development files

libaio1 - linux kernel aio access library - shared library

libaio1-dbg - linux kernel aio access library - debugging symbols

使用#apt-get install libaio1 安装

5.       配置用户,目录

#groupadd mysql

#useradd -r -g mysql mysql

#cd /usr/local/mysql

#chown -r mysql .

#chgrp -r mysql .

6.       初始化mysql

    假如当前目录为/usr/local/mysql

#scripts/mysql_install_db --user=mysql

7.       启动mysql

最简单的启动方式:

#/usr/local/mysql/bin/mysqld --user=mysql

默认情况下使用/usr/local/mysql/data作为mysql的数据目录,包括数据库文件,log日志。

常用的mysql启动参数:

/usr/local/mysql/bin/mysqld  --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data  --port=3306 --socket=/tmp/mysql.socks

推荐的启动mysql

#/usr/local/mysql/support-files/mysql.server start

启动完成之后用ps -ef |grep mysql 命令查看是否启动

8.       登录mysql

#/usr/local/mysql/bin/mysql -u root -p

默认密码为空

修改root密码

mysql>use mysql ;
mysql>update user set password=password("123456") where user='root';
mysql>flush privileges;

9.       关闭mysql

最简单的方式

#killall mysqld

推荐的方式

#/usr/local/mysql/support-files/mysql.server stop

使用mysql.server stop关闭mysqld会销毁pid文件,并做容错操作,但是最后也是调用kill命令kill mysql

 

关闭mysql,尽量不要用kill -9 mysql_pid或者是killall -9 mysql,否则mysql进程无法做退出处理,就可能会丢失数据,甚至导致表损坏。

 

10.   浅析mysql.server脚本的启动流程

mysql.server脚本可以看到在以下脚本调用mysqld_safe这个bash

$bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null 2>&1 &

默认情况下,$bindir/mysqld_safe就是/usr/local/mysql/bin/mysqld_safe这个shell,我的本机的调用参数如下:

/bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/blue-pc.pid

mysqld_safe也是一个shell,可以看到在这个脚本在初始化n多变量后,调用

eval_log_error "$cmd"

这个shell function最后就是调用

 #echo "running mysqld: [$cmd]" eval "$cmd"

在我本机,这个$cmd就是

/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/blue-pc.err --pid-file=/usr/local/mysql/data/blue-pc.pid

参考文章:
http://dev.mysql.com/doc/refman/5.5/en/binary-installation.html
本文在ubuntu11.04和fedora14下测试成功。



々上善若水々 2012-12-11 14:39 发表评论
]]>
apache httpserver2.2.22与tomcat6.0整合http://www.blogjava.net/supercrsky/archive/2012/11/05/390807.html々上善若水々々上善若水々mon, 05 nov 2012 06:24:00 gmthttp://www.blogjava.net/supercrsky/archive/2012/11/05/390807.htmlhttp://www.blogjava.net/supercrsky/comments/390807.htmlhttp://www.blogjava.net/supercrsky/archive/2012/11/05/390807.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/390807.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/390807.html
1.下载tomcat,本文用的6.0,下载地址:http://labs.mop.com/apache-mirror/tomcat/tomcat-6/
2.根据系统版本下载相对的apache httpserver,本文用的是httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
下载地址:http://labs.mop.com/apache-mirror/httpd/binaries/win32/
3.下载mod_jk.so,要找到与httd版本对应的,本文用的是,
下载地址:http://labs.mop.com/apache-mirror/tomcat/tomcat-connectors/jk/binaries/windows/

安装工作:
1.安装apache httpserver,如下图:



所有组件全部装上。
安装成功后如下图所示:

在浏览器输入http://localhost,如果出现 "it works"字样 ,就说明apache server安装成功了。
如果安装上后服务没有启动成功,检查你的80端口是否被占用。
2.安装tomcat,过程我就不细说了,做java的都会的。

配置工作:
1.端口配置
软件我们都装好了,现在需要我们来配置一下
打开apache安装目录的:\apache\conf\httpd.conf文件。
找到:
listen 80 
关键字,这个就是apache的监听端口,默认是80,我们也可以根据需要改成其他的。
2.访问目录配置:
找到

servername zdw.com:80
其中zdw.com是我们在安装时填写的主机名,这里改成服务器ip。
servername 192.168.10.104:80 

找到如下这行:

documentroot

你会发下有这样的一行内容:

documentroot "d:/program files/apache/htdocs

 

这个叫作documentroot即webroot,即:发布目录,发布在这个目录下的任何工程都会在apache服务开启时被装载成标准的web工程,我们现在动手来把这个webroot定位到我们自己的发布目录中去吧。

documentroot "d:/www"

重启我们的apache服务,我们用apache http server 2.2/configure apache server/test configuration来测试一下,如果黑屏一闪而过说明配置正确,否则会显示错误的详细信息。
这时会显示403限制访问的页面。

找到下面这一段:

<directory />
    options followsymlinks
    allowoverride none
    order deny,allow
    deny from all
directory>
将deny改成allow即可。
3.静动分离配置
在d:\www目录将你的部署所需的静态文件放到这个目录下,要建一个和tomcat/webapps目录下部署的工程的同名文件夹
,如下图:




在httpd.conf里的最后面加上:
loadmodule jk_module modules/mod_jk.so
jkworkersfile conf/workers.properties
jklogfile logs/mod_jk.log
<virtualhost *>
serveradmin localhost
documentroot d:/www/
servername localhost
directoryindex index.html index.htm index.jsp index.action login.jsp
errorlog logs/shsc-error_log.txt
customlog logs/shsc-access_log.txt common
jkmount /*web-inf ajp13
jkmount /*j_spring_security_check ajp13
jkmount /*.action ajp13
jkmount /servlet/* ajp13
jkmount /*.jsp ajp13
jkmount /*.do ajp13
virtualhost> 
这里配置了哪些是需要tomcat来处理的,比如说*.do   。
连接时的配置参数描述位于apache安装目录的/conf目录下的一个叫workers.properties文件中,mod_jk一般使用ajp13协议连接,使用的是tomcat的8009端口 。
workers.properties文件内容如下:
workers.tomcat_home=d:/program files/apache software foundation/tomcat 6.0
workers.java_home=d:/program files/java/jdk1.6.0_25
ps=/
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13

重启tomcat和apache,就可以通过http://localhost/composite 来访问凯发k8网页登录主页了。 

 

 



々上善若水々 2012-11-05 14:24 发表评论
]]>
myeclipse将普通java项目转换成maven项目http://www.blogjava.net/supercrsky/articles/387494.html々上善若水々々上善若水々tue, 11 sep 2012 10:37:00 gmthttp://www.blogjava.net/supercrsky/articles/387494.htmlhttp://www.blogjava.net/supercrsky/comments/387494.htmlhttp://www.blogjava.net/supercrsky/articles/387494.html#feedback1http://www.blogjava.net/supercrsky/comments/commentrss/387494.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/387494.html
激活maven后,显示如下:

点击完成就后就将普通的java project转换成maven project了。
这里我们要手动创建src/main/java,src/test/java 目录。


到这一步,剩下的操作就和上一回说到的操作一样了。我们先添加junit依赖,再写一个测试类
就可以进行maven test了。



々上善若水々 2012-09-11 18:37 发表评论
]]>
使用myeclipse构建maven项目http://www.blogjava.net/supercrsky/articles/387462.html々上善若水々々上善若水々tue, 11 sep 2012 06:25:00 gmthttp://www.blogjava.net/supercrsky/articles/387462.htmlhttp://www.blogjava.net/supercrsky/comments/387462.htmlhttp://www.blogjava.net/supercrsky/articles/387462.html#feedback9http://www.blogjava.net/supercrsky/comments/commentrss/387462.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/387462.html maven最好配置成你自己安装的那个,myeclipse自带会有些许bug。


用nexus代理maven的中央仓库,setting.xml的配置文件修改内容如下:
<mirrors>
     <mirror>
          <id>nexusid>
          <mirrorof>*mirrorof>
          <name>nexus mirrorname>
          <url>http://localhost:8081/nexus/content/groups/publicurl>
     mirror>
  mirrors>
  
  <profiles>
     <profile>
      <id>nexusid>
      <repositories>
        <repository>
          <id>centralid>
          <url>http://centralurl>
          <releases><enabled>trueenabled>releases>
          <snapshots><enabled>trueenabled>snapshots>
        repository>
      repositories>
     <pluginrepositories>
        <pluginrepository>
          <id>centralid>
          <url>http://centralurl>
          <releases><enabled>trueenabled>releases>
          <snapshots><enabled>trueenabled>snapshots>
        pluginrepository>
      pluginrepositories>
    profile>
  profiles>
  <activeprofiles>
    <activeprofile>nexusactiveprofile>
  activeprofiles>
http://localhost:8081/nexus/content/groups/public 是仓库组的地址。
打下myeclipse新建工程的界面,选择maven下的maven project,打开如下图的向导:

这里我们要选中create a simple project。
点击下一步,填写gav相关内容。

点击完成后,我们就已经成功创建了一个maven project了。
工程的默认目录结构如下:


所有的java源文件都要写在src/main/java目录下,所有的测试类都要写在src/test/java下面,这是maven的默认值。
此时,pom.xml里只有默认的属性
<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelversion>4.0.0modelversion>
  <groupid>com.testgroupid>
  <artifactid>testartifactid>
  <version>0.0.1-snapshotversion>
project>
这是最精简的pom.xml了。
这时我们加入junit的支持,新建一个测试类。
在项目上右键maven-add dependency,显示如下界面:

输入junit加入测试支持类库。
在src/test/java下新建一个测试类如下:
package com;
import org.junit.test;
public class testrun
{
@test
public void testa()
{
system.out.println("test a method ");
}
@test
public void testb()
{
system.out.println("test b method ");
}
}
右键run as ----- maven test,进行测试,显示结果如下:



[info] scanning for projects
[info]                                                                         
[info] ------------------------------------------------------------------------
[info] building test 0.0.1-snapshot
[info] ------------------------------------------------------------------------
[info] 
[info] --- maven-resources-plugin:2.5:resources (default-resources) @ test ---
[debug] execute contextualize
[warning] using platform encoding (gbk actually) to copy filtered resources, i.e. build is platform dependent!
[info] copying 0 resource
[info] 
[info] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ test ---
[info] nothing to compile - all classes are up to date
[info] 
[info] --- maven-resources-plugin:2.5:testresources (default-testresources) @ test ---
[debug] execute contextualize
[warning] using platform encoding (gbk actually) to copy filtered resources, i.e. build is platform dependent!
[info] copying 0 resource
[info] 
[info] --- maven-compiler-plugin:2.3.2:testcompile (default-testcompile) @ test ---
[info] nothing to compile - all classes are up to date
[info] 
[info] --- maven-surefire-plugin:2.10:test (default-test) @ test ---
[info] surefire report directory: d:\workspace\test\target\surefire-reports

-------------------------------------------------------
 t e s t s
-------------------------------------------------------
running com.testrun
test a method 
test b method 
tests run: 2, failures: 0, errors: 0, skipped: 0, time elapsed: 0.071 sec

results :

tests run: 2, failures: 0, errors: 0, skipped: 0

[info] ------------------------------------------------------------------------
[info] build success
[info] ------------------------------------------------------------------------
[info] total time: 1.847s
[info] finished at: tue sep 11 14:20:59 cst 2012
[info] final memory: 3m/6m
[info] ------------------------------------------------------------------------
ok,一个基本的maven项目已经构建完成。我们还可以将现存的java项目利用myclipse方便的转换成maven project,此部分内容我们在下一节里讨论。

々上善若水々 2012-09-11 14:25 发表评论
]]>
sql server 无法生成 fruncm 线程。请查看 sql server 错误日志和 windows 事件日志http://www.blogjava.net/supercrsky/articles/384283.html々上善若水々々上善若水々mon, 30 jul 2012 01:37:00 gmthttp://www.blogjava.net/supercrsky/articles/384283.htmlhttp://www.blogjava.net/supercrsky/comments/384283.htmlhttp://www.blogjava.net/supercrsky/articles/384283.html#feedback1http://www.blogjava.net/supercrsky/comments/commentrss/384283.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/384283.html前言:
今天遇到这个sql服务无法启用 。无法登陆 的情况。。在google 百度 搜了一下。发现很多网站都是采集来的数据。。(很奇怪这些采集站都那么靠前!)
照着文章里边的方法去试试都不行,,,后来终于找到一个。。记录再下 。 原文转自 :http://www.networkquestions.org/?p=389 ,感谢一下原作者的辛苦。
本地计算机上的mssqlserver服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报”服务。
打开日志查看器开始看日志:
sql server 无法生成 fruncm 线程。请查看 sql server 错误日志和 windows 事件日志,获取有关可能发生的相关问题的信息。
由于网络库中存在内部错误,所以无法启动网络库。要确定原因,请查看错误日志中紧位于此错误之前的那些错误。
tdssniclient 初始化失败,出现错误 0x7e,状态代码 0×1。
接着查看sql日志 (mssql.1mssqllog)
可以判定,可能是以下几个问题:
1、ip地址配置不正确:
打开 microsoft sql server 2005配置工具下的sql server configuration manager,选择mssqlserver协议, 然后双击右边窗口的tcp/ip,在弹出窗口中检查ip配置。
2、可能是因为via协议启用造成的。解决方法如下:
另外,管理员密码修改也会造成sqlserver服务无法启动。解决方法如下:
打开 microsoft sql server 2005配置工具下的sql server configuration manager,在mssqlserver服务属性中,修改以哪个账号来启动服务。
我机器启动不了服务的原因就是启用了 “via”服务,禁用后,ok了。


々上善若水々 2012-07-30 09:37 发表评论
]]>
spring mongodb 之简单crudhttp://www.blogjava.net/supercrsky/articles/382858.html々上善若水々々上善若水々thu, 12 jul 2012 02:42:00 gmthttp://www.blogjava.net/supercrsky/articles/382858.htmlhttp://www.blogjava.net/supercrsky/comments/382858.htmlhttp://www.blogjava.net/supercrsky/articles/382858.html#feedback0http://www.blogjava.net/supercrsky/comments/commentrss/382858.htmlhttp://www.blogjava.net/supercrsky/services/trackbacks/382858.htmlhttp://www.mkyong.com/mongodb/  
用myeclipse添加maven-project工程,在这之前你可能需要配置你的m2eclipse
1.将maven配置成你自己安装的版本。


2.设置user settings
当然也可以修改仓库默认目录,打maven安装目录conf/setting.xml
节点里
添加:d:/myrepository即可


pom.xml

<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelversion>4.0.0modelversion>
  <groupid>com.testgroupid>
  <artifactid>mongodbartifactid>
  <version>0.0.1-snapshotversion>
  <name>springmongodbname>
  <description>this is test casedescription>
  <build>
    <plugins>
      <plugin>
        <artifactid>maven-compiler-pluginartifactid>
        <configuration>
          <source>1.6source>
          <target>1.6target>
        configuration>
      plugin>
    plugins>
  build>
  
  <repositories>
        <repository>
            <id>spring-milestoneid>
            <name>spring maven milestone repositoryname>
            <url>http://maven.springframework.org/milestoneurl>
        repository>
    repositories>
 
    <dependencies>
        <dependency>
            <groupid>junitgroupid>
            <artifactid>junitartifactid>
            <version>4.8.2version>
            <scope>testscope>
        dependency>
 
        
        <dependency>
            <groupid>org.springframeworkgroupid>
            <artifactid>spring-coreartifactid>
            <version>3.0.5.releaseversion>
        dependency>
 
        <dependency>
            <groupid>org.springframeworkgroupid>
            <artifactid>spring-contextartifactid>
            <version>3.0.5.releaseversion>
        dependency>
 
        
        <dependency>
            <groupid>org.mongodbgroupid>
            <artifactid>mongo-java-driverartifactid>
            <version>2.5.2version>
        dependency>
 
        <dependency>
            <groupid>org.springframework.datagroupid>
            <artifactid>spring-data-mongodbartifactid>
            <version>1.0.0.m2version>
        dependency>
 
        <dependency>
            <groupid>cglibgroupid>
            <artifactid>cglibartifactid>
            <version>2.2version>
        dependency>
 
    dependencies>
    
project>
写完pom.xml后,执行 项目-右键-run-maven install 
下载完jar包,test 成功后,就可以写代码了。
springmongoconfig.java
package com.config;

import org.springframework.context.annotation.bean;
import org.springframework.data.document.mongodb.mongotemplate;
import org.springframework.data.document.mongodb.config.abstractmongoconfiguration;

import com.mongodb.mongo;

public class springmongoconfig extends abstractmongoconfiguration
{
    //主机
    @override
    public mongo mongo() throws exception {
        return new mongo("localhost");
    }
    //数据库
    @override
    public @bean mongotemplate mongotemplate() throws exception {
        return new mongotemplate(mongo(), "test");
    }

}
实体类:
package entity;

import java.util.list;

public class user
{

    private string id;
    private string username;
    private string password;
    //文档中的集合
    private list position;

    // 要有声明默认的构造方法,不然查询的时候会报错(无法实例化)
    public user()
    {

    }

    public string getid()
    {
        return id;
    }

    public void setid(string id)
    {
        this.id = id;
    }

    public string getusername()
    {
        return username;
    }

    public void setusername(string username)
    {
        this.username = username;
    }

    public string getpassword()
    {
        return password;
    }

    public void setpassword(string password)
    {
        this.password = password;
    }

    public list getposition()
    {
        return position;
    }

    public void setposition(list position)
    {
        this.position = position;
    }

    public user(string id, string username, string password,
            list position)
    {
        super();
        this.id = id;
        this.username = username;
        this.password = password;
        this.position = position;
    }

    public user(string username, string password, list position)
    {
        super();
        this.username = username;
        this.password = password;
        this.position = position;
    }

}
测试类:
package run;

import java.util.arraylist;
import java.util.iterator;
import java.util.list;
import java.util.set;

import org.junit.test;
import org.springframework.context.applicationcontext;
import org.springframework.context.annotation.annotationconfigapplicationcontext;
import org.springframework.data.document.mongodb.mongooperations;
import org.springframework.data.document.mongodb.query.criteria;
import org.springframework.data.document.mongodb.query.query;
import org.springframework.data.document.mongodb.query.update;

import com.config.springmongoconfig;

import entity.user;

public class app
{
    private applicationcontext ctx = new annotationconfigapplicationcontext(
            springmongoconfig.class);
    private mongooperations mongooperations = (mongooperations) ctx
            .getbean("mongotemplate");

    @test
    public void testsave()
    {
        list list = new arraylist();
        for(int i =0; i < 100; i  )
        {
            list.add("开发"   i);
            list.add("经理"   i);
            user user = new user("john"   i,"123"   i,list);
            //第一个参数:要保存的表名,默认为实例名user同名的集合(表)
            
//如果表不存在会自动创建, 表名user为关键字不要使用
            mongooperations.save("userinfo", user);
            list.clear();
        }
    }

    @test
    public void testupdate()
    {
        mongooperations.updatefirst("userinfo",
                new query(criteria.where("username").is("john0")),
                update.update("password", "newpassword"));
    }

    @test
    public void testdelete()
    {
        mongooperations.remove("userinfo",new query(criteria.where("id").is("4ffe3486b41f8ed41269a729")),user.class);
    }

    @test
    public void testquery()
    {
        //输出所有表名
        set set = mongooperations.getcollectionnames();
        iterator it =  set.iterator();
        while(it.hasnext())
        {
            system.out.println(it.next());
        }
        //user:要查询的表名
        list users = mongooperations.getcollection("userinfo", user.class);
        system.out.println(users.size());
        for(user u : users)
        {
            system.out.println(u.getid());
        }
    }

}



]]>
网站地图