SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化

方案一:SpringBoot配置多数据源

配置Mysql多数据库

具体可以参考:https://www.w3cschool.cn/article/50807439.html

配置Mysql数据库与Neo4j数据库

参考:https://gitee.com/baomidou/dynamic-datasource-spring-boot-starter
具体如下:

1.引入dynamic-datasource-spring-boot-starter。

<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
  <version>3.5.1</version>
</dependency>

2.配置数据源。

spring:
  datasource:
    dynamic:
      primary: master #设置默认的数据源或者数据源组,默认值即为master
      strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
      datasource:
        master:
          url: jdbc:mysql://xx.xx.xx.xx:3306/dynamic
          username: root
          password: 123456
          driver-class-name: com.mysql.jdbc.Driver # 3.2.0开始支持SPI可省略此配置
        slave_1:
          url: jdbc:neo4j:bolt://192.168.88.1:7687
          username: neo4j
          password: 123
          driver-class-name: org.neo4j.jdbc.bolt.BoltDriver
        slave_2:
          url: ENC(xxxxx) # 内置加密,使用请查看详细文档
          username: ENC(xxxxx)
          password: ENC(xxxxx)
          driver-class-name: com.mysql.jdbc.Driver
          
       #......省略
       #以上会配置一个默认库master,一个组slave下有两个子库slave_1,slave_2

3.使用 @DS 切换数据源。
@DS 可以注解在方法上或类上,同时存在就近原则 方法上注解 优先于 类上注解。

注解 结果
没有@DS 默认数据源
@DS(“dsName”) dsName可以为组名也可以为具体某个库的名称
@Service
@DS("slave")
public class UserServiceImpl implements UserService {

  @Autowired
  private JdbcTemplate jdbcTemplate;

  public List selectAll() {
    return  jdbcTemplate.queryForList("select * from user");
  }
  
  @Override
  @DS("slave_1")
  public List selectByCondition() {
    return  jdbcTemplate.queryForList("select * from user where age >10");
  }
}

方案二:采用python作为neo4j数据源

思路:通过python获取neo4j数据库数据,将数据写入json文件供SpringBoot访问使用

1、Neo4j数据库数据获取

CyPher语句如下:

MATCH p=(m:Disease)-[r]->(n) return  id(m) as start,labels(m) as mcats,collect(m.name)  as m_name,collect(n.name) as n_name,id(n) as end,labels(n) as ncats,r.name as link limit 20

名称释义:

MATCH p=(m:Disease)-[r]->(n)
提取所有Disease的节点实体有关的关系,节点数据传入p
return id(m) as start
返回m:Disease类型节点的id值,同时赋值别名为start
collect(m.name) as m_name
由于m节点的name属性是多个字符组成的字符串,所以返回时要进行collect组合操作,避免在遍历时赋值不全。
r.name as link
将关系r的name属性赋别名作为link

2、寻找Echarts中关系图Html模板

这里我选择的是:SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化_第1张图片

链接:知识图谱关系图
SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化_第2张图片
分析数据结构后,设计的json结构如下

[
	data:{
		node1.name,
		node1.tooltip,
		node1.category
	}{
		node2.name,
		node2.tooltip,
		node2.category
	}
],
[
	link:{
		source:
		target:
		value:
	},
	{
		source:
		target:
		value:
	}
]

3、python将查询cypher语句获得的数据写入json文件

具体参考:

https://blog.csdn.net/luanpeng825485697/article/details/93630060?ops_request_misc=&request_id=&biz_id=102&utm_term=neo4j%E6%9F%A5%E8%AF%A2%E6%9F%90%E4%B8%AA%E5%B1%9E%E6%80%A7cypher&utm_medium=distribute.pc_search_result.none-task-blog-2blogsobaiduweb~default-8-93630060.nonecase&spm=1018.2226.3001.4450

此处以Neo4j中默认的Movie-Actor数据库为例子说明,用bottle库运行

from py2neo import Graph, Node, Relationship, NodeMatcher

# 连接图库                            初始化账号密码都是neo4j
# graph = Graph('http://localhost:7474', auth=('neo4j', '123'))

# { category: '积极', name: 'cool_polaris', value: 2, symbolSize: 10 }
# { source: '我买不到口罩', target: '野萌君的好朋友', value: 1 },
# 提取实体名称catagory,提取名字name,提取 source-target

import json

from bottle import get, run, request, response, static_file
from py2neo import Graph


#password = {Your neo4j password}
graph = Graph(password = "123")


@get("/")
def get_index():
    return static_file("index.html", root="static")


@get("/graph")
def get_graph():
    results = graph.run(
        "MATCH (m:Movie)<-[:ACTED_IN]-(a:Person) "
        "RETURN m.title as movie, collect(a.name) as cast "
        "LIMIT {limit}", {"limit": 100})
    nodes = []
    rels = []
    i = 0
    print(results)
    for movie, cast in results:
        nodes.append({"title": movie, "label": "movie"})
        target = i
        i += 1
        for name in cast:
            actor = {"name": name, "label": "actor"}
            try:
                source = nodes.index(actor)
            except ValueError:
                nodes.append(actor)
                source = i
                i += 1
            rels.append({"source": source, "target": target,"value":'ACTED_IN'})
    return {"nodes": nodes, "links": rels}


@get("/search")
def get_search():
    try:
        q = request.query["q"]
    except KeyError:
        return []
    else:
        results = graph.run(
            "MATCH (movie:Movie) "
            "WHERE movie.title =~ {title} "
            "RETURN movie", {"title": "(?i).*" + q + ".*"})
        response.content_type = "application/json"
        return json.dumps([{"movie": dict(row["movie"])} for row in results])


@get("/movie/"</span><span class="token punctuation">)</span>
<span class="token keyword">def</span> <span class="token function">get_movie</span><span class="token punctuation">(</span>title<span class="token punctuation">)</span><span class="token punctuation">:</span>
    results <span class="token operator">=</span> graph<span class="token punctuation">.</span>run<span class="token punctuation">(</span>
        <span class="token string">"MATCH (movie:Movie {title:{title}}) "</span>
        <span class="token string">"OPTIONAL MATCH (movie)<-[r]-(person:Person) "</span>
        <span class="token string">"RETURN movie.title as title,"</span>
        <span class="token string">"collect([person.name, head(split(lower(type(r)),'_')), r.roles]) as cast "</span>
        <span class="token string">"LIMIT 1"</span><span class="token punctuation">,</span> <span class="token punctuation">{</span><span class="token string">"title"</span><span class="token punctuation">:</span> title<span class="token punctuation">}</span><span class="token punctuation">)</span>
    row <span class="token operator">=</span> results<span class="token punctuation">.</span><span class="token builtin">next</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
    <span class="token keyword">return</span> <span class="token punctuation">{</span><span class="token string">"title"</span><span class="token punctuation">:</span> row<span class="token punctuation">[</span><span class="token string">"title"</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
            <span class="token string">"cast"</span><span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token builtin">dict</span><span class="token punctuation">(</span><span class="token builtin">zip</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token string">"name"</span><span class="token punctuation">,</span> <span class="token string">"job"</span><span class="token punctuation">,</span> <span class="token string">"role"</span><span class="token punctuation">)</span><span class="token punctuation">,</span> member<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token keyword">for</span> member <span class="token keyword">in</span> row<span class="token punctuation">[</span><span class="token string">"cast"</span><span class="token punctuation">]</span><span class="token punctuation">]</span><span class="token punctuation">}</span>


<span class="token keyword">if</span> __name__ <span class="token operator">==</span> <span class="token string">"__main__"</span><span class="token punctuation">:</span>
    run<span class="token punctuation">(</span>port<span class="token operator">=</span><span class="token number">8095</span><span class="token punctuation">)</span>

</code></pre> 
  <p>之后运行http://127.0.0.1:8095/graph即可获得Neo4j查询到的数据,接着将数据写入json文件。</p> 
  <pre><code class="prism language-python">    <span class="token keyword">with</span> <span class="token builtin">open</span><span class="token punctuation">(</span><span class="token string">r"D:\你的Springboot项目文件\python\neoData1.json"</span><span class="token punctuation">,</span> <span class="token string">"w"</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span><span class="token string">'utf-8'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> f2<span class="token punctuation">:</span>
        <span class="token comment">#jsontext是neo4j返回的数据</span>
        js <span class="token operator">=</span> json<span class="token punctuation">.</span>dumps<span class="token punctuation">(</span>jsontext<span class="token punctuation">)</span>
        f2<span class="token punctuation">.</span>write<span class="token punctuation">(</span>js<span class="token punctuation">)</span>
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/0df39eb020f64164958749786442af9a.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/0df39eb020f64164958749786442af9a.jpg" alt="SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化_第3张图片" width="650" height="274" style="border:1px solid black;"></a><br> <a href="http://img.e-com-net.com/image/info8/e6efc6522f8b447695b7029d84e400d6.png" target="_blank"><img src="http://img.e-com-net.com/image/info8/e6efc6522f8b447695b7029d84e400d6.png" alt="SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化_第4张图片" width="261" height="126" style="border:1px solid black;"></a></p> 
  <h3><strong>4、SpringBoot+Thmyleaf运行</strong></h3> 
  <pre><code class="prism language-java"><span class="token keyword">import</span> <span class="token namespace">org<span class="token punctuation">.</span>springframework<span class="token punctuation">.</span>context<span class="token punctuation">.</span>annotation<span class="token punctuation">.</span></span><span class="token class-name">Configuration</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token namespace">org<span class="token punctuation">.</span>springframework<span class="token punctuation">.</span>web<span class="token punctuation">.</span>servlet<span class="token punctuation">.</span>config<span class="token punctuation">.</span>annotation<span class="token punctuation">.</span></span><span class="token class-name">ResourceHandlerRegistry</span><span class="token punctuation">;</span>
<span class="token keyword">import</span> <span class="token namespace">org<span class="token punctuation">.</span>springframework<span class="token punctuation">.</span>web<span class="token punctuation">.</span>servlet<span class="token punctuation">.</span>config<span class="token punctuation">.</span>annotation<span class="token punctuation">.</span></span><span class="token class-name">WebMvcConfigurer</span><span class="token punctuation">;</span>

<span class="token annotation punctuation">@Configuration</span>
<span class="token keyword">public</span> <span class="token keyword">class</span> <span class="token class-name">WebMvcConfig</span> <span class="token keyword">implements</span> <span class="token class-name">WebMvcConfigurer</span> <span class="token punctuation">{</span>
    <span class="token annotation punctuation">@Override</span>
    <span class="token keyword">public</span> <span class="token keyword">void</span> <span class="token function">addResourceHandlers</span><span class="token punctuation">(</span><span class="token class-name">ResourceHandlerRegistry</span> registry<span class="token punctuation">)</span> <span class="token punctuation">{</span>
        <span class="token comment">// 将所有D:\\springboot\\pic\\   访问都  映射到 /myPic/**   路径下</span>
        registry<span class="token punctuation">.</span><span class="token function">addResourceHandler</span><span class="token punctuation">(</span><span class="token string">"/python/**"</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">addResourceLocations</span><span class="token punctuation">(</span><span class="token string">"file:D:\\你的Springboot项目文件\\python\\"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</code></pre> 
  <p>前端html文件:</p> 
  <pre><code class="prism language-html"><span class="token doctype"><span class="token punctuation"><!</span><span class="token doctype-tag">DOCTYPE</span> <span class="token name">html</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span> <span class="token style-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token style language-css"><span class="token property">height</span><span class="token punctuation">:</span> 100%</span><span class="token punctuation">"</span></span></span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>head</span><span class="token punctuation">></span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>meta</span> <span class="token attr-name">charset</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>utf-8<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>head</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span> <span class="token style-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token style language-css"><span class="token property">height</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span> <span class="token property">margin</span><span class="token punctuation">:</span> 0</span><span class="token punctuation">"</span></span></span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>div</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>chart-panel<span class="token punctuation">"</span></span> <span class="token style-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token style language-css"><span class="token property">height</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span><span class="token property">width</span><span class="token punctuation">:</span> 100%</span><span class="token punctuation">"</span></span></span><span class="token punctuation">></span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>div</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>text/javascript<span class="token punctuation">"</span></span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://cdn.jsdelivr.net/npm/echarts@5.3.0/dist/echarts.min.js<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>text/javascript<span class="token punctuation">"</span></span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span>

<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>text/javascript<span class="token punctuation">"</span></span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript">
    <span class="token keyword">var</span> dom <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">"chart-panel"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">var</span> myChart <span class="token operator">=</span> echarts<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span>dom<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">var</span> option<span class="token punctuation">;</span>
    <span class="token keyword">var</span> app <span class="token operator">=</span><span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">var</span> uploadedDataURL <span class="token operator">=</span> <span class="token string">'python/neoData1.json'</span><span class="token punctuation">;</span>


    <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span><span class="token keyword">var</span> jsondata<span class="token operator">=</span><span class="token operator">--</span><span class="token operator">></span>



    $<span class="token punctuation">.</span><span class="token function">getJSON</span><span class="token punctuation">(</span>uploadedDataURL<span class="token punctuation">,</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">linedata</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
        <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>    <span class="token keyword">var</span> data <span class="token operator">=</span> linedata<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token operator">--</span><span class="token operator">></span>
        <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>    <span class="token keyword">var</span> links <span class="token operator">=</span> linedata<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token operator">--</span><span class="token operator">></span>
        <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>    <span class="token keyword">var</span> categories <span class="token operator">=</span> linedata<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token operator">--</span><span class="token operator">></span>
        <span class="token keyword">var</span> data <span class="token operator">=</span> linedata<span class="token punctuation">[</span><span class="token string">'data'</span><span class="token punctuation">]</span>
        <span class="token keyword">var</span> links<span class="token operator">=</span> linedata<span class="token punctuation">[</span><span class="token string">'links'</span><span class="token punctuation">]</span>



        option <span class="token operator">=</span> <span class="token punctuation">{</span>

            title<span class="token operator">:</span> <span class="token punctuation">{</span>
                text<span class="token operator">:</span> <span class="token string">'疾病知识库图谱'</span><span class="token punctuation">,</span>
                padding<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token number">20</span><span class="token punctuation">,</span><span class="token number">20</span><span class="token punctuation">,</span><span class="token number">100</span><span class="token punctuation">,</span><span class="token number">100</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
                top<span class="token operator">:</span> <span class="token string">'top'</span><span class="token punctuation">,</span>
                left<span class="token operator">:</span> <span class="token string">'center'</span>
            <span class="token punctuation">}</span><span class="token punctuation">,</span>
            tooltip<span class="token operator">:</span><span class="token punctuation">{</span>
                show<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// 默认显示</span>
                    showContent<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// 是否显示提示框浮层</span>
                    trigger<span class="token operator">:</span> <span class="token string">'item'</span><span class="token punctuation">,</span> <span class="token comment">// 触发类型,默认数据项触发</span>
                    triggerOn<span class="token operator">:</span> <span class="token string">'mousemove'</span><span class="token punctuation">,</span> <span class="token comment">// 提示触发条件,mousemove鼠标移至触发,还有click点击触发</span>
                    alwaysShowContent<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// 默认离开提示框区域隐藏,true为一直显示</span>
                    showDelay<span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token comment">// 浮层显示的延迟,单位为 ms,默认没有延迟,也不建议设置。在 triggerOn 为 'mousemove' 时有效。</span>
                    hideDelay<span class="token operator">:</span> <span class="token number">2000</span><span class="token punctuation">,</span> <span class="token comment">// 浮层隐藏的延迟,单位为 ms,在 alwaysShowContent 为 true 的时候无效。</span>
                    enterable<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// 鼠标是否可进入提示框浮层中,默认为false,如需详情内交互,如添加链接,按钮,可设置为 true。</span>
                    position<span class="token operator">:</span> <span class="token string">'right'</span><span class="token punctuation">,</span> <span class="token comment">// 提示框浮层的位置,默认不设置时位置会跟随鼠标的位置。只在 trigger 为'item'的时候有效。</span>
                    confine<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// 是否将 tooltip 框限制在图表的区域内。</span>
                    <span class="token comment">// 外层的 dom 被设置为 'overflow: hidden',或者移动端窄屏,导致 tooltip 超出外界被截断时,此配置比较有用。</span>
                    transitionDuration<span class="token operator">:</span> <span class="token number">0.2</span><span class="token punctuation">,</span> <span class="token comment">// 提示框浮层的移动动画过渡时间,单位是秒,设置为 0 的时候会紧跟着鼠标移动。</span>
            <span class="token punctuation">}</span><span class="token punctuation">,</span>

            toolbox<span class="token operator">:</span> <span class="token punctuation">{</span>
                show<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
                    feature<span class="token operator">:</span> <span class="token punctuation">{</span>
                    dataView<span class="token operator">:</span> <span class="token punctuation">{</span>
                        show<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
                            readOnly<span class="token operator">:</span> <span class="token boolean">true</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    restore<span class="token operator">:</span> <span class="token punctuation">{</span>
                        show<span class="token operator">:</span> <span class="token boolean">true</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    saveAsImage<span class="token operator">:</span> <span class="token punctuation">{</span>
                        show<span class="token operator">:</span> <span class="token boolean">true</span>
                    <span class="token punctuation">}</span>
                <span class="token punctuation">}</span>
            <span class="token punctuation">}</span><span class="token punctuation">,</span>
            animationDuration<span class="token operator">:</span> <span class="token number">1500</span><span class="token punctuation">,</span>
                animationEasingUpdate<span class="token operator">:</span> <span class="token string">'quinticInOut'</span><span class="token punctuation">,</span>
                legend<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token comment">// 图例显示(显示在右上角),name:类别名称,icon:图例的形状(默认是roundRect圆角矩形)。</span>
                orient<span class="token operator">:</span> <span class="token string">'vertical'</span><span class="token punctuation">,</span><span class="token comment">//'horizontal', // 'vertical'</span>
                    x<span class="token operator">:</span> <span class="token string">'left'</span><span class="token punctuation">,</span> <span class="token comment">// 'center' | 'left' | {number},</span>
                    y<span class="token operator">:</span> <span class="token string">'top'</span><span class="token punctuation">,</span> <span class="token comment">// 'center' | 'bottom' | {number}</span>
                    show<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
                    backgroundColor<span class="token operator">:</span> <span class="token string">'#fffefa'</span><span class="token punctuation">,</span>
                    padding<span class="token operator">:</span> <span class="token number">50</span><span class="token punctuation">,</span>    <span class="token comment">// [5, 10, 15, 20]</span>
                    itemGap<span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span>
                    textStyle<span class="token operator">:</span> <span class="token punctuation">{</span>color<span class="token operator">:</span> <span class="token string">'black'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>

                data<span class="token operator">:</span> <span class="token punctuation">[</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Disease'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Department'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Symptom'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Check'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Drug'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span><span class="token string">'Food'</span>
                    <span class="token punctuation">}</span>
                <span class="token punctuation">]</span>
            <span class="token punctuation">}</span><span class="token punctuation">,</span>
            series<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
                name<span class="token operator">:</span> <span class="token string">''</span><span class="token punctuation">,</span>
                type<span class="token operator">:</span> <span class="token string">'graph'</span><span class="token punctuation">,</span>
                layout<span class="token operator">:</span> <span class="token string">'force'</span><span class="token punctuation">,</span>
                draggable<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">//节点是否可以拖拽</span>
                force<span class="token operator">:</span> <span class="token punctuation">{</span>
                    <span class="token comment">//initLayout:'circular'</span>
                    <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                edgeLength<span class="token operator">:</span> <span class="token number">50</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                    <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                repulsion<span class="token operator">:</span> <span class="token number">50</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                    <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                gravity<span class="token operator">:</span> <span class="token number">0.2</span><span class="token operator">--</span><span class="token operator">></span>
                    <span class="token comment">// initLayout: , // 力引导的初始化布局,默认使用xy轴的标点</span>
                    repulsion<span class="token operator">:</span> <span class="token number">50</span><span class="token punctuation">,</span><span class="token comment">// 节点之间的斥力因子。支持数组表达斥力范围,值越大斥力越大。</span>
                    gravity<span class="token operator">:</span> <span class="token number">0.2</span><span class="token punctuation">,</span> <span class="token comment">// 节点受到的向中心的引力因子。该值越大节点越往中心点靠拢。</span>
                    layoutAnimation<span class="token operator">:</span> <span class="token boolean">true</span> <span class="token comment">// 因为力引导布局会在多次迭代后才会稳定,这个参数决定是否显示布局的迭代动画</span>
                    <span class="token comment">// 在浏览器端节点数据较多(>100)的时候不建议关闭,布局过程会造成浏览器假死。</span>
                <span class="token punctuation">}</span><span class="token punctuation">,</span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>            tooltip <span class="token operator">:</span> <span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                trigger<span class="token operator">:</span> <span class="token string">'item'</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                <span class="token function-variable function">formatter</span><span class="token operator">:</span><span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">params</span><span class="token punctuation">)</span><span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    <span class="token keyword">if</span><span class="token punctuation">(</span>params<span class="token punctuation">.</span>data<span class="token punctuation">.</span>flow<span class="token punctuation">)</span><span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                        <span class="token keyword">return</span> params<span class="token punctuation">.</span>data<span class="token punctuation">.</span>source <span class="token operator">+</span> <span class="token string">'到'</span> <span class="token operator">+</span> params<span class="token punctuation">.</span>data<span class="token punctuation">.</span>target <span class="token operator">+</span> <span class="token string">'的关系为'</span><span class="token operator">+</span> params<span class="token punctuation">.</span>data<span class="token punctuation">.</span>value<span class="token punctuation">;</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    <span class="token punctuation">}</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    <span class="token keyword">else</span><span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                        <span class="token keyword">return</span> params<span class="token punctuation">.</span>name<span class="token punctuation">;</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    <span class="token punctuation">}</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                <span class="token punctuation">}</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>            <span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                data<span class="token operator">:</span> data<span class="token punctuation">,</span>
                edges<span class="token operator">:</span> links<span class="token punctuation">,</span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>            categories<span class="token operator">:</span> categories<span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                focusNodeAdjacency<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
                roam<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>            label<span class="token operator">:</span> <span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                normal<span class="token operator">:</span> <span class="token punctuation">{</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    position<span class="token operator">:</span> <span class="token string">'right'</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                    formatter<span class="token operator">:</span> <span class="token string">'{b}'</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>                <span class="token punctuation">}</span><span class="token operator">--</span><span class="token operator">></span>
                <span class="token operator"><</span><span class="token operator">!</span><span class="token operator">--</span>            <span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token operator">--</span><span class="token operator">></span>
                lineStyle<span class="token operator">:</span> <span class="token punctuation">{</span>
                    normal<span class="token operator">:</span> <span class="token punctuation">{</span>
                        <span class="token comment">//color: 'target',</span>
                        curveness<span class="token operator">:</span> <span class="token number">0</span>
                    <span class="token punctuation">}</span>
                <span class="token punctuation">}</span><span class="token punctuation">,</span>
                categories<span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token comment">// name(类别名称)要同legend(图例)按次序一致</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Disease'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Department'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Symptom'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Check'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span> <span class="token string">'Drug'</span>
                    <span class="token punctuation">}</span><span class="token punctuation">,</span>
                    <span class="token punctuation">{</span>
                        name<span class="token operator">:</span><span class="token string">'Food'</span>
                    <span class="token punctuation">}</span>

                <span class="token punctuation">]</span>
            <span class="token punctuation">}</span><span class="token punctuation">]</span>
        <span class="token punctuation">}</span><span class="token punctuation">;</span>
        myChart<span class="token punctuation">.</span><span class="token function">setOption</span><span class="token punctuation">(</span>option<span class="token punctuation">)</span><span class="token punctuation">;</span>
        <span class="token keyword">if</span> <span class="token punctuation">(</span>option <span class="token operator">&&</span> <span class="token keyword">typeof</span> option <span class="token operator">===</span> <span class="token string">'object'</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
            <span class="token keyword">var</span> startTime <span class="token operator">=</span> <span class="token operator">+</span><span class="token keyword">new</span> <span class="token class-name">Date</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
            myChart<span class="token punctuation">.</span><span class="token function">setOption</span><span class="token punctuation">(</span>option<span class="token punctuation">,</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
            <span class="token keyword">var</span> endTime <span class="token operator">=</span> <span class="token operator">+</span><span class="token keyword">new</span> <span class="token class-name">Date</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
            <span class="token keyword">var</span> updateTime <span class="token operator">=</span> endTime <span class="token operator">-</span> startTime<span class="token punctuation">;</span>
            console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'Time used:'</span><span class="token punctuation">,</span> updateTime<span class="token punctuation">)</span><span class="token punctuation">;</span>
        <span class="token punctuation">}</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span>
        <span class="token keyword">if</span> <span class="token punctuation">(</span>option <span class="token operator">&&</span> <span class="token keyword">typeof</span> option <span class="token operator">===</span> <span class="token string">'object'</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
            myChart<span class="token punctuation">.</span><span class="token function">setOption</span><span class="token punctuation">(</span>option<span class="token punctuation">)</span><span class="token punctuation">;</span>
        <span class="token punctuation">}</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>body</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>html</span><span class="token punctuation">></span></span>
</code></pre> 
  <h3>最终结果</h3> 
  <p><a href="http://img.e-com-net.com/image/info8/fa4de512685a4002b1890b734ae2e6eb.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/fa4de512685a4002b1890b734ae2e6eb.jpg" alt="SpringBoot+Thymleaf+Python+Echarts+Neo4j实现知识图谱可视化_第5张图片" width="650" height="291" style="border:1px solid black;"></a><br> 完成了毕业设计的一小部分,记录一下,小有收获!</p> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1598570724845453312"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(python,spring,echarts,数据库,大数据)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1884460754724253696.htm"
                           title="华为OD机试 - 最长的顺子 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)" target="_blank">华为OD机试 - 最长的顺子 - 动态规划(Python/JS/C/C++ 2024 E卷 200分)</a>
                        <span class="text-muted">哪 吒</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%8D%8E%E4%B8%BAod/1.htm">华为od</a><a class="tag" taget="_blank" href="/search/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92/1.htm">动态规划</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a>
                        <div>华为OD机试2024E卷题库疯狂收录中,刷题点这里专栏导读本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。一、题目描述斗地主起源于湖北十堰房县,据说是一位叫吴修全的年轻人根据当地流行</div>
                    </li>
                    <li><a href="/article/1884459489952854016.htm"
                           title="Python 环境构建最佳实践:Mamba + Conda + PIP" target="_blank">Python 环境构建最佳实践:Mamba + Conda + PIP</a>
                        <span class="text-muted">Laurence </span>
<a class="tag" taget="_blank" href="/search/%E4%BB%98%E8%B4%B9%E4%B8%93%E6%A0%8F/1.htm">付费专栏</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/conda/1.htm">conda</a><a class="tag" taget="_blank" href="/search/pip/1.htm">pip</a><a class="tag" taget="_blank" href="/search/mamba/1.htm">mamba</a><a class="tag" taget="_blank" href="/search/%E6%9E%84%E5%BB%BA/1.htm">构建</a><a class="tag" taget="_blank" href="/search/%E7%89%88%E6%9C%AC%E5%86%B2%E7%AA%81/1.htm">版本冲突</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83/1.htm">虚拟环境</a>
                        <div>此前,我们单独介绍过PIP和Conda,在后续的实际应用中,还是遇到了不少Python环境构建的问题,特别是在Windows系统上,最突出的表现是:虽然PIP的包依赖解析和下载都很快,但在Windows上经常会因为缺失底层依赖的程序库(例如某些dll文件)而导致Python程序启动时报错,此时,改用Conda通常可以解决此类问题,但是,Conda的问题在于:它的包依赖解析问题很大,耗时很长,解决C</div>
                    </li>
                    <li><a href="/article/1884459363351982080.htm"
                           title="基于SpringBoot+Vue+uniapp的4S店客户管理系统(源码+lw+部署文档+讲解等)" target="_blank">基于SpringBoot+Vue+uniapp的4S店客户管理系统(源码+lw+部署文档+讲解等)</a>
                        <span class="text-muted">百奇的代码小屋</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%AF%95%E8%AE%BE/1.htm">微信小程序毕设</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/uni-app/1.htm">uni-app</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a>
                        <div>文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言博主介绍:✌全网粉丝15W+,CSDN特邀作者、211毕业、高级全栈开发程序员、大厂多年工作经验、码云/掘金/华为云/阿里云/InfoQ/StackOverflow/github等平台优质作者、专注</div>
                    </li>
                    <li><a href="/article/1884458607253188608.htm"
                           title="Python 中 ssl 模块所使用的 OpenSSL 版本(1.0.2k-fips)和系统中 openssl 命令所使用的 OpenSSL 版本(1.1.1u)不一致(已解决)" target="_blank">Python 中 ssl 模块所使用的 OpenSSL 版本(1.0.2k-fips)和系统中 openssl 命令所使用的 OpenSSL 版本(1.1.1u)不一致(已解决)</a>
                        <span class="text-muted">Future_yzx</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/ssl/1.htm">ssl</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>在使用Linux中配置yolov5环境时遇到问题:[root@iZ2ze9bdu1sca12rizazfkZqcby-project]#python3-c"importssl;print(ssl.OPENSSL_VERSION)"OpenSSL1.0.2k-fips 26Jan2017[root@iZ2ze9bdu1sca12rizazfkZqcby-project]#opensslversion</div>
                    </li>
                    <li><a href="/article/1884457599248691200.htm"
                           title="Python 四大主流 Web 编程框架_python web开发主流" target="_blank">Python 四大主流 Web 编程框架_python web开发主流</a>
                        <span class="text-muted">2401_87373506</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a>
                        <div>在目前Python语言的几十个开发框架中,几乎所有的全栈网络框架都强制或引导开发者使用MVC架构开发Web应用。所谓全栈网络框架,是指除了封装网络和线程操作,还提供HTTP栈、数据库读写管理、HTML模板引擎等一系列功能的网络框架。本文重点讲解的Django、Tornado和Flask是全栈网络框架的典型标杆;而Twisted更专注于网络底层的高性能封装而不提供HTML模板引擎等界面功能,所以不能</div>
                    </li>
                    <li><a href="/article/1884455833635450880.htm"
                           title="实验八 数据的增删改操作" target="_blank">实验八 数据的增删改操作</a>
                        <span class="text-muted">无尽罚坐的人生</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%8E%9F%E7%90%86/1.htm">数据库原理</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>实验八数据的增删改操作一、实验目的1.掌握ManagementStudio的使用。2.掌握SQL中INSERT、UPDATE、DELETE命令的使用。二、实验内容及要求用SQL语句完成下列功能。使用数据库为SCHOOL数据库。1、新开设一门课程,名叫网络安全与防火墙,学时40,编号为“0118”,主要介绍网络的安全与主要的防火墙软件。insertcourse(course_id,course_na</div>
                    </li>
                    <li><a href="/article/1884455698381729792.htm"
                           title="100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全" target="_blank">100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全</a>
                        <span class="text-muted">袁袁袁袁满</span>
<a class="tag" taget="_blank" href="/search/100%E5%A4%A9%E7%B2%BE%E9%80%9APython/1.htm">100天精通Python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/urllib/1.htm">urllib</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98/1.htm">爬虫实战</a><a class="tag" taget="_blank" href="/search/urllib%E6%A8%A1%E5%9D%97%E6%95%99%E7%A8%8B/1.htm">urllib模块教程</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB/1.htm">网络爬虫</a>
                        <div>文章目录1.urllib概述2.urllib.request模块1.urllib.request.urlopen()2.urllib.request.urlretrieve()3.urllib.request.Request()4.urllib.request.install_opener()5.urllib.request.build_opener()6.urllib.request.Abstr</div>
                    </li>
                    <li><a href="/article/1884455701321936896.htm"
                           title="MySQL 高级(进阶) SQL 语句" target="_blank">MySQL 高级(进阶) SQL 语句</a>
                        <span class="text-muted">yyytucj</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>MySQL是一种功能强大的关系型数据库管理系统。为了有效地利用其高级功能,需要掌握一些进阶的SQL语句和技巧。本文将介绍几种常用的高级SQL语句,包括窗口函数、子查询、联合查询、复杂的连接操作以及事务处理等。1.窗口函数窗口函数是一种高级的SQL功能,用于在查询结果集中计算某些聚合值,同时保留详细数据行。常用的窗口函数包括ROW_NUMBER(),RANK(),DENSE_RANK(),SUM()</div>
                    </li>
                    <li><a href="/article/1884455701741367296.htm"
                           title="深入解析:使用 Python 爬取二手车交易平台数据的全流程" target="_blank">深入解析:使用 Python 爬取二手车交易平台数据的全流程</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E7%99%BE%E5%BA%A6/1.htm">百度</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">信息可视化</a>
                        <div>二手车交易平台提供了丰富的汽车交易数据,这些数据包含了车辆品牌、型号、价格、行驶里程、上牌时间等关键信息。这些数据对市场研究、价格预测、车辆性能分析等应用场景具有重要价值。本篇博客将带你深入学习如何用Python爬取二手车交易平台数据,提供详细的实现代码、突破反爬机制的技巧,以及数据清洗和分析的思路。一、二手车数据的价值与分析场景1.1数据价值二手车交易数据可以应用在以下场景:市场分析:了解当前二</div>
                    </li>
                    <li><a href="/article/1884455571856355328.htm"
                           title="Python酷库之旅-第三方库Pandas(189)" target="_blank">Python酷库之旅-第三方库Pandas(189)</a>
                        <span class="text-muted">神奇夜光杯</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pandas/1.htm">pandas</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%A0%87%E5%87%86%E5%BA%93%E5%8F%8A%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%93/1.htm">标准库及第三方库</a><a class="tag" taget="_blank" href="/search/excel/1.htm">excel</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E4%B8%8E%E6%88%90%E9%95%BF/1.htm">学习与成长</a>
                        <div>目录一、用法精讲876、pandas.Index.duplicated方法876-1、语法876-2、参数876-3、功能876-4、返回值876-5、说明876-6、用法876-6-1、数据准备876-6-2、代码示例876-6-3、结果输出877、pandas.Index.equals方法877-1、语法877-2、参数877-3、功能877-4、返回值877-5、说明877-6、用法877-</div>
                    </li>
                    <li><a href="/article/1884454938730360832.htm"
                           title="deepseek R1的确不错,特别是深度思考模式" target="_blank">deepseek R1的确不错,特别是深度思考模式</a>
                        <span class="text-muted">jackyrongvip</span>
<a class="tag" taget="_blank" href="/search/deepseek/1.htm">deepseek</a><a class="tag" taget="_blank" href="/search/r1/1.htm">r1</a>
                        <div>deepseekR1的确不错,特别是深度思考模式,每次都能自我反省改进。比如我让它写文案:【赛博朋克版程序员新春密码——2025我们来破局】亲爱的代码骑士们:当Ctrl+S的肌肉记忆遇上抢票插件,当SpringBoot的启动动画撞上春运倒计时,我们知道——该给2024的Jira画上最后一个燃尽点了。今年最动人的commitmessage是什么?是算法组在ICU病房陪护时写的"优化父亲化疗方案路径规</div>
                    </li>
                    <li><a href="/article/1884454686560415744.htm"
                           title="Python 爬虫入门的教程(1小时快速入门、简单易懂、快速上手)_一小时入门 python 3 网络爬虫" target="_blank">Python 爬虫入门的教程(1小时快速入门、简单易懂、快速上手)_一小时入门 python 3 网络爬虫</a>
                        <span class="text-muted">2401_86372526</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E4%BC%98%E5%85%88/1.htm">深度优先</a>
                        <div>首先在PyCharm中安装requests库,为此打开PyCharm,单击“File”(文件)菜单,选择“SettingforNewProjects…”命令,如图4所示。图4选择“ProjectInterpreter”(项目编译器)命令,确认当前选择的编译器,然后单击右上角的加号,如图5所示。图5在搜索框输入:requests(注意,一定要输入完整,不然容易出错),然后单击左下角的“Install</div>
                    </li>
                    <li><a href="/article/1884451535883137024.htm"
                           title="【reflex】Python一种更直观和高效的方式来管理事件流模块" target="_blank">【reflex】Python一种更直观和高效的方式来管理事件流模块</a>
                        <span class="text-muted">山河不见老</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>reflex1、简介2、安装3、特性4、基本功能4.1创建和触发基本事件4.2动态事件绑定5、高级功能5.1异步事件处理5.2事件优先级和调度5.3事件过滤和条件触发6、实际应用场景6.1用户界面事件处理6.2网络事件响应6.3系统信号处理7、总结1、简介在软件开发过程中,事件驱动编程模型越来越受欢迎,尤其是在处理复杂的系统和实时交互时。Reflex是一个轻量级的Python库,它专注于简化事件驱</div>
                    </li>
                    <li><a href="/article/1884447744236515328.htm"
                           title="探索Reflex:用纯Python构建高性能Web应用" target="_blank">探索Reflex:用纯Python构建高性能Web应用</a>
                        <span class="text-muted">倪姿唯Kara</span>

                        <div>探索Reflex:用纯Python构建高性能Web应用项目地址:https://gitcode.com/gh_mirrors/re/reflex项目介绍Reflex,前身为Pynecone,是一个革命性的开源库,允许开发者使用纯Python构建全栈Web应用。Reflex的核心理念是简化Web开发的复杂性,通过提供一个统一的框架,让开发者能够专注于业务逻辑而非技术细节。无论是初学者还是经验丰富的开</div>
                    </li>
                    <li><a href="/article/1884447744832106496.htm"
                           title="机器学习:利用sklearn实现心脏病预测" target="_blank">机器学习:利用sklearn实现心脏病预测</a>
                        <span class="text-muted">薄化克Oswald</span>

                        <div>机器学习:利用sklearn实现心脏病预测机器学习sklearn实现心脏病预测项目地址:https://gitcode.com/Resource-Bundle-Collection/171ff欢迎使用本资源仓库,本项目专注于利用Python的sklearn库进行心脏病预测的机器学习实践。通过详尽的步骤和示例代码,本项目为你展示了如何应用不同的机器学习算法来分析心脏病数据集,并预测患者是否有可能患有</div>
                    </li>
                    <li><a href="/article/1884447491693277184.htm"
                           title="探索Reflex:纯Python打造高性能web应用的未来" target="_blank">探索Reflex:纯Python打造高性能web应用的未来</a>
                        <span class="text-muted">孔岱怀</span>

                        <div>探索Reflex:纯Python打造高性能web应用的未来去发现同类优质开源项目:https://gitcode.com/在快速迭代的Web开发领域,寻找一种既高效又能让开发者以熟悉的方式工作的框架至关重要。今天,我们来深入了解一个革新性的开源项目——Reflex,它承诺让你在纯Python的环境中构建响应式web应用,并且能在几秒钟内完成部署。1.项目介绍Reflex是一个新兴的全栈web框架,</div>
                    </li>
                    <li><a href="/article/1884447239435251712.htm"
                           title="docker部署spring-boot项目后,验证码获取报错解决" target="_blank">docker部署spring-boot项目后,验证码获取报错解决</a>
                        <span class="text-muted">阔海&空天</span>
<a class="tag" taget="_blank" href="/search/%E5%BC%82%E5%B8%B8%E8%A7%A3%E5%86%B3/1.htm">异常解决</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>报错信息如下:2020-10-2116:13:03.603ERROR9---[XNIO-1task-2]c.e.c.s.handler.GlobalExceptionHandler:全局异常信息ex=nulljava.lang.NullPointerException:nullatsun.awt.FontConfiguration.getVersion(FontConfiguration.java</div>
                    </li>
                    <li><a href="/article/1884446985323343872.htm"
                           title="python | cudf,一个超实用的 Python 库!" target="_blank">python | cudf,一个超实用的 Python 库!</a>
                        <span class="text-muted">双木的木</span>
<a class="tag" taget="_blank" href="/search/python%E6%8B%93%E5%B1%95%E5%AD%A6%E4%B9%A0/1.htm">python拓展学习</a><a class="tag" taget="_blank" href="/search/python%E5%BA%93/1.htm">python库</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/database/1.htm">database</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a>
                        <div>本文来源公众号“python”,仅用于学术分享,侵权删,干货满满。原文链接:cudf,一个超实用的Python库!大家好,今天为大家分享一个超实用的Python库-cudf。Github地址:https://github.com/rapidsai/cudf在数据分析和科学计算领域,Pandas是最常用的Python工具之一,然而随着数据规模的增长,其单线程CPU的处理性能往往成为瓶颈。cuDF是N</div>
                    </li>
                    <li><a href="/article/1884446859041239040.htm"
                           title="2025年8个热门Python Web开发框架" target="_blank">2025年8个热门Python Web开发框架</a>
                        <span class="text-muted">极道Jdon</span>
<a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/reactjs/1.htm">reactjs</a>
                        <div>Python拥有适合各种用例的框架,从全栈Web开发到数据可视化,为每位开发人员提供了所需的工具。得益于其活跃的社区和强大的生态系统,开发人员在构建Web应用时拥有广泛的选择。然而,选择数量之多可能会使您难以为您的项目选择合适的框架。这就是为什么我们回顾了用于构建Web应用程序的顶级Python框架,并比较了每个框架的优缺点。在本文中,我们将回顾以下框架:Reflex、Django、Flask、G</div>
                    </li>
                    <li><a href="/article/1884443207220129792.htm"
                           title="python | reflex,一个无敌的 Python 库!" target="_blank">python | reflex,一个无敌的 Python 库!</a>
                        <span class="text-muted">双木的木</span>
<a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E6%8B%93%E5%B1%95%E9%98%85%E8%AF%BB/1.htm">深度学习拓展阅读</a><a class="tag" taget="_blank" href="/search/python%E5%BA%93/1.htm">python库</a><a class="tag" taget="_blank" href="/search/python%E6%8B%93%E5%B1%95%E5%AD%A6%E4%B9%A0/1.htm">python拓展学习</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%A1%AC%E4%BB%B6%E5%B7%A5%E7%A8%8B/1.htm">硬件工程</a><a class="tag" taget="_blank" href="/search/%E5%BC%82%E6%AD%A5/1.htm">异步</a>
                        <div>本文来源公众号“python”,仅用于学术分享,侵权删,干货满满。原文链接:reflex,一个无敌的Python库!大家好,今天为大家分享一个无敌的Python库-reflex。Github地址:https://github.com/reflex-dev/reflex在软件开发过程中,事件驱动编程模型越来越受欢迎,尤其是在处理复杂的系统和实时交互时。Reflex是一个轻量级的Python库,它专注</div>
                    </li>
                    <li><a href="/article/1884442073923383296.htm"
                           title="「SpringCloudAlibaba系列」分布式限流框架Sentinel基本引用|" target="_blank">「SpringCloudAlibaba系列」分布式限流框架Sentinel基本引用|</a>
                        <span class="text-muted">我有一头小花驴</span>
<a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a><a class="tag" taget="_blank" href="/search/sentinel/1.htm">sentinel</a>
                        <div>分布式限流框架Sentinel基本引用Sentinel的基本引用使用Sentinel的核心库实现限流,主要分以下几个步骤:定义资源定义限流规则校验规则是否生效Sentinel实现限流引入Sentinel核心库com.alibaba.cspsentinel-core1.8.2复制代码定义普通业务方法privatestaticvoiddoLimiting(){try(Entrylimiting=Sph</div>
                    </li>
                    <li><a href="/article/1884441066313150464.htm"
                           title="遗传算法GA特征选择Python" target="_blank">遗传算法GA特征选择Python</a>
                        <span class="text-muted">明天早下班YEAH</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/%E5%85%B6%E4%BB%96/1.htm">其他</a>
                        <div>一、遗传算法GA特征选择——代码importpandasaspdimportnumpyasnpfromsklearn.model_selectionimporttrain_test_splitfromsklearn.ensembleimportRandomForestRegressorfromsklearn.metricsimportmean_squared_error,r2_scorefromg</div>
                    </li>
                    <li><a href="/article/1884440436668428288.htm"
                           title="CTF-web: YAML是什么" target="_blank">CTF-web: YAML是什么</a>
                        <span class="text-muted">A5rZ</span>
<a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/1.htm">网络安全</a>
                        <div>YAML(YAMLAin’tMarkupLanguage)是一种常见的序列化数据格式,主要用于配置文件和数据交换。它的设计目标是简洁、易读,并且易于与编程语言交互。YAML使用缩进来表示层次结构,类似于Python的语法。:基本语法结构键值对:YAML中最基本的结构是键值对,用于表示映射(类似于Python的字典)。name:JohnDoeage:30列表:用破折号(-)表示列表项。items:-</div>
                    </li>
                    <li><a href="/article/1884439427455971328.htm"
                           title="Django 4.0常见问题及其解决方案汇总" target="_blank">Django 4.0常见问题及其解决方案汇总</a>
                        <span class="text-muted">昏睡的大熊猫</span>
<a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>Django4.0,常见问题及其解决方案汇总前言当涉及Django4.0框架时,开发人员经常会面临各种挑战和问题。解决这些问题需要深入了解框架的功能和最佳实践。以下是针对Django4.0常见问题的解决方案汇总,涵盖了从安全性到性能优化的多个方面。这些解决方案旨在帮助开发人员更好地理解和应对在开发过程中可能遇到的困难,确保他们能够构建稳健、高效的Web应用程序。1.如何处理数据库迁移?2.如何处理</div>
                    </li>
                    <li><a href="/article/1884439301282918400.htm"
                           title="python3调用arcpy地理加权回归_混合地理加权回归python实现代码" target="_blank">python3调用arcpy地理加权回归_混合地理加权回归python实现代码</a>
                        <span class="text-muted">weixin_39942995</span>

                        <div>【实例简介】通过python编码实现MGWR、MGWTR模型的求解。能够解决空间非平稳性问题。【实例截图】【核心代码】mgwr-py└──mgwr-master├──CHANGELOG.md├──LICENSE├──MANIFEST.in├──README.md├──doc│├──Makefile│├──_static││├──images│││├──gwr-mgwr.png│││└──pysal</div>
                    </li>
                    <li><a href="/article/1884439174849818624.htm"
                           title="python在abaqus中的应用_Python在ABAQUS中的使用【z】" target="_blank">python在abaqus中的应用_Python在ABAQUS中的使用【z】</a>
                        <span class="text-muted">weixin_39835925</span>

                        <div>【篇首语】首先说,我不懂abaqus。只是一次帮同学处理混合编程问题查到这些资料,借机贴过来。拷贝过程中有些混乱字符,时间关系我没有删干净。因为我也是从转帖转过来,原出处找不到了。#开头的为注释行.9_-m2r;n%h-G第一节,建立建模环境,这一步中py将从abaqus中导入建模所需的所有程序模块frompartimport*接下来定义草图环境mdb.models['Model-1'].Sket</div>
                    </li>
                    <li><a href="/article/1884439048563519488.htm"
                           title="ctf python大法好_【技术分享】记CTF比赛中发现的Python反序列化漏洞" target="_blank">ctf python大法好_【技术分享】记CTF比赛中发现的Python反序列化漏洞</a>
                        <span class="text-muted">weixin_39631370</span>
<a class="tag" taget="_blank" href="/search/ctf/1.htm">ctf</a><a class="tag" taget="_blank" href="/search/python%E5%A4%A7%E6%B3%95%E5%A5%BD/1.htm">python大法好</a>
                        <div>预估稿费:200RMB投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿写在前面的话在前几天,我有幸参加了ToorConCTF(https://twitter.com/toorconctf),而在参加此次盛会的过程中我第一次在Python中发现了序列化漏洞。在我们的比赛过程中,有两个挑战中涉及到了能够接受序列化对象的Python库,而我们通过研究发现,这些Python库中存在的安</div>
                    </li>
                    <li><a href="/article/1884438670417653760.htm"
                           title="python3调用arcpy地理加权回归_分析地理加权回归分析结果的操作方法" target="_blank">python3调用arcpy地理加权回归_分析地理加权回归分析结果的操作方法</a>
                        <span class="text-muted">weixin_39545269</span>

                        <div>1从地理加权回归(GWR)工具生成的输出包括以下内容:输出要素类可选系数栅格表面整体模型结果的消息窗口报告显示模型变量和诊断结果的辅助表预测输出要素类2下文中将使用一系列运行GWR和解释GWR结果的步骤对以上每项输出进行说明。通常将以普通最小二乘法(OLS)开始回归分析。有关详细信息,请参阅回归分析基础知识和解释OLS回归结果。回归分析的一种常用方法是在移动到GWR之前识别可能的最佳OLS模型。此</div>
                    </li>
                    <li><a href="/article/1884438291479064576.htm"
                           title="python炫酷特效代码_推荐几个炫酷的 Python 开源项目" target="_blank">python炫酷特效代码_推荐几个炫酷的 Python 开源项目</a>
                        <span class="text-muted">高杉峻</span>
<a class="tag" taget="_blank" href="/search/python%E7%82%AB%E9%85%B7%E7%89%B9%E6%95%88%E4%BB%A3%E7%A0%81/1.htm">python炫酷特效代码</a>
                        <div>推荐几个炫酷的Python开源项目项目一:Supervisor简介:Supervisor是实际企业常用的一款Linux/Unix系统下的一个进程管理工具,基于Python开发,可以很方便的监听,启动,停止,重启一个或多个进程,而且当进程意外被杀死时,其可以实现自动恢复,很方便的做到进程自动恢复的功能,提高系统,服务的稳定性,多用于生产环境.下载地址:https://github.com/Super</div>
                    </li>
                    <li><a href="/article/1884437533488640000.htm"
                           title="实时数据处理与模型推理:利用 Spring AI 实现对数据的推理与分析" target="_blank">实时数据处理与模型推理:利用 Spring AI 实现对数据的推理与分析</a>
                        <span class="text-muted">drebander</span>
<a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>在现代企业中,实时数据处理与快速决策已经成为关键需求。通过集成SpringAI,我们不仅可以高效地获取实时数据,还可以将这些数据输入到AI模型中进行推理与分析,以便生成实时的业务洞察。本文将讲解如何通过SpringAI实现实时数据的获取、处理和基于AI模型的推理与分析。我们将探讨整个流程,从数据获取到推理结果的展示,并介绍实际的应用场景。1.系统架构设计实时数据处理和推理系统通常涉及以下几个核心模</div>
                    </li>
                                <li><a href="/article/118.htm"
                                       title="异常的核心类Throwable" target="_blank">异常的核心类Throwable</a>
                                    <span class="text-muted">无量</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81/1.htm">源码</a><a class="tag" taget="_blank" href="/search/%E5%BC%82%E5%B8%B8%E5%A4%84%E7%90%86/1.htm">异常处理</a><a class="tag" taget="_blank" href="/search/exception/1.htm">exception</a>
                                    <div>java异常的核心是Throwable,其他的如Error和Exception都是继承的这个类 里面有个核心参数是detailMessage,记录异常信息,getMessage核心方法,获取这个参数的值,我们可以自己定义自己的异常类,去继承这个Exception就可以了,方法基本上,用父类的构造方法就OK,所以这么看异常是不是很easy 
 
 
 
package com.natsu;


</div>
                                </li>
                                <li><a href="/article/245.htm"
                                       title="mongoDB 游标(cursor) 实现分页 迭代" target="_blank">mongoDB 游标(cursor) 实现分页 迭代</a>
                                    <span class="text-muted">开窍的石头</span>
<a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a>
                                    <div>上篇中我们讲了mongoDB 中的查询函数,现在我们讲mongo中如何做分页查询 
 
     如何声明一个游标 
       var mycursor = db.user.find({_id:{$lte:5}}); 
      迭代显示游标数</div>
                                </li>
                                <li><a href="/article/372.htm"
                                       title="MySQL数据库INNODB 表损坏修复处理过程" target="_blank">MySQL数据库INNODB 表损坏修复处理过程</a>
                                    <span class="text-muted">0624chenhong</span>
<a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>最近mysql数据库经常死掉,用命令net stop mysql命令也无法停掉,关闭Tomcat的时候,出现Waiting for N instance(s) to be deallocated 信息。查了下,大概就是程序没有对数据库连接释放,导致Connection泄露了。因为用的是开元集成的平台,内部程序也不可能一下子给改掉的,就验证一下咯。启动Tomcat,用户登录系统,用netstat -</div>
                                </li>
                                <li><a href="/article/499.htm"
                                       title="剖析如何与设计人员沟通" target="_blank">剖析如何与设计人员沟通</a>
                                    <span class="text-muted">不懂事的小屁孩</span>
<a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a>
                                    <div>最近做图烦死了,不停的改图,改图……。烦,倒不是因为改,而是反反复复的改,人都会死。很多需求人员不知该如何与设计人员沟通,不明白如何使设计人员知道他所要的效果,结果只能是沟通变成了扯淡,改图变成了应付。 
 
那应该如何与设计人员沟通呢? 
 
我认为设计人员与需求人员先天就存在语言障碍。对一个合格的设计人员来说,整天玩的都是点、线、面、配色,哪种构图看起来协调;哪种配色看起来合理心里跟明镜似的,</div>
                                </li>
                                <li><a href="/article/626.htm"
                                       title="qq空间刷评论工具" target="_blank">qq空间刷评论工具</a>
                                    <span class="text-muted">换个号韩国红果果</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a>
                                    <div>

var a=document.getElementsByClassName('textinput');
					var b=[];
					for(var m=0;m<a.length;m++){
						if(a[m].getAttribute('placeholder')!=null)
							b.push(a[m])
					}
					var l</div>
                                </li>
                                <li><a href="/article/753.htm"
                                       title="S2SH整合之session" target="_blank">S2SH整合之session</a>
                                    <span class="text-muted">灵静志远</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/struts/1.htm">struts</a><a class="tag" taget="_blank" href="/search/session/1.htm">session</a>
                                    <div>错误信息: 
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cartService': Scope 'session' is not active for the current thread; consider defining a scoped</div>
                                </li>
                                <li><a href="/article/880.htm"
                                       title="xmp标签" target="_blank">xmp标签</a>
                                    <span class="text-muted">a-john</span>
<a class="tag" taget="_blank" href="/search/%E6%A0%87%E7%AD%BE/1.htm">标签</a>
                                    <div>今天在处理数据的显示上遇到一个问题: 
var html = '<li><div class="pl-nr"><span class="user-name">' + user
           + '</span>' + text + '</div></li>';
ulComme</div>
                                </li>
                                <li><a href="/article/1007.htm"
                                       title="Ajax的常用技巧(2)---实现Web页面中的级联菜单" target="_blank">Ajax的常用技巧(2)---实现Web页面中的级联菜单</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a>
                                    <div>在网络上显示数据,往往只显示数据中的一部分信息,如文章标题,产品名称等。如果浏览器要查看所有信息,只需点击相关链接即可。在web技术中,可以采用级联菜单完成上述操作。根据用户的选择,动态展开,并显示出对应选项子菜单的内容。 在传统的web实现方式中,一般是在页面初始化时动态获取到服务端数据库中对应的所有子菜单中的信息,放置到页面中对应的位置,然后再结合CSS层叠样式表动态控制对应子菜单的显示或者隐</div>
                                </li>
                                <li><a href="/article/1134.htm"
                                       title="天-安-门,好高" target="_blank">天-安-门,好高</a>
                                    <span class="text-muted">atongyeye</span>
<a class="tag" taget="_blank" href="/search/%E6%83%85%E6%84%9F/1.htm">情感</a>
                                    <div>    我是85后,北漂一族,之前房租1100,因为租房合同到期,再续,房租就要涨150。最近网上新闻,地铁也要涨价。算了一下,涨价之后,每次坐地铁由原来2块变成6块。仅坐地铁费用,一个月就要涨200。内心苦痛。 
 
    晚上躺在床上一个人想了很久,很久。 
   
    我生在农</div>
                                </li>
                                <li><a href="/article/1261.htm"
                                       title="android 动画" target="_blank">android 动画</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E9%80%8F%E6%98%8E%E5%BA%A6/1.htm">透明度</a><a class="tag" taget="_blank" href="/search/%E5%B9%B3%E7%A7%BB/1.htm">平移</a><a class="tag" taget="_blank" href="/search/%E7%BC%A9%E6%94%BE/1.htm">缩放</a><a class="tag" taget="_blank" href="/search/%E6%97%8B%E8%BD%AC/1.htm">旋转</a>
                                    <div>android的动画有两种  tween动画和Frame动画 
  
tween动画;,透明度,缩放,旋转,平移效果 
  
Animation   动画 
AlphaAnimation 渐变透明度 
RotateAnimation 画面旋转 
ScaleAnimation 渐变尺寸缩放 
TranslateAnimation 位置移动 
Animation</div>
                                </li>
                                <li><a href="/article/1388.htm"
                                       title="查看本机网络信息的cmd脚本" target="_blank">查看本机网络信息的cmd脚本</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/cmd/1.htm">cmd</a>
                                    <div>@echo 您的用户名是:%USERDOMAIN%\%username%>"%userprofile%\网络参数.txt"
@echo 您的机器名是:%COMPUTERNAME%>>"%userprofile%\网络参数.txt"
@echo ___________________>>"%userprofile%\</div>
                                </li>
                                <li><a href="/article/1515.htm"
                                       title="plsql 清除登录过的用户" target="_blank">plsql 清除登录过的用户</a>
                                    <span class="text-muted">征客丶</span>
<a class="tag" taget="_blank" href="/search/plsql/1.htm">plsql</a>
                                    <div>tools---preferences----logon history---history  把你想要删除的删除 
 
 
-------------------------------------------------------------------- 
若有其他凝问或文中有错误,请及时向我指出, 
我好及时改正,同时也让我们一起进步。 
email : binary_spac</div>
                                </li>
                                <li><a href="/article/1642.htm"
                                       title="【Pig一】Pig入门" target="_blank">【Pig一】Pig入门</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/pig/1.htm">pig</a>
                                    <div>Pig安装 
1.下载pig 
  
wget http://mirror.bit.edu.cn/apache/pig/pig-0.14.0/pig-0.14.0.tar.gz 
  
2. 解压配置环境变量 
  
   如果Pig使用Map/Reduce模式,那么需要在环境变量中,配置HADOOP_HOME环境变量 
  
expor</div>
                                </li>
                                <li><a href="/article/1769.htm"
                                       title="Java 线程同步几种方式" target="_blank">Java 线程同步几种方式</a>
                                    <span class="text-muted">BlueSkator</span>
<a class="tag" taget="_blank" href="/search/volatile/1.htm">volatile</a><a class="tag" taget="_blank" href="/search/synchronized/1.htm">synchronized</a><a class="tag" taget="_blank" href="/search/ThredLocal/1.htm">ThredLocal</a><a class="tag" taget="_blank" href="/search/ReenTranLock/1.htm">ReenTranLock</a><a class="tag" taget="_blank" href="/search/Concurrent/1.htm">Concurrent</a>
                                    <div>为何要使用同步?       java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),        将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用,        从而保证了该变量的唯一性和准确性。    1.同步方法&</div>
                                </li>
                                <li><a href="/article/1896.htm"
                                       title="StringUtils判断字符串是否为空的方法(转帖)" target="_blank">StringUtils判断字符串是否为空的方法(转帖)</a>
                                    <span class="text-muted">BreakingBad</span>
<a class="tag" taget="_blank" href="/search/null/1.htm">null</a><a class="tag" taget="_blank" href="/search/StringUtils/1.htm">StringUtils</a><a class="tag" taget="_blank" href="/search/%E2%80%9C%E2%80%9D/1.htm">“”</a>
                                    <div>转帖地址:http://www.cnblogs.com/shangxiaofei/p/4313111.html 
  
public static boolean isEmpty(String str)      
  判断某字符串是否为空,为空的标准是 str== 
null  
或 str.length()== 
0    </div>
                                </li>
                                <li><a href="/article/2023.htm"
                                       title="编程之美-分层遍历二叉树" target="_blank">编程之美-分层遍历二叉树</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E4%B9%8B%E7%BE%8E/1.htm">编程之美</a>
                                    <div>

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

public class LevelTraverseBinaryTree {

    /**
     * 编程之美 分层遍历二叉树
     * 之前已经用队列实现过二叉树的层次遍历,但这次要求输出换行,因此要</div>
                                </li>
                                <li><a href="/article/2150.htm"
                                       title="jquery取值和ajax提交复习记录" target="_blank">jquery取值和ajax提交复习记录</a>
                                    <span class="text-muted">chengxuyuancsdn</span>
<a class="tag" taget="_blank" href="/search/jquery%E5%8F%96%E5%80%BC/1.htm">jquery取值</a><a class="tag" taget="_blank" href="/search/ajax%E6%8F%90%E4%BA%A4/1.htm">ajax提交</a>
                                    <div>
// 取值
	// alert($("input[name='username']").val());
	// alert($("input[name='password']").val());
	// alert($("input[name='sex']:checked").val());
	// alert($("</div>
                                </li>
                                <li><a href="/article/2277.htm"
                                       title="推荐国产工作流引擎嵌入式公式语法解析器-IK Expression" target="_blank">推荐国产工作流引擎嵌入式公式语法解析器-IK Expression</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BA%94%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">应用服务器</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/Excel/1.htm">Excel</a><a class="tag" taget="_blank" href="/search/%E5%B5%8C%E5%85%A5%E5%BC%8F/1.htm">嵌入式</a>
                                    <div>这个开源软件包是国内的一位高手自行研制开发的,正如他所说的一样,我觉得它可以使一个工作流引擎上一个台阶。。。。。。欢迎大家使用,并提出意见和建议。。。 
----------转帖--------------------------------------------------- 
 IK Expression是一个开源的(OpenSource),可扩展的(Extensible),基于java语言</div>
                                </li>
                                <li><a href="/article/2404.htm"
                                       title="关于系统中使用多个PropertyPlaceholderConfigurer的配置及PropertyOverrideConfigurer" target="_blank">关于系统中使用多个PropertyPlaceholderConfigurer的配置及PropertyOverrideConfigurer</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a>
                                    <div>1、PropertyPlaceholderConfigurer 
Spring中PropertyPlaceholderConfigurer这个类,它是用来解析Java Properties属性文件值,并提供在spring配置期间替换使用属性值。接下来让我们逐渐的深入其配置。 
 
基本的使用方法是:(1) 
 
<bean id="propertyConfigurerForWZ&q</div>
                                </li>
                                <li><a href="/article/2531.htm"
                                       title="二叉树:二叉搜索树" target="_blank">二叉树:二叉搜索树</a>
                                    <span class="text-muted">dieslrae</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%8C%E5%8F%89%E6%A0%91/1.htm">二叉树</a>
                                    <div>    所谓二叉树,就是一个节点最多只能有两个子节点,而二叉搜索树就是一个经典并简单的二叉树.规则是一个节点的左子节点一定比自己小,右子节点一定大于等于自己(当然也可以反过来).在树基本平衡的时候插入,搜索和删除速度都很快,时间复杂度为O(logN).但是,如果插入的是有序的数据,那效率就会变成O(N),在这个时候,树其实变成了一个链表. 
 
tree代码: 
 
</div>
                                </li>
                                <li><a href="/article/2658.htm"
                                       title="C语言字符串函数大全" target="_blank">C语言字符串函数大全</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/function/1.htm">function</a>
                                    <div>C语言字符串函数大全 
  
  
函数名: stpcpy 
功 能: 拷贝一个字符串到另一个 
用 法: char *stpcpy(char *destin, char *source); 
程序例: 
  
#include <stdio.h> 
#include <string.h> 
  
int main</div>
                                </li>
                                <li><a href="/article/2785.htm"
                                       title="友盟统计页面技巧" target="_blank">友盟统计页面技巧</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/%E6%8A%80%E5%B7%A7/1.htm">技巧</a>
                                    <div>在基类调用就可以了, 基类ViewController示例代码 
-(void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [MobClick beginLogPageView:[NSString stringWithFormat:@"%@",self.class]];
</div>
                                </li>
                                <li><a href="/article/2912.htm"
                                       title="window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法" target="_blank">window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法</a>
                                    <span class="text-muted">flyvszhb</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a>
                                    <div>window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法 
 
本机已经安装了jdk1.7,而比较早期的项目需要依赖jdk1.6,于是同时在本机安装了jdk1.6和jdk1.7. 
 安装jdk1.6前,执行java -version得到 
C:\Users\liuxiang2>java -version 
java version "1.7.0_21&quo</div>
                                </li>
                                <li><a href="/article/3039.htm"
                                       title="Java在创建子类对象的同时会不会创建父类对象" target="_blank">Java在创建子类对象的同时会不会创建父类对象</a>
                                    <span class="text-muted">happyqing</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%88%9B%E5%BB%BA/1.htm">创建</a><a class="tag" taget="_blank" href="/search/%E5%AD%90%E7%B1%BB%E5%AF%B9%E8%B1%A1/1.htm">子类对象</a><a class="tag" taget="_blank" href="/search/%E7%88%B6%E7%B1%BB%E5%AF%B9%E8%B1%A1/1.htm">父类对象</a>
                                    <div>  
1.在thingking in java 的第四版第六章中明确的说了,子类对象中封装了父类对象, 
  
2."When you create an object of the derived class, it contains within it a subobject of the base class. This subobject is the sam</div>
                                </li>
                                <li><a href="/article/3166.htm"
                                       title="跟我学spring3 目录贴及电子书下载" target="_blank">跟我学spring3 目录贴及电子书下载</a>
                                    <span class="text-muted">jinnianshilongnian</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a>
                                    <div>  
  一、《跟我学spring3》电子书下载地址: 
《跟我学spring3》  (1-7 和 8-13) http://jinnianshilongnian.iteye.com/blog/pdf   
  
跟我学spring3系列 word原版 下载 
  
  二、
源代码下载  
最新依</div>
                                </li>
                                <li><a href="/article/3420.htm"
                                       title="第12章 Ajax(上)" target="_blank">第12章 Ajax(上)</a>
                                    <span class="text-muted">onestopweb</span>
<a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a>
                                    <div>index.html 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/</div>
                                </li>
                                <li><a href="/article/3547.htm"
                                       title="BI and EIM 4.0 at a glance" target="_blank">BI and EIM 4.0 at a glance</a>
                                    <span class="text-muted">blueoxygen</span>
<a class="tag" taget="_blank" href="/search/BO/1.htm">BO</a>
                                    <div>http://www.sap.com/corporate-en/press.epx?PressID=14787 
  
有机会研究下EIM家族的两个新产品~~~~ 
  
New features of the 4.0 releases of BI and EIM solutions include:  
 
  Real-time in-memory computing – </div>
                                </li>
                                <li><a href="/article/3674.htm"
                                       title="Java线程中yield与join方法的区别" target="_blank">Java线程中yield与join方法的区别</a>
                                    <span class="text-muted">tomcat_oracle</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>长期以来,多线程问题颇为受到面试官的青睐。虽然我个人认为我们当中很少有人能真正获得机会开发复杂的多线程应用(在过去的七年中,我得到了一个机会),但是理解多线程对增加你的信心很有用。之前,我讨论了一个wait()和sleep()方法区别的问题,这一次,我将会讨论join()和yield()方法的区别。坦白的说,实际上我并没有用过其中任何一个方法,所以,如果你感觉有不恰当的地方,请提出讨论。 
&nb</div>
                                </li>
                                <li><a href="/article/3801.htm"
                                       title="android Manifest.xml选项" target="_blank">android Manifest.xml选项</a>
                                    <span class="text-muted">阿尔萨斯</span>
<a class="tag" taget="_blank" href="/search/Manifest/1.htm">Manifest</a>
                                    <div>结构 
继承关系 
public final class Manifest extends Objectjava.lang.Objectandroid.Manifest 
内部类 
 
 
 class Manifest.permission权限 
 class Manifest.permission_group权限组 
 构造函数 
 
public Manifest () 详细  androi</div>
                                </li>
                                <li><a href="/article/3928.htm"
                                       title="Oracle实现类split函数的方" target="_blank">Oracle实现类split函数的方</a>
                                    <span class="text-muted">zhaoshijie</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a>
                                    <div>关键字:Oracle实现类split函数的方 
项目里需要保存结构数据,批量传到后他进行保存,为了减小数据量,子集拼装的格式,使用存储过程进行保存。保存的过程中需要对数据解析。但是oracle没有Java中split类似的函数。从网上找了一个,也补全了一下。 
 
CREATE OR REPLACE TYPE t_split_100 IS TABLE OF VARCHAR2(100); 
 
cr</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>