false

7.8 磅
0
2
false
false
false
false

EN-US
ZH-CN
X-NONE


/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman",serif;}

1、转发和重定向的区别是什么

转发是在项目内部资源页面跳转,转发是继续传递请求(效率高),转发是通过request实现,转发后地址栏不改变

request.getRequestDispatcher(“页面名”).forward(request,response);

重定向可以跳转到任何页面,重定向是新的请求(效率不如转发),重定向是通过response实现,地址栏会改变

response.sendRedirect(“页面名”);

request.setAttribute(“名字”,值);

response.sendRedirect(“xxx.jsp”);

注意:下一个页面无法取出request中存储的数据,因为是新的请求

2、http提交请求有哪两种方式,区别是什么?

get/post

区别:get可以在地址栏显示传递的数据(不安全),get有长度限制,只能传递文本数据,效率高于post

Post传递的数据不会在地址栏显示(安全),post无长度限制,能传递任何数据,效率低于get

Servlet中接收请求后一定会执行的方法是以下哪个(C)

A.doGet()    B.doPost()    C.service()    D.init()

如果一个servlet冲存在doGet、doPost、service三个方法,那么只会执行service

3、Spring的核心思想有哪两个技术点

Spring核心思想:IOC、AOP

IOC:控制反转/依赖注入(DI),将对象之间的关系在编码外的配置文件中进行配置

AOP:面向切面编程设计,将项目中的共性问题抽离出来集中解决

4、Sql中声明变量的语法是什么?赋值有哪两种方式

declare @变量名 类型

Delare @name varchar(30)

Set @name = ‘jack’    赋予固定值,同时只能给1个变量赋值

Select @name = ‘jack’  可以给多个变量赋值,一般是将查询的结果赋值给某变量,如:

Declare @myCount int = 0;

Select @myCount=count(*) from 表

5、ORM是什么?Hibernate是一种什么技术

ORM:对象关系映射 将类和数据库的表进行映射关联,操作类对象时,自动根据映射去产生sql语句及jdbc代码

Hibernate是一种实现了ORM思想,封装了jdbc的一种数据库操作技术

6、Struts2的控制器分哪两种?

1)核心控制器(StrutsPreparedAndExecuteFilter)

它是一个过滤器,负责处理所有的请求

2)业务控制器(平时自己建立的XXXXAction类)

Struts2中的每个请求都会创建对应的Action实例

7、Struts2的Action如何完成配置(写出大概的框架例子即可)

<package name=”包名” extends=”struts-default” namespace=”访问的路径”>

<action name=”访问名” class=”包名.类名”>

<result name=”名字” type=””>页面</result>

</action>

</package>

页面返回的类型:

Dispatcher(默认,转发)

Redirect(重定向)

redirectAction(重定向到其他Action)

8、IOC是什么?代表什么意思,有哪两种注入方式?

IOC:控制反转/依赖注入(DI),将对象之间的关系在编码外的配置文件中进行配置(降低耦合)

Set注入

构造注入(时机更早一些)

<bean id=”emp” class=”com.scme.Employee”>

<property name=”age” value=”20” />

</bean>

以上property说明,Employee类中一定有一个setAge方法

9、AOP是什么意思,代表什么意思?有哪几种通知类型

AOP:面向切面编程设计,将项目中的共性问题抽离出来集中解决

Aop是面向对象的补充扩展,不是替代。Aop是横向的设计,面向对象是纵向

前置通知

后置通知

环绕通知

异常通知(拦截目标方法的执行)

AOP主要是通过”代理”设计模式实现,代理有两种方式:

1)>jdk动态代理(默认)

2)>cglib类代理方式

10、Hibernate中的对象有哪几种生命周期状态

瞬时(临时):刚new的对象

持久化:调用save、load、get等方法

游离:session.close  session.clear   session.evict

11、SSH中几个常用bean的注入方式是什么?如DataSource注入给谁。

DataSource-->sessionFactory-->Dao--->Service--->Action

当我们的Dao继承HibernateDaoSupport后,那么必须要注入sessionFactory

12、<jsp:useBean是什么意思,完成一个完整的写法例子,它的存储范围有哪几个

<jsp:useBean id=”对象名” class=”包名.类名” scope=”request” />

等价于在jsp中:

<%

类名 对象名 = new 类名();

%>

Scope代表该对象存在的范围

Page      --当前页面范围有效

Request   --转发后的下一个页面有效

Session   --整个会话范围

Application   ---整个项目范围(全局、最大)<网页的计数器>

13、Hibernate中cascade是什么意思,有哪几个取值

Cascade级联操作

取值:all   save-update   delete   none

14、Hibernate中延迟加载的属性是什么?=true和=false什么意思,默认是什么

Lazy=”true”  延迟  -------默认

Lazy=”false”  不延迟(立即)

15、Hibernate中setFirstResult和setMaxResult是什么意思

setFirstResult(数字)---从第几条开始取,下标从0开始

setMaxResult(数字)---取多少条记录

setFirstResult(4),  从第5条开始取

setMaxResult(8),  取8条记录

16、Page、request、session、application的存储作用域分别是什么

Page      --当前页面范围有效

Request   --转发后的下一个页面有效

Session   --整个会话范围(不同的客户端有不同的session)

Application   ---整个项目范围(全局、最大)<网页的计数器> 不同的项目有不同的application

17、Struts2中的XXXAction中如何访问request、session、application对象

HttpServletRequest req = ServletActionContext.getRequest();

HttpSession session = req.getSession();

ServletContext application = ServletActionContext.getContext();

18、SSH中需要改变那些配置文件,分别改变那里是做什么用的?

如监听器:在那里配置,如何配置

Web.xml: Struts2的核心控制器和监听器

Struts.xml: 配置Struts2的属性和配置action

applicationContext.xml:配置对象之间的依赖关系

Hibernate.cfg.xml:配置hibernate的属性

实体类.hbm.xml:实体类和数据库表的映射信息

19、为了规范Struts中的Action写法,一般我们会实现哪个接口或者继承哪个类

Action接口

ActionSupport类

20、Servlet的生命周期是什么,分别在什么时候执行。

加载   --服务器启动时

实例化  ---第一次请求时

初始化(init)  ---第一次请求时

服务(service--doGet/doPost)    ---每次请求时

销毁(destroy)    ---服务器停止时

Servlet完成后需要在web.xml中配置其访问路径,否则无法使用

<servlet>

<servlet-name>名字</servlet-name>

<servlet-class>包名.类名</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>名字和上面对应</servlet-name>

<url-pattern>/test</url-pattern>

</servlet-mapping>

那么要进入该servlet,则请求最后要提交的就是/test,如项目名是book,那么访问为:

http://ip:端口/book/test  即可访问该servlet

21、Jsp的执行原理是什么?为什么第二次访问jsp页面时比第一次访问要快

Jsp----翻译(转义)成java---编译成class,最终运行这个class,向客户端输出静态的html

因为jsp页面第一次访问时,需要转义和编译的过程,第二次就不需要了.

22、]>javaWeb中的MVC指什么,Model1时期时控制器是谁,Model2时期时控制器是谁

MVC:设计模式

Model 模型 javabean(实体类、Dao、service类)

View   视图(jsp)

Controller  控制器(servlet)

Model1:最早时期的javaweb应用,控制器jsp担任

Model2:目前,控制器servlet、Action

23、现在有班级表(ClassInfo)和学生表(StudentInfo),其中学生表中有一个claId为该学生所在的班级ID(外键),现在要查询出班级名称是”1403”的男同学信息,请完成sql语句(使用子查询)

Select * from StudentInfo where claId = (select claId from ClassInfo where claName = ‘1403’) and stuSex = ‘男’

注释:1403是班级的名称,只在班级表中,学生表中只有班级的id,并非班级名称。

24、Hibernate是一个对象关系映射框架,它是如何映射的(什么对应什么)?

类----表

属性----列

对象-----行记录

25、sessionFactory是一个重量级还是轻量级的对象,一般项目中创建几个?

重量级对象,一个项目中一个即可

Ssh中,由spring负责创建它,LocalSessionFatoryBean

26、Hibernate中inverse是什么意思,一般设置在哪个标签上,设置为什么值的时候效率高

inverse代表关系中谁作为主控方

一般设置在1方的<set标签上,设置为true的时候代表对方(多方)为主控方,效率高

27、Hibernate.cfg.xml是配置什么的?实体和表的映射信息配置在哪个配置文件中

配置hibernate的一些全局属性,如数据库连接、方言dialect、show_sql等

实体和表的映射信息存储在各自的 xxxx.hbm.xml文件中

28、Struts2中action请求处理方法一般返回的字符串,该字符串和那里的配置对应。它默认的返回类型是什么?有哪几种返回方式

在struts.xml中的<result name=”xxx” 中进行配置

默认是转发

Dispatcher

Redirect

redirectAction

29、如果jsp页面要导入标签库,则需要使用的指令是?其中uri、prefix代表什么意思

<%@ taglib uri=”标签的地址” prefix=”前缀” %>

C标签:

<%@ taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>

Struts标签:

<%@ taglib uri=”/struts-tags” prefix=”s” %>

30、Struts2的action是单例的还是每次请求都会创建action对象

Action是每次请求都会创建action对象

Struts1的action是单例的

Servlet也是单例的

31、Ajax 是一种什么技术,其中xmlHttpRequest的状态值有哪几种,分别是什么时候变化。在服务器端返回xml数据时,如何获取返回的信息xmlHttpRequest.responseXXXX什么获取

Ajax是一种页面无刷新技术

xmlHttpRequest负责整个ajax中的通信,发送请求接收数据

readyState有5个状态值:

0  刚创建

1  准备发送

2  已发送

3  接收数据中

4  接收完毕

32、http返回的状态吗分别代表什么意思

404--------资源找不到

200---------处理成功

500---------服务器报错

33、Webservice使用什么协议通信

SOAP协议

Webservice中包含了:xml/xsd  soap   wsdl

34、http访问时的默认端口号是什么?Tomcat的默认端口号是什么,可以改变吗?Sqlserver的默认端口号是什么?

80端口

Tomcat默认是:8080

Sqlserver默认端口:1433

35、客户端禁用Cookie时,如何实现会话跟踪

url重写

36、Session和Cookie分别存储在那里?

Session是存储在服务器端的信息

Cookie是存储在客户端

37、OGNL是struts2访问数据的语法,其中OGNL的根是什么

ValueStack

OGNL访问数据时都要加 #

38、在action中session是从哪里获取出来的,request如何获取

HttpServletRequest request =ServletActionContext.getRequest();

HttpSession session = request.getSession();//如果没有session则创建一个

HttpSession session = request.getSession(false);//如果没有session则返回null

Tomcat中session默认存活的时间:30分钟

可以在tomcat下conf中的配置文件中改成存活时间

也可以直接调用session的

session.setMaxAge(时间);-----秒

39、下列代码能够在下一个jsp页面中取出数据吗,为什么

request.setAttribute(“name”,”zhang”);

response.sendRedirect(“http://localhost:8080/servlet/MyServlt”);

下一个jsp是否能够取出request中存储的name属性

答:不能取出,因为重定向是一个新的请求

40、在servlet中如何获取表单提交请求中的数据,如文本框的数据,再如获取多个名字相同的checkbox中的值

String n = request.getParameter(“name”);

String[] as = requset.getParameterValues(“名字”);

41、C标签如何循环集合中的数据,写出一个简单的架构即可。Strtus2标签如何循环

<c:forEach items=”${集合}” var=”对象名” varStatus=”状态信息” >

</c:forEach>

<s:iterator value=”#attr.集合名” id=”对象名” status=”状态信息”>

</s:iterator>

42、Hibernate中的session常用的方法有哪些,作用是干什么

Session.save   保存对象

session.saveOrUpdate  --增加或修改(根据对象的主键id)

Session.update

Session.get

Session.load

Session.delete

session.close

43、Hibernate中通过get和load都可以根据id查询一个对象,区别是什么?

get和load都会查询1级缓存

get是立即加载,如果没找到返回null

load是延迟加载,如果没找到报错

44、Html注释和jsp注释分别如何写,那个在客户端看不到(隐式的)?哪个效率高

Html注释:<!-- html注释,可以看到,效率低  -->

Jsp注释:<%-- jsp注释,客户端看不到,隐式效率高--%>

45、对xml文件进行限制有哪两种方式?

Dtd------------.dtd

Schema-------.xsd(限制要求更高)

46、Struts2中自定义类型转换器需要实现的接口、类分别是什么?

TypeConverter  -----------接口

StrutsTypeConverter----------类

47、Sql中常用的聚合函数有那些,分别是干什么的

Sum 求和

Avg  平均

Max  最大

Min   最小

Count  统计行数

Select count(*) from 表

Select count(列) from 表  ---如果该列值存在为null,则不参与统计

48、下列代码运行结果是什么,为什么

tx = session.beginTransaction();

Customer c1=(Customer)session.load(Customer.class,new Long(1));

Customer c2=(Customer)session.load(Customer.class,new Long(1));

System.out.println(c1==c2);

tx.commit();

session.close();

true,第一次load会放入缓存中,第二次直接从缓存中取

49、Sql中排序时升序和降序的关键字分别是什么?

Asc----升序(默认)

Desc  --降序

50、SQL中的索引有什么用?在哪些列上适合建立索引?

索引主要是为了加快查询速度。

1)该列警察被使用、排序、分组等。

2)该列不经常被修改

3)该列重复值不多

索引:

聚集索引,效率高,一个表中只能一个(主键就是聚集索引),索引的顺序和数据的物理顺序一致(拼音目录)

非聚集索引,效率低,一个表中可以多个(最多255个),索引的顺序和数据的顺序不一致(偏旁部首目录)

51、子查询如果用 > < = 引出来,那么子查询只能查询出多少值?如果用in 引出来,那么查询出多少值?

单个值   select * from 表 where 列 = (单个值查询)

In的话,可以多个,但是只能单列

52、sql中事务的作用是什么?Sql中事务用那些语句构成

事务是为了保证某个功能下的多条sql要么都成功,要么都取消

Begin tran --开始事物

Commit tran --提交事务

Rollback tran –回滚事务

53、存储过程的创建语法是什么,参数可以是什么类型,如何调用

Create proc up_名字(

参数列表

)

As

Begin

--存储过程主体

end

参数可以是输入参数、输出参数(要用output声明)

调用存储过程时,使用 exec ,如:

declare @flag int  --声明输出参数

exec up_过程名 参数1,参数2,@flag output

print @flag ---上面的存储过程会将输出参数中进行赋值,作为返回值

54、sql中的变量分类,举例

Sql中变量分为全局变量和局部变量

全局变量,只能读取数据,不能声明,如:

@@error  上个语句错误号

@@identity  最后次插入标识列的值,如果没有,则为null

@@rowcount  上个增删改语句影响的行数

局部变量,自己声明的:

Declare @name varchar(30)

Set @name = ‘jack’

55、关于having

Select count(*) from 考试信息表

查询所有人考试的总次数

按人来查询每个人的总次数

Select count(*) from 考试信息表 group by 学生ID

查询考试次数在2次以上的人的id

Select 学生ID from 考试信息表 group by 学生ID having count(*) > 2

56、重载和重写

重载与重写的区别

 
 
 

序号

重载

重写

 
 

1

方法的名称相同,参数个数和类型不同

方法名称、参数列表和返回值类型与父亲完全相同

 
 

2

不要求方法的访问范围

子类中提供的重写方法的访问范围不能小于父类

 
 

3

应用在一个类的内部

应用在父子类继承关系中

 
 

重载:同一个类中,相同的方法名,不同的参数

重写:子类重写父类的方法,方法名、返回类型,参数都一样

56、HashMap

HashMap不能保证其中元素的顺序,HashMap的key和value都能为null ,HashMap使用键/值的形式保存数据,HashMap通过get(key)获取对应的值

57、泛型集合

泛型可以解决数据类型安全的问题,泛型消除了类型强制转换,泛型集合的效率比普通集合更高

57、抽象类和接口

抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承。抽象类可以没有构造方法,但是一个类却可以实现多个接口;在抽象类中可以没有抽象方法,抽象类不能被实例化; 实现抽象类和接口的类必须实现其中的所有抽象方法,除非它也是抽象类。接口中的方法都不能被实现,必须在子类中重写;接口中不能有构造方法;接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值

58、面向对象的方法:继承、封装、多态

59、Java构造方法

构造方法没有返回类型;构造方法是类的一种特殊方法,它的方法名必须与类名相同; 构造方法的主要作用是完成对类的对象的初始化工作

60、java中的数据类型

不会改变的是:基本数据类型(8个),String类型

基本数据类型(8个):Int double float long char boolean  short  byte

61、java的修饰符:Private -- default ---protected---public

61、在浏览器输入http://localhost:8080/news/main/list.jsp,分别执行以代码后,打印结果

System.out.println(request.getContextPath());   打印结果:/news

System.out.println(request.getServletPath());   打印结果:/main/list.jsp

System.out.println(request.getRequestURL());

打印结果:http://localhost:8080/news/main/list.jsp

System.out.println(request.getRequestURI());   打印结果:/news/main/list.jsp

URL:带http的全路径

URI:项目名/页面名

62、WEB

Web服务的数据传输标准是XML

Webservice通信协议:SOAP

63、XMLHttpRequest的readyState属性值:

0未初始化,刚创建时

1准备发送

2send方法调用,已发送

3正在接收,未完毕

4已经响应完毕

Status的状态信息为200成功、404资源未找到、500服务器报错

 

 

最新文章

  1. Vue基本应用
  2. [LeetCode] Binary Tree Level Order Traversal II 二叉树层序遍历之二
  3. 时间--cd //lastyear
  4. EF6配合MySQL或MSSQL(CodeFirst模式)配置指引
  5. 【原】Gradle调用shell脚本和python脚本并传参
  6. GridControl
  7. 删除下标为n的数组值
  8. Human Gene Functions
  9. FastReport处理空日期
  10. 《OD大数据实战》MapReduce实战
  11. VS的启动方式
  12. 基于Cloudera Manager5配置HIVE压缩
  13. JSON 数据的系统解析
  14. Android图表日历控件组件
  15. 使用NeatUpload控件实现ASP.NET大文件上传
  16. JAVA基础复习与总结&lt;六&gt; 数组_容器_泛型
  17. java框架之springmvc
  18. Source map error
  19. ruby-from-other-languages
  20. 百度浏览器 UserAgent

热门文章

  1. 工作总结 a标签 &lt;a href=&quot;/meetingtheme&quot;&gt;Back to List&lt;/a&gt; 返回上一级 指向 控制器 默认Index @Html.ActionLink(&quot;Edit59&quot;, &quot;Edit&quot;, new { id = item.ID }) 默认当前控制器
  2. VMware Workstation 永久许可证密钥
  3. leetCode 61.Rotate List (旋转链表) 解题思路和方法
  4. Iconfot阿里妈妈-css高级应用
  5. HDFS源码分析心跳汇报之DataNode注册
  6. OpenCV 中的三大数据类型:IplImage 类型
  7. IOS数组按中文关键字以字母序排序
  8. Python中的注解“@” 、Java 注解
  9. 【BZOJ2476】战场的数目 矩阵乘法
  10. 【BZOJ1604】[Usaco2008 Open]Cow Neighborhoods 奶牛的邻居 Treap+并查集