# project-neo4j
## 一、功能介绍:
1. 连接mysql、neo4j,实现将mysql数据插入neo4j中!
2. 对neo4j数据进行增删改查,统计分析、关系遍历等功能 !
## 二、JAR说明:
* springboot【1.5.9】
* pring-boot-starter-data-neo4j【4.2.9】
* mybatis-spring-boot-starter【1.3.1】
* mapper-spring-boot-starter【1.1.4】
* pagehelper-spring-boot-starter【1.2.1】
* druid-spring-boot-starter【1.1.0】
* fastjson【1.2.12】
* com.google.guava【19.0】
## 三、部署说明
1. 下载neo4j安装程序
http://download.csdn.net/download/npf_java/10197711
2. 创建mysql数据库
a)运行opensearch.sql脚本创建数据库
b)通过navicat工具初始化数据,还原180118183225.psc文件
2. 将mysql数据导入neo4j中
执行junit测试类KeyWordTest中的addKeyWordNode、addNewsNode方法
## 四、更新说明
### 2018-01-24(统计)
### 2018-01-23(D3.js实现页面效果展示)
建议使用D3.js作为前端展示效果 (Neo4j内置的页面展示使用的是D3.js库)
```
【D3.js官网】
https://d3js.org/
【D3.js中文实例、API】
https://github.com/d3/d3/wiki/CN-Home
【D3.js[2.5.0] 学习网站】
http://www.ourd3js.com/wordpress/category/data-driven-documents/
【D3.js[4.12.2] 力导向图的制作】
https://github.com/d3/d3-force
https://bl.ocks.org/mbostock/9a8124ccde3a4e9625bc413b48f14b30
【springBoot thymeleaf模板】
http://jisonami.iteye.com/blog/2301387
Maven的资源文件目录:/src/java/resources
spring-boot项目静态文件目录:/src/java/resources/static
spring-boot项目模板文件目录:/src/java/resources/templates
spring-boot静态首页的支持,即index.html放在以下目录结构会直接映射到应用的根目录下:
classpath:/META-INF/resources/index.html
classpath:/resources/index.html
classpath:/static/index.html
calsspath:/public/index.html
```
### 2018-01-18(框架初步完成,初始化提交)
1. 初始化提交项目相关代码
2. 通过KeyWordTest类可以将mysql数据库中的keyword和news数据导入neo4j中
```
/**
* 包名:com.dbs.test.mysql
* 功能:TODO 对关键字进行提取
* 作者:hualn
* 日期:2018年1月18日 下午4:25:02
*/
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = Neo4jApplication.class)
public class KeyWordTest {
private Logger logger = LoggerFactory.getLogger(getClass());
/**
* 关键字操作类
*/
@Autowired
private KeyWordRepository keyWordRepository;
/**
* 新闻操作类
*/
@Autowired
private NewsRepository newsRepository;
/**
* mysql--JDBC连接
*/
@Autowired
private JdbcTemplate jdbcTemplate;
/**
* 将keyWord关键字全部抽取到neo4j中
*/
@Test
public void addKeyWordNode(){
String keySql = "select t.AIRCRAFT from news_keyword t group by t.AIRCRAFT ";
List<Map<String, Object>> keyList = jdbcTemplate.queryForList(keySql);
for (Map<String, Object> obj : keyList) {
String keyword = obj.get("AIRCRAFT").toString();
if(StringUtils.isNotBlank(keyword)){
keyWordRepository.save(new KeyWord(keyword));
}
}
logger.info("******************共导入关键字("+keyList.size()+")个***********************");
}
/**
* 将新闻节点全部抽取到neo4j中
*/
@Test
public void addNewsNode(){
String newsSql = "select n.TITLE,max(t.AIRCRAFT) keyword from news_keyword t
left join datasource_new n on t.NEWID = n.ID GROUP BY n.TITLE ";
List<Map<String, Object>> newsList = jdbcTemplate.queryForList(newsSql);
//新闻类
News news= null;
//关键字
KeyWord keyWord = null;
for (Map<String, Object> obj : newsList) {
String title = obj.get("TITLE").toString();
String keyword = obj.get("KEYWORD").toString();
news = new News(title);
keyWord = keyWordRepository.findByName(keyword);
news.setKeywords(Lists.newArrayList(keyWord));
newsRepository.save(news);
}
}
}
```
### 2018-01-15------>2018-01-17(框架搭建中)
1. 学习Neo4j推荐书籍
```
《Neo4j权威指南 图数据库 大数据时代的新利器》
```
2. 参考网站
```
【官网】
https://neo4j.com/
【Neo4j 图数据库在社交网络等领域的应用】 **(重点看)**
http://gitbook.cn/books/5a33782c5778440a9d906017/index.html
```
3. 实例学习
```
【中文学习教程】https://www.w3cschool.cn/neo4j/
【英文学习教程】https://neo4j.com/graphgists/?category=sports-and-recreation
```
4. 安装
```
Neo4j 下载地址:https://neo4j.com/download/other-releases/
【Neo4j 第一篇:在Windows环境中安装Neo4j】
https://www.cnblogs.com/ljhdo/archive/2017/05/19/5521577.html
```
5. 效果展示
```
搜狗人物搜索 https://www.sogou.com/tupu/person.html?q=姚明
搜索引擎和知识图谱那些事 http://blog.csdn.net/eastmount/article/details/46874155
```
6. Java操作neo4j
```
http://bboyjing.github.io/2016/07/15/Neo4j学习笔记九【Spring-Data-Neo4j】/
https://github.com/bboyjing/neo4j_sample
【springboot和neo4j的集成】
https://www.jianshu.com/p/33d50fac06b4
【官网API】
https://docs.spring.io/spring-data/neo4j/docs/4.2.9.RELEASE/reference/html/
https://docs.spring.io/spring-data/neo4j/docs/4.2.9.RELEASE/api/
【github相关demo】
https://github.com/neo4j-examples/
https://github.com/neo4j-examples/movies-java-spring-data-neo4j
https://github.com/neo4j-examples/neo4j-sdn-ogm-issue-report-template
```
## 五、效果展示
![输入图片说明](https://gitee.com/uploads/images/2018/0118/223734_ee158c71_17781.png "graph (3).png")
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
springboot+neo4j(完整demo,下载可用) (175个子文件)
.classpath 1KB
layui.css 58KB
layer.css 14KB
layui.mobile.css 10KB
laydate.css 7KB
code.css 1KB
iconfont.eot 38KB
jsp-datagrid.ftl 9KB
templet-serviceImpl.ftl 2KB
templet-serviceImpl.ftl 2KB
templet-controller.ftl 781B
templet-controller.ftl 776B
templet-service.ftl 370B
templet-service.ftl 361B
59.gif 10KB
22.gif 10KB
24.gif 8KB
13.gif 7KB
16.gif 7KB
39.gif 6KB
64.gif 6KB
63.gif 6KB
50.gif 6KB
loading-0.gif 6KB
4.gif 6KB
1.gif 5KB
42.gif 5KB
71.gif 5KB
21.gif 5KB
20.gif 5KB
29.gif 5KB
70.gif 4KB
5.gif 4KB
17.gif 4KB
27.gif 4KB
9.gif 4KB
44.gif 4KB
11.gif 4KB
8.gif 4KB
3.gif 4KB
23.gif 4KB
34.gif 4KB
41.gif 4KB
38.gif 4KB
65.gif 3KB
32.gif 3KB
45.gif 3KB
7.gif 3KB
12.gif 3KB
26.gif 3KB
60.gif 3KB
2.gif 3KB
40.gif 3KB
25.gif 3KB
19.gif 3KB
66.gif 3KB
18.gif 3KB
46.gif 3KB
10.gif 3KB
28.gif 3KB
51.gif 3KB
57.gif 3KB
67.gif 3KB
48.gif 3KB
0.gif 3KB
43.gif 3KB
30.gif 2KB
61.gif 2KB
33.gif 2KB
69.gif 2KB
14.gif 2KB
47.gif 2KB
36.gif 2KB
49.gif 2KB
58.gif 2KB
6.gif 2KB
54.gif 2KB
53.gif 2KB
56.gif 2KB
62.gif 2KB
31.gif 2KB
55.gif 2KB
35.gif 2KB
15.gif 2KB
loading-2.gif 2KB
37.gif 1KB
68.gif 1KB
52.gif 777B
loading-1.gif 701B
.gitignore 9B
index.html 1KB
d3-2.5.0.html 900B
BaseServiceImpl.java 8KB
BaseController.java 7KB
DatasourceNew.java 5KB
DatasourceChaoben.java 5KB
DatasourceBaidu.java 5KB
MysqlDataSourceConfig.java 5KB
SqlPrintInterceptor.java 4KB
DatasourceNewServiceImpl.java 3KB
共 175 条
- 1
- 2
k0933
- 粉丝: 85
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页