IntelliJ IDEA基础使用学习笔记之Project与Module的区别

IntelliJ IDEA在业界被公认为最好的java开发工具之一,我们之前可能接触的大多数是eclipse多一点,俩者项目结构是相似的,但是名称有了变化,所以有时能让人产生疑惑。

1、IntelliJ IDEA系中的Project相当于Eclipse系中的workspace(工作区间),也就是一个工作区间,是最顶级的结构单元,就是一个目录的作用。

2.IntelliJ IDEA系中的Module相当于Eclipse系中的Project,和Eclipse的一个workspace有多个Project一样,IDEA的一个Project可以有多个Module。

但是两者的目录结构还是有区别的

workspace里边的project之间是没有关系的,是独立的,而idea中的project和Module是一种父子的关系,Module之间是一种兄弟关系,或者理解成是一种依赖关系。

JavaScript学习笔记之 document.body.scrollTop用法

一、

网页可见区域宽: document.body.clientWidth;
网页可见区域高: document.body.clientHeight;
网页可见区域宽: document.body.offsetWidth (包括边线的宽);
网页可见区域高: document.body.offsetHeight (包括边线的宽);
网页正文全文宽: document.body.scrollWidth;
网页正文全文高: document.body.scrollHeight;
网页被卷去的高: document.body.scrollTop;
网页被卷去的左: document.body.scrollLeft;
网页正文部分上: window.screenTop;
网页正文部分左: window.screenLeft;
屏幕分辨率的高: window.screen.height;
屏幕分辨率的宽: window.screen.width;
屏幕可用工作区高度: window.screen.availHeight;
屏幕可用工作区宽度:window.screen.availWidth;

二、

scrollHeight 获取对象的滚动高度。
scrollLeft 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth 获取对象的滚动宽度
offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
event.clientX 相对文档的水平座标
event.clientY 相对文档的垂直座标

event.offsetX 相对容器的水平坐标
event.offsetY 相对容器的垂直坐标
document.documentElement.scrollTop 垂直方向滚动的值
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量

要获取当前页面的滚动条纵坐标位置,用:
document.documentElement.scrollTop;
而不是:
document.body.scrollTop;

documentElement 对应的是 html 标签,而 body 对应的是 body 标签、

三、

pageXOffset 和 pageYOffset 属性返回文档在窗口左上角水平和垂直方向滚动的像素。

pageXOffset 设置或返回当前页面相对于窗口显示区左上角的 X 位置。pageYOffset 设置或返回当前页面相对于窗口显示区左上角的 Y 位置。

pageXOffset 和 pageYOffset 属性相等于 scrollX 和 scrollY 属性。

这些属性是只读的。

批量更新数据

UPDATE zn_safe_manager_fire_equipment SET organization_id = 26  WHERE organization_id in (27,28,29) ;

Hibernate使用二级缓存时,createSQLQuery需要注意的问题

Hibernate使用二级缓存时,createSQLQuery需要注意的问题

添加缓存之后不能返还个别属性,需返回整个实体。Java.lang.IllegalStateException: aliases expected length is 0; actual length is 1

Ubuntu部署项目部分命令

1、Ubuntu 16.04 设置MySQL远程访问权限

2、登录数据库:mysql -u root -p

3、SSH登录:ssh root@地址

4、查看防火墙状态:sudo ufw status

5、查看相关进程:ps -ef|grep java

6、关闭进程:kill -9 进程号

7、运行项目指令:nohup java -jar com-fangshuoit-gzf-api-0.0.1-SNAPSHOT.jar >gzf-9900.log &
首先需要进到自己springboot项目的根目录,然后执行如下linux命令
nohup java -jar 自己的springboot项目.jar >日志文件名.log 2>&1 &
命令详解:
nohup:不挂断地运行命令,退出帐户之后继续运行相应的进程。
日志文件名.log:是nohup把command的输出重定向到当前目录的指定的“日志文件名.log”文件中,即输出内容不打印到屏幕上,而是输出到”日志文件名.log”文件中。不指定文件名会在当前目录创建nohup.out,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。
2>&1:2就是标准错误,1是标准输出,该命令相当于把标准错误重定向到标准输出么。这里&相当于标准错误等效于标准输出,即把标准错误和标准输出同时输出到指定的“日志文件名.log”文件中。
java -jar 自己的springboot项目.jar:执行springboot的项目,如果单单只执行该命令,linux只会短暂的运行该项目,当退出控制台后会自动关闭该项目。
最后的&:让改作业在后台运行。

做简单轮播图以及悬浮广告总结

一、轮播图

1.布局及实现思路

我用的是叠加的方式

<div  id="long" >
  <div id="long1"><img src="http://a.hiphotos.baidu.com/image/h%3D300/sign=194caab2b50e7bec3cda05e11f2fb9fa/960a304e251f95caf1852c0bc4177f3e6709521e.jpg" width="300px" height="260px" /></div>
  <div id="long2">
    <img src="http://b.hiphotos.baidu.com/image/h%3D300/sign=d33763aa6fd0f703f9b293dc38fb5148/faf2b2119313b07e93a465b501d7912397dd8c75.jpg" width="300px" height="260px" />
  </div>
  <div id="long3">
    <img src="http://d.hiphotos.baidu.com/image/h%3D300/sign=d58f6cac5e43fbf2da2ca023807fca1e/9825bc315c6034a84d0cf125c6134954082376a3.jpg" width="300px" height="260px" />
  </div>

起初给他们的style中全部display:none;当哪张照片显示时哪个div的display:block;三个子容器的宽高都是一样的,然后每个子容器都相对父容器绝对定位,都是left:0;top:0;以达到重叠效果。

<style>
  *{
    margin: 0;padding:0;
  }
  #long{
    width: 300px;
    height: 260px;
    margin: 0 auto;
    position: relative;


  }
  #long1{
    width: 300px;
    height: 260px;
    position: absolute;
    left: 0;
    top:0;
    display: none;
  }
  #long2{
    width: 300px;
    height: 260px;
    left: 0;
    top:0;
  position: absolute;
    display: none;

  }
  #long3{
    width: 300px;
    height: 260px;
    left: 0;
    top:0;
    position: absolute;
    display: none;
  }

</style>

继续阅读“做简单轮播图以及悬浮广告总结”

前后端分离框架表单时间验证问题

1.表单提交信息

<i-col span="10">
 <i-form-item label="开始时间: " prop="startDate" required>
 <i-date-picker style="width: 100%" :clearable="false"
 v-model="formItem.startDate" type="date"
 format="yyyy-MM-dd"
 placeholder="选择活动时间"></i-date-picker>
 </i-form-item>
</i-col>

2.导入验证日期格式

import {validateDate} from '../../../../utils/validators'

3.验证信息

VO中对应字段可以是“”或null

ruleValidate: {
 'startDate': [
 {required: true, message: '请选择开始时间', validator: validateDate, trigger: 'change'},
 ],
 'endDate': [
 {required: true, message: '请选择接结束时间', validator: validateDate, trigger: 'change'},
 ],
},

4.其他情况说明

若VO中存在多层封装,类似于中宁水务系统中的教育培训,则无需上面2、3步骤,
<i-col span="20">
  <i-form-item label="培训时间: " prop="education.eduTime" required>
    <i-date-picker style="width: 100%" :clearable="false"
                   v-model="formItem.education.eduTime" type="date"
                   placeholder="选择活动时间"></i-date-picker>
  </i-form-item>
</i-col>
ruleValidate: {
 'education.eduTime': [
 {required: true, message: '请选择培训时间', type: 'date', triggers: ['blur', 'change']}
 ],
},

moment.js轻松管理日期和时间

https://blog.csdn.net/wulex/article/details/80402036

http://momentjs.cn/docs/

IntelliJ系列软件激活方法

1、安装好相关开发软件(IDEA或者WebStorm)。

2、打开http://idea.lanyus.com

3、添加hosts映射地址(0.0.0.0 account.jetbrains.com)。

4、打开软件获取激活码粘贴进去激活即可。