Blog | Raven Xu

Make positive impact


  • Home

  • Archives

  • Tags

  • About

MySQL简单优化

Posted on 2019-06-20 | In 知识角落
记录一下一些简单的在设计表结构方面对MySQL的简单优化。 MySQL中的两种临时表 varchar类型的长度怎么确定?有什么样的原则,和Text和LongText的区别是什么? mysql中int(1)中int后面的数字(简单介绍) mysql int(11)字段左边自动补零了 如上图,int所谓的长度不是他真的长度,设置为int就占4个字节,设置为tinyint就占一个字节 Mysql 如何设置字段自动获取当前时间 前后端分离,如何防止接口被其他人调用或恶意重发 常量表设计对于一些明显有类型的字符串数据,有两种技术方案 对于需要做到下拉列表里的数据,存储到常量表里 对于每次 ...
Read more »

Hexo处理{{}}报错

Posted on 2019-05-20 | In 知识角落
今天在更新博客时有关于Vue动态绑定的内容,动态绑定v-model属性是配合双括号这里报错来实现的 但是如果像上面图片里写这句话是会报错的呦,节选报错信息开头部分如下: 1234Template render error: (unknown path) [Line 1, Column 64] unexpected token: }} at Object._prettifyError (/Users/raven/workspace/blog/node_modules/nunjucks/src/lib.js:36:11) at Template.rend ...
Read more »

初探数据库连接池

Posted on 2019-05-15 | In 技术探究

参考资料

  • 数据库连接池学习笔记(一):原理介绍+常用连接池介绍
  • java数据库连接池实现原理
  • 高性能数据库连接池的内幕

为什么要使用连接池

数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。  一个数据库连接对象均对应一个物理数据库连接,每次操作都打开一个物理连接,使用完都关闭连接,这样造成系统的 性能低下。 数据库连接池的解决方案是在应用程序启动时建立足够的数据库连接,并讲这些连接组成一个连接池(简单说:在一个“池”里放了好多半成品的数据库联接对象),由应用程序动态地对池中的连接进行申请、使用和释放。对于多于连接池中连接数的并发请求,应该在请求队列中排队等待。并且应用程序可以根据池中连接的使用率,动态增加或减少池中的连接数。 连接池技术尽可能多地重用了消耗内存地资源,大大节省了内存,提高了服务器地服务效率,能够支持更多的客户服务。通过使用连接池,将大大提高程序运行效率,同时,我们可以通过其自身的管理机制来监视数据库连接的数量、使用情况等。 

Read more »

认真搞清楚static, final, final static

Posted on 2019-05-12 | In 知识角落

static

为什么要用static?
有一些频繁使用的东西,如果你每次使用都重新new一下,那么这个开销可能会很高,如果使用static,一直放在内存中,那么想用就直接用,而不需要重新new一块空间初始化数据。那么static就是为了实现一个系统的缓存作用的,其生命周期直到应用程序退出结束。
这说明,static修饰的类成员,在程序运行过程中,只需要初始化一次即可,不会进行多次的初始化。static可以修饰:方法,属性,代码段,内部类(静态内部类或嵌套内部类)
主要有四种用法:

static成员变量

用来修饰成员变量,将其变为类的成员,从而实现所有对象对于该成员的共享
静态变量和非静态变量的区别是:

  • 静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。
  • 非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。
    static不允许用来修饰局部变量,只能修饰成员变量。

static方法

用来修饰成员方法,将其变为类方法,可以直接使用“类名.方法名”的方式调用,常用于工具类

  • 首先,在静态方法中不能访问类的非静态成员变量和非静态成员方法。
    原因:非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。在一个类的静态成员中去访问其非静态成员之所以会出错是因为在类的非静态成员不存在的时候类的静态成员就已经存在了,访问一个内存中不存在的东西当然会出错。
  • 其次,即使没有显示地声明为static,类的构造器实际上也是静态方法。

static代码块

静态块用法,将多个类成员放在一起初始化,使得程序更加规整,其中理解对象的初始化过程非常关键
static块可以用来优化程序性能,是因为它的特性:只会在类加载的时候执行一次。
很多时候会将一些只需要进行一次的初始化操作都放在static代码块中进行。

一个Java文件从编码完成到最终执行,一般主要包括两个过程

  • 编译
  • 运行
    编译,即把我们写好的java文件,通过javac命令编译成字节码,也就是我们常说的.class文件。
    运行,则是把编译声称的.class文件交给Java虚拟机(JVM)执行。
    而我们所说的类加载过程即是指JVM虚拟机把.class文件中类信息加载进内存,并进行解析生成对应的class对象的过程。
    举个通俗点的例子来说,JVM在执行某段代码时,遇到了class A, 然而此时内存中并没有class A的相关信息,于是JVM就会到相应的class文件中去寻找class A的类信息,并加载进内存中,这就是我们所说的类加载过程。

由此可见,JVM不是一开始就把所有的类都加载进内存中,而是只有第一次遇到某个需要运行的类时才会加载,且只加载一次。

Read more »

东软睿道实训杂记

Posted on 2019-05-08 | In 学习笔记

Introduction

  • 内容:Java互联网架构基础知识
  • 时间:2019.05-07 - 2019.07.05
  • 背景:软件学院大三下学期9学分企业项目实训

1. Contents

  • Day 1 - Day 3: MyBatis
  • Day 4 - Day 5: Spring IoC
  • Day 6 - Day 7: Spring AOP
  • Day 8 - Day 12: Spring MVC
  • Day 13 - Day 13: Springboot
  • Day 14 - Day X: Team Project (First Part)
  • Working…

2. Warning

⚠️受本人学识所限,本笔记项目的学习意义不大,更多地可作为同期课程同学对课堂知识的一个回顾即课程讲义。如果对您有帮助的话,烦请为我点一个Star😋

3. Contribution

欢迎各位大佬在本项目发起PR或在Issues里留言邀请您成为协作者,共同完善本文档

1
git clone https://github.com/Raven98/Neuedu.git

为了获得更优阅读体验,您可移步至我的博客:
东软睿道实训杂记


Day 1 - Day 3: MyBatis

  • 参考代码
  • MyBatis 英文文档
  • MyBatis 中文文档

本文内容很大程度地参考了官方文档,mybatis有中文版本的文档并且极其简洁,推荐阅读

1. 了解MyBatis

  • 优秀的持久层框架
  • 支持定制化 SQL、存储过程以及高级映射
  • 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集
  • 使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录
Read more »

自动驾驶技术简介

Posted on 2019-04-14 | In 知识角落
本文写于19年4月智能驾驶技术课程参考书籍 第一本无人驾驶技术书, 2017 Creating Autonomous Vehicle Systems, 2018
Read more »

0328-校招面试初体验&这一年

Posted on 2019-03-28 | In 杂文随笔

试试看

前些日子腾讯来我校开暑期实习宣讲会,现场人多到爆因为腾讯有年头没来我们学校开宣讲会了,今年能来实属不易,也感谢学院老师们背后的默默付出还有在腾讯工作的学姐学长们的努力。
因为是要读研,所以一直也没太准备找工作方面的事情,但感觉可以试试看,看看自己有没有能力通过第一关
索性投了WXG微信事业群的后台开发岗位。

Read more »

0327-记在葫芦实习的六个月

Posted on 2019-03-27 | In 杂文随笔
葫芦和葫芦科技的第一次接触是在18年9月,当时有幸在林根大佬的带领下接触到葫芦科技。葫芦科技是一家创业公司,挂靠在东北大学东创空间旗下。短短六个月来持续开发维护运营了“weNEU小程序”、“东大葫芦服务号”、“享问3.0”等有趣的应用,也参与策划了“东大锦鲤”、“东大女生节”、“元旦晚会游戏”、“年终总结”等活动~六个月来认识了很多小伙伴,才发现有这么多和我同届但早已在创业方面做出很多成果的同学。 再见因为四月开始要忙于准备读研相关的事情,可能要暂时离开葫芦了,感谢大家一直以来的帮助,有缘再见~
Read more »

什么是模型?

Posted on 2019-02-03 | In 知识角落

什么是模型?

最近在上人工智能课程,总看到模型model一词。加之一月份又要参加2019年的数学建模美赛,所以对「模型」这个概念感到很好奇。和『大佬』这些词一样,都是上大学后才了解到的。
关于模型,摘抄原文如下:

A model can come in many shapes, sizes, and styles. It is important to emphasize that a model is not the real world but merely a human construct to help us better understand real world systems. In general all models have an information input, an information processor, and an output of expected results. Modeling Methodology for Physics Teachers (more info) (1998) provides an outline of generic model structure that is useful for geoscience instruction. In “Modeling the Environment” Andrew Ford gives a philosophical discussion of what models are and why they are useful. The first few paragraphs of Chapter 1 of Ford’s book are worth a look.
Key features in common with the development of any model is that:

  • simplifying assumptions must be made;
  • boundary conditions or initial conditions must be identified;
  • the range of applicability of the model should be understood.

概括地来说,模型首先不局限于形式,有很多表达方式。它用来抽象现实世界的某一个方面。
模型有输入,处理机制和输出。我们要优化我们的处理机制以便让由输入得到的输出符合我们的期待。
有接触到的比如数模里的函数,AI课学习的「决策树」『minimax』等,模型有很多不同的表达形式。或许使用最多的还是函数。

Read more »

常用字符编码整理

Posted on 2018-11-15 | In 技术探究

背景

这两天在预习人工智能课要用的的python语言,循着廖雪峰老师的博客在学习。
发现教程里再次提到了关于各种编码的事情,我想有必要单独写一篇文章也算是一种总结。

字符编码

因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。

Read more »
1…678

79 posts
7 categories
178 tags
RSS
LinkedIn GitHub Zhihu Email
© 2022 Raven Xu
本站总访问量
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4