日常问题记录

SQL(结构化查询语言)是数据库中非常强大、重要的语言,其功能主要包括( )

数据定义、数据操纵、数据控制

Maven的生命周期是

clean
default
site

1、clean生命周期:清理项目,包含三个phase。

1)pre-clean:执行清理前需要完成的工作

2)clean:清理上一次构建生成的文件

3)post-clean:执行清理后需要完成的工作

2、default生命周期:构建项目,重要的phase如下。

1)validate:验证工程是否正确,所有需要的资源是否可用。
2)compile:编译项目的源代码。
3)test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
4)Package:把已编译的代码打包成可发布的格式,比如jar。
5)integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
6)verify:运行所有检查,验证包是否有效且达到质量标准。
7)install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。
8)Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。

3、site生命周期:建立和发布项目站点,phase如下

1)pre-site:生成项目站点之前需要完成的工作

2)site:生成项目站点文档

3)post-site:生成项目站点之后需要完成的工作

4)site-deploy:将项目站点发布到服务器

char c = (char) 68

A的整数值是65,而a的整数值是97

Spring有5种自动装配方式,其中autodetect默认使用?

  • no —— 默认情况,自动装配方式为手动装配,即通过ref手动设定
  • byName —— 根据属性名称自动装配,如果一个bean的名称和其他bean属性一致,则进行自动装配
  • byType——按照数据类型进行自动装配,如果一个bean的名称和其他bean的属性的数据类型一致,则进行兼容并自动装配
  • constructor ——通过构造函数参数的byType方式。
  • autodetect —— 如果找到默认的构造函数,使用“自动装配用构造”; 否则,使用“按类型自动装配”

Spring基于XML配置文件创建bean,使用的类型是?

BeanFactory

JSTL的相关包引用是?

jstl.jar

ava网站项目部署时,可以选择的Servlet容器有哪些?

  • Tomcat部署方式
  • Jetty部署方式
  • Jboss部署方式

下面不是 servlet容器

  • Nginx部署方式
  • IIS部署方式

JSP网站常见的Web服务器是什么?

Tomcat 服务器

目前最为流行的Tomcat服务器是Apache-Jarkarta开源项目中的一个子项目,是一个小型、轻量级的支持JSP和Servlet 技术的Web服务器,也是初学者学习开发JSP应用的首选。

Resin 服务器

Resin是Caucho公司的产品,是一个非常流行的支持Servlet和JSP的服务器,速度非常快。Resin本身包含了一个支持HTML的Web服务器,这使它不仅可以显示动态内容,而且显示静态内容的能力也毫不逊色,因此许多网站都是使用Resin服务器构建。

JBoss服务器

JBoss是一个种遵从JavaEE规范的、开放源代码的、纯Java的EJB服务器,对于J2EE有很好的支持。JBoss采用JML
API实现软件模块的集成与管理,其核心服务又是提供EJB服务器,不包含Servlet和JSP的Web容器,不过它可以和Tomcat完美结合。

WebSphere 服务器

WebSphere是IBM公司的产品,可进一步细分为 WebSphere Performance Pack、Cache Manager 和WebSphere Application Server等系列,其中WebSphere
Application Server 是基于Java 的应用环境,可以运行于 Sun Solaris、Windows NT 等多种操作系统平台,用于建立、部署和管理Internet和Intranet Web应用程序。

WebLogic 服务器

WebLogic 是BEA公司的产品,可进一步细分为 WebLogic Server、WebLogic Enterprise 和 WebLogic Portal 等系列,其中 WebLogic Server 的功能特别强大。WebLogic
支持企业级的、多层次的和完全分布式的Web应用,并且服务器的配置简单、界面友好。对于那些正在寻求能够提供Java平台所拥有的一切应用服务器的用户来说,WebLogic是一个十分理想的选择。

触发器和游标的区别是?

  • 触发器是特殊的存储过程,数据库发生特殊操作时执行的代码
  • 游标用来遍历内存中的结果集

truncate与delete有什么区别?

A. TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

B. TRUNCATE语句删除表时,不会产生回滚记录

C. delete删除数据会生成日志

Spring配置bean元数据的方式包括?

基于XML的配置方式
基于注解的配置方式
基于Java类的配置方式

JSP指定页面的编译编码是?

1.JSP指定页面的编译编码是?

下列关于SVN中版本回退的操作正确的是

svn revert

MyBatis操作数据库的核心对象是

SqlSessionFactory

JSP页面中如何嵌入Java代码?

页面中插入:<% Java代码; %>

Spring MVC中,关于Interceptor描述正确的是?

可以用来实现身份验证
可以用来实现日志记录

Spring中,事务控制机制的原理是什么?

Spring的事务控制是属于Spring Dao实现
支持编程式事务控制和声明式事务控制
细粒度的事务控制

在使用SVN过程中,当我们一个版本提交之后,通过以下哪些操作可以修改其日志信息

svn propset -r N –revprop svn:log “new log message” URL
svn propedit -r N –revprop svn:log URL

相关知识点: 第一种方法是让版本库管理员允许修订版本属性修改,这可以通过创建”pre-revprop-change”(更多相关细节可以看Subversion手册的这个小节)。钩子”pre-revprop-change”
可以在修改之前访问老的日志信息(例如,通过发送一个邮件),所以可以以某种方式保存它(例如,通过发送邮件)。一旦开启了修订版本属性修改,你可以通过svn propedit或svn
propset的–revprop选项修改修订版本属性,就像下面这个: $ svn propedit -r N –revpro

Apache和Tomcat中的关系?

Apache是HTTP服务器
Tomcat是Java JSP服务器

在Git中,如果分支开发完成,需要合并相应分支的代码,会使用到下面哪些命令 ()

git pull
git merge
git blame
git commit
相关知识点: git pull:是从一个仓库或者本地的分支拉取并且整合代码 git merge:把一个分支或或某个commit的修改合并到当前的分支上 git blame:可以显示该文件的修改、以及上次修改文件的内容 git
commit:将暂存区里的改动给提交到本地的版本库

在使用SVN的过程中,可以通过以下哪些指令查看某个文件的修改信息()

Diff
Diff with previous version
相关知识点: Diff和Diff with previous version可以查看某个文件的修改信息。Repo-browser为代码库浏览器,Show log 为查看日志。

Spring事务隔离级别包括?

ISOLATION_DEFAUL
ISOLATION_READ_UNCOMMITTED
ISOLATION_READ_COMMITTED
ISOLATION_REPEATABLE_READ
ISOLATION_SERIALIZABLE

1.TransactionDefinition.ISOLATION_DEFAULT: 使用后端数据库默认的隔离级别,Mysql 默认采用的 REPEATABLE_READ隔离级别 Oracle 默认采用的
READ_COMMITTED隔离级别。
2.TransactionDefinition.ISOLATION_READ_UNCOMMITTED: 最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复。
3.TransactionDefinition.ISOLATION_READ_COMMITTED: 允许读取并发事务已经提交的数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生。
4.TransactionDefinition.ISOLATION_REPEATABLE_READ: 对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改,可以阻止脏读和不可重复读,但幻读仍有可能发生。
5.TransactionDefinition.ISOLATION_SERIALIZABLE:
最高的隔离级别,完全服从ACID的隔离级别。所有的事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读。但是这将严重影响程序的性能。通常情况下也不会用到该级别。

如何开启MySQL的Binlog功能?

log-bin=mysql-bin

本文地址: https://github.com/maxzhao-it/blog/post/23cfc69f/