首页 > 学院 > 开发设计 > 正文

实习零散知识

2019-11-08 03:22:48
字体:
来源:转载
供稿:网友

本文来自于摘抄总结

1、@Override重写父类方法

如果想重写父类的方法,比如toString()方法的话,在方法前面加上@Override 系统可以帮你检查方法的正确性,@Overridepublic String toString(){...}这是正确的一旦写错 写成这样@Overridepublic String tostring(){...}编译器可以检测出这种写法是错误的 这样能保证你的确重写的方法正确而如果不加@Overridepublic String tostring(){...}这样编译器是不会报错的 它只会认为这是你自己新加的一个方法而已

2、@Configuration

用@Configuration注解的类,等价于xml中配置beans

3、@Bean

用@Bean标注方法等价于XML中配置的bean

4、@Autowired进行自动注入

SPRing通过@Autowired注解Bean的依赖注入,@Autowired注入式按照类型注入的,只要配置文件中的bean类型需要和bean类型是一致的,这时候注入就没有问题。但是如果相同类型的bean不止一个,此时注入就会出现问题,Spring容器就无法启动

5、@Resource按照bean的名字来进行注入

如果我们没有使用@Resource时指定bean的名字,同时Spring容器中又没有该名字的bean,这时候@Resource就会退化成@Autowired即按照类型注入,这样就有可能违背使用@Resource的初衷。所以建议在使用@Resource时都显示指定一下bean的名字@Resource(name="xxx")

6、@Primary优先选择

在Spring中使用注解,常使用@Autowired,默认是根据类型Type来自动注入的。但有些特殊情况,对同一个接口,可能有几种不同的实现类,而默认只采取其中一种的情况下@Primary的作用就出来了。

7、@Qualifier调整基于注解的字哦那个注入

在基于类型的自动注入中,若出现了多个实例Bean,@Primary是一个高效的方式来决定注入那个示例。若想在选择Bean的过程中拥有更多的控制,可以使用Spring的@Qualifier注解。可以在指定参数上使用@Qualifier,可以缩小类型匹配的范围,更容易找到指定的Bean.例如@Qualifier("main")。

8、@Transactional 

在Spring中@Tansactional提供一种控制事务管理的快捷手段。基于动态代理的机制,提供了一种透明的事务管理机制,方便的解决在开发中碰到的问题。

9、Spring Boot

Spring Boot 是 Spring 产品中一个新的子项目,致力于简便快捷地搭建基于 Spring 的独立可运行的应用。大多数的 Spring Boot 应用只需要非常少的 Spring 配置。

10、YAML语言

YAML 是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便。

11、jetty

Jetty是一个提供HHTP服务器、HTTP客户端和javax.servlet容器的开源项目。

12、OAuth

OAuth 是一种分布式身份验证和授权的开放标准。它于 2006 年由 Twitter 和业务合作伙伴 Ma.gnolia 开发,用来方便地创建一些桌面小部件,这些小部件可以显示来自已身份验证服务的信息。您不再需要编写算法来执行强密码,或者处理忘记密码的问题,或者强制用户定期更改其密码。

13、Grails中的mvc

Grails 是一个遵循 MVC 设计模式的 Web 开发框架。它分别用 Domain Class、View、Controller 对应于 MVC 的模型、视图和控制器。可以简单的把一个 Domain Class 理解为数据库中的一张表,Grails 在底层通过 Hibernate 将 Domain Class 和数据库的表进行了映射。View 在 Grails 中指的是 GSP 页面(注意是 GSP 不是 jsp),它用于显示用户界面。GSP 与 JSP 类似,既可以编写静态网页的元素,也可以嵌入 Groovy 代码实现动态内容。Controller 在 Grails 中充当着重要的角色:它可以响应用户的请求,可以接收用户提交的表单,还可以访问模型的数据,并传递给 View。

14、Hibernate

工作原理:

(1)读取并解析配置文件 。(2)读取并解析映射信息,创建sessionFactory。(3)打开Session 。(4)创建事务Transation 。(5)持久化操作 。(6)提交事务 。(7)关闭Session 。(8)关闭SesstionFactory 。

优势:

(1)对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。(2) Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现,很大程度的简化DAO层的编码工作 。(3)Hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。(4)Hibernate的性能非常好,因为它是个轻量级框架,映射的灵活性很出色,它支持各种关系数据库,从一对一到多对多的各种复杂关系。 

15、MVC

Controller截获用户通过鼠标或键盘发出的请求,然后改变Model的状态,Model通过Observer Synchronization(观察者模式)通知View自己的状态发生了变化。View查询Model展现数据。

16、从一台到另外一台服务器

ssh spiderdt@192.168.1.3

然后 docker ps显示哪些运行在docker上面

17、压缩和解压

压缩:

tar -cvf destination.tar.gz source 

destination.tar.gz为目标压缩文件

source为源文件或源文件夹

解压:

tar -xvf cache-api.tar.gz

18、重要命令记录

grails 

create-app cache-api 创建app

run-app -port=2222部署到2222端口

create-controller applicationController 创建controller

create-service PsqlService 创建service

create-domain-class cache 创建domain

19、IntelliJ IDEA的优化导包设置路径

Settings | Editor | General | Auto Import and Optimize imports option in the Commit Project dialog.勾选后会自动删除不要的import

20、查看cpu和内存

cat /proc/cpuinfo 查看cpu

free -m 查看内存

21、grails删除

使用grails常见生成代码如上,生成是能生成,但是怎么删除呢?使用grails help查看发现也没有delete或者remove代码。网上查了一下,没有自动删除的代码,只能手动删除,拿grails create-domain-class Race这一句为例,仅仅需要删除racetrack/test/unit/racetrack/RaceTests.groovy和racetrack/grails-app/domain/racetrack/Race.groovy

22、linux查看目录结构

tree命令

23、vi是vim的升级版

24、vi基本操作:

:set nu 显示行数

u 撤销

5dd 删除5行

一些常用命令案例:1.删除指定的某些行命令:(命令行命令模式)m,nd释义:m是从第m行开始;n是从第n行开始;d是删除操作。之后回车即可。例子:删除m到n之间的行数step1:(命令行命令模式):m,nd——输入从第m行到当前位置的删除命令step2:(命令行命令模式)回车——执行删除命令2.复制指定的某些行命令:(命令行命令模式):m,ny释义:m是从第m行开始;n是从第n行开始;y是删除操作。之后回车即可。例子:复制m到n之间的行数step1:(命令行命令模式):m,ny——输入从第m行到当前位置的删除命令step2:(命令行命令模式)回车——执行复制命令3.选中指定的某些行命令:(一般模式)mGVnG释义:mG是从第m行开始;nG是直到第n行;V是进入可视模式。之后可以进行复制(y)、删除(d)操作。例子1:选中m到n之间的行数step1:(一般模式):mGVnG——输入从第m行到第n行选中例子2:全选step1:(一般模式):ggVG——全选选中4. vim多行注释/删除注释注释:ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I,再插入注释符,比如"//",再按Esc,就会全部注释了。删除:先按v,进入visual模式,横向选中列的个数(如"/ /"注释符号,需要选中两列),再按Esc,再按ctrl+v 进入列编辑模式,向下或向上移动光标,选中注释部分,然后按d, 就会删除注释符号。5. 编程时自动补全成员CTRL+N/P,n是向下找,p是向前找

24、切换

ssh 192.168.1.3

25、查看docker运行程序

docker ps

26、获取config里面application.yml的配置

//Retrieve property 'foo.bar.greeting' without specifying type (default is String), otherwise use value "Hello"        def greeting = grailsApplication.config.getProperty('foo.bar.greeting', "Hello")

27、 @Value('${foo.bar.hello}')  

In Groovy code you must use single quotes around the string for the value of the Value annotation otherwise it is interpreted as a GString not a Spring expression.


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表