Hibernate之Session操作


session.save(Object object); //增加
session.update(Object object);//修改
session.saveOrUpdate(Object object);//主键字段有值则修改,无则新增。
session.delete(Object object);//删除
session.createQuery(String HQL);//按HQL语句查询
session.createCriteria(Class entityClass);//按实体进行QBC查询 
session.load(Class entityClass,Serialize id); //根据id查询,延迟加载。
session.get(Class entityClass,Serialize id); //根据id查询,立即加载。
//Restrictions查询用法
HQL运算符	QBC运算符		含义
=		Restrictions.eq()	等于equal
<>		Restrictions.ne()	不等于not equal
>		Restrictions.gt()	大于greater than
>=		Restrictions.ge()	大于等于greater than or equal
<		Restrictions.lt()	小于less than
<=		Restrictions.le()	小于等于less than or equal
is null		Restrictions.isnull()	等于空值
is not null	Restrictions.isNotNull() 非空值
like		Restrictions.like()	字符串模式匹配
and		Restrictions.and()	逻辑与
and		Restrictions.conjunction() 逻辑与
or		Restrictions.or()	逻辑或
or		Restrictions.disjunction() 逻辑或
not		Restrictions.not()	逻辑非
in(列表)	Restrictions.in()	等于列表中的某一个值
not in(列表)	Restrictions.not(Restrictions.in()) 不等于列表中任意一个值
between x and y Restrictions.between()	闭区间xy中的任意值
not between x and y Restrictions.not(Restrictions..between()) 小于值X或者大于值y

application.properties中文乱码


原因:
当在程序中读取application.properties值时
默认是以ISO-8859-1的字符编码读取

解决办法:
1.添加配置
banner.charset=UTF-8
server.tomcat.uri-encoding=UTF-8
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
spring.messages.encoding=UTF-8

2.设置文件字符编码
进入File -> Settings -> Editor -> File Encodings
将Properties Files (*.properties)下的Default encoding for properties files设置为UTF-8
将Transparent native-to-ascii conversion前的勾选上
点击ok

码云JavaDoc的使用


Gitee最近又推出了一个新的服务,JavaDoc
此服务的主要作用就是:
将打包时生成的javaDoc文档部署到对应路径
以便远程访问

注意:
1.项目pom文件需引入JavaDoc的Jar包
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.0.0</version>
</plugin>
2.项目设置中编程语言选中Java
否则服务中不会出现JavaDoc的选项

Oracle数据库安装教程


1.下载链接:
https://www.oracle.com/technetwork/cn/database/enterprise-edition/downloads/112010-win64soft-086667-zhs.html

2.点击下载:
win64_11gR2_database_1of2.zip
win64_11gR2_database_2of2.zip

3.解压
将两者解压到同一个文件夹下

4.点击setup

5.弹出Installer,加载中

6.安装选项
邮箱可以不填,(之后会提示你是否不希望收到安全更新的通知,点击“是”)把更新的“√”去掉。

7.选择创建和配置数据库

8.选择桌面类

9.选择安装路径并输入口令(密码)
要确保安装盘的内存在有4G以上够用就行

10.条件检查
如果有失败或者全部失败可以选择全部忽略

11.安装
点击完成后开始安装

如安装错误:未找到wfmlrsvcapp.ear
请参考:https://blog.csdn.net/singit/article/details/70832723



Canvas实现圆圈移动


<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="Justin">
  <meta name="Keywords" content="canvas">
  <meta name="Description" content="canvas study">
  <title>canvas_study</title>
 </head>
 <body>
 <div>
	<canvas id="test" width="600" height="600" 
          style="border:1px solid #000000;margin-left:300px"></canvas>
 </div>
 </body>
</html>
<script>
        //用于保存鼠标移动前的坐标
	var x=-100;
	var y=-100;
	//获取鼠标当前位置
	function mousePosition(ev){
	   if(ev.pageX || ev.pageY){
	     return {x:ev.pageX, y:ev.pageY};
	   }
	   return {
	     x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
	     y:ev.clientY + document.body.scrollTop - document.body.clientTop
	   };
	}
	document.onmousemove = mouseMove;
	
	var c=document.getElementById("test");
		var ctx=c.getContext("2d");
		//线
		ctx.moveTo(0,0);
		ctx.lineTo(600,600);
		ctx.moveTo(0,600);
		ctx.lineTo(600,0);
		ctx.stroke();
        //鼠标移动时执行
	function mouseMove(ev){
		 ev = ev || window.event;
		 var mousePos = mousePosition(ev);
		//清除上一个圆
		clear();
		
		
		var c=document.getElementById("test");
		var ctx=c.getContext("2d");

		//线
		ctx.moveTo(0,0);
		ctx.lineTo(600,600);
		ctx.moveTo(0,600);
		ctx.lineTo(600,0);
		ctx.stroke();
                //圆
		ctx.beginPath();
		ctx.arc(mousePos.x-300,mousePos.y,40,0,2*Math.PI);
		ctx.stroke();
		x=mousePos.x;
		y=mousePos.y;
	}

	function clear(){
		var c=document.getElementById("test");
		var ctx=c.getContext("2d");
		ctx.clearRect(0,0,600,600);
	}
	
</script>


vue启动报错:Module build failed: Error: No parser and no file path given, couldn’t infer a parser.


报错信息:
Module build failed: Error: No parser and no file path given, couldn't infer a parser.

解决方案:
npm i prettier@~1.12.0

之后重新运行即可

Vue组件之间的引用


以下介绍的引用方式只是多个引用方式中的一种

A引用B
<!-- A -->
<template>
  <test></test>
</template>

<script>
  import test from './Eu'

  export default {
    name: 'index',
    components: {
      test
    }
  }
</script>

<!-- B -->
<template>
  <h2>
    引用内容
  </h2>
</template>
<script>
  export default ({
 //此处name是否设置作用不大
    name: 'eu'
  })
</script>


Vue项目中引入ElementUI


前提:
1.该项目为idea中vue项目
2.已安装node和npm

步骤:

1.打开idea的Terminal(cmd或其它也可以)

2.移动到vue项目下

3.执行:npm install element-ui -S
打印日志为:
npm WARN ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

+ element-ui@2.3.9
added 67 packages and updated 1 package in 28.606s

4.可以到项目下的node_modules查看是否有element-ui文件夹

5.在main.js中添加
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

Vue.use(ElementUI)
6.在创建的组件中使用element-ui
<template>
  <div>
    <i class="el-icon-edit"></i>
  </div>
</template>

Idea无法识别vue文件问题


无法识别的意思是打开文件代码显示为灰色,且没有代码提示

此方法同样适用其他文件没有被识别

1.打开settings,搜索File Types

2.在Recognized File Types中选中HTML

3.Registered Patterns中添加“*.vue”

4.点击Apply,点击OK

idea下创建Python项目


1.安装Python到本机(打开cmd输入python检测是否安装正常)

2.安装idea的python插件(如手动下载插件请注意查看版本)

3.新建项目或module(此处以新建module为例)

4.选择python,点击下一步

5.填写项目名,finish

注:易出现问题的地方就是手动安装插件时版本不一致导致idea集成失败