遇到过的java面试题

java:
1.图书销售系统中,图书库存只有一本,但是A,B同时点击提交订单,怎么解决?
hibernate将id设置为自增
2.如何用jquery给列表中的div赋值?

<div id="id"></div>

$(function(){
$("#id").html("aaa");
}); 

3.将gbk转换成utf-8:

public class Test {
    public static void main(String args[]) throws IOException{
        //GBK编码格式源码路径 
        String srcDirPath = "E:\\UTF8\\shshtv3\\src"; 
        //转为UTF-8编码格式源码路径 
        String utf8DirPath = "E:\\UTF8\\shsht\\src"; 
                
        //获取所有java文件 
        Collection<File> javaGbkFileCol =  FileUtils.listFiles(
                new File(srcDirPath), new String[]{"java"}, true); 
                
        for (File javaGbkFile : javaGbkFileCol) { 
            
              //UTF8格式文件路径 
              String utf8FilePath = utf8DirPath+javaGbkFile.getAbsolutePath().substring(srcDirPath.length()); 
               //使用GBK读取数据,然后用UTF-8写入数据 
              FileUtils.writeLines(new File(utf8FilePath), "UTF-8", FileUtils.readLines(javaGbkFile, "GBK"));        
              System.out.println(utf8FilePath);
        }
    }
}

4:spring事务注解:@Transaction
5:过滤器和拦截器的区别:

  1. 拦截器是基于java的反射机制的,而过滤器是基于函数回调。
  2. 拦截器不依赖与servlet容器,过滤器依赖与servlet容器。
  3. 拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。
  4. 拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。
  5. 在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次。
  6. 拦截器可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在拦截器里注入一个service,可以调用业务逻辑。

6.当try、catch中有return时,finally中的代码会执行么?
在执行try、catch中的return之前一定会执行finally中的代码(如果finally存在),如果finally中有return语句,就会直接执行finally中的return方法,所以finally中的return语句一定会被执行的。编译器把finally中的return语句标识为一个warning.
7.java设计模式有哪些:创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程。
结构型模式:把类或对象结合在一起形成一个更大的结构。
行为型模式:类和对象如何交互,及划分责任和算法。
8.抽象类和接口的区别:

1.一个类可以实现多个接口 ,但却只能继承最多一个抽象类。
2.抽象类可以包含具体的方法 , 接口的所有方法都是抽象的。
3.抽象类可以声明和使用字段 ,接口则不能,但接口可以创建静态的final常量。
4.接口的方法都是public的,抽象类的方法可以是publicprotectedprivate或者默认的package5.抽象类可以定义构造函数,接口却不能

9.jdk和jre的区别:
1、jdk是Java开发工具包,而jre是Java的运行环境;
2、jdk提供了编译器javac等工具,而jre不包含开发工具;3、jdk是整个Java的核心,而jre是运行Java程序所必须环境的集合。

mysql:
1.有三个表,面试官评价表(assign),被面试者信息表(info),面试结果表(result),给定名称和面试时间,查询面试者的信息。
select * from result where name = “张三” and time =“2020/4/4”
2.分页(每页10条,显示第二页):select * from 表明 limit 10,10
3.having的作用:where无法和聚合函数一起使用,使用having可以让我们筛选分组后的各种数据
4.有一张(users表:username ,sex),查询不同性别的人数,并按照人数从大到小排列:
select u.sex ,count(*) coun from users u group by u.sex order by coun desc

linux:
一、常见命令
1.修改端口号 : ssh
2.修改系统时间 :date
3.创建文件夹:mkdir
4.查看进程信息:1.ps 查看当前终端下的命令 2.ps -aux 查看所有的进程(不是动态的)3.top 查看所有的进程(是动态的)4.htop (最牛叉的)
ps -a | grep helloworld 或ps -ef |grep helloworld 或者其他
5.vi插入一行空格快捷键 o

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值