资源描述
1.什么是C/S结构?什么是B/S结构?他们各有那些优缺点?
C/S是Client/Server的缩写,即客户端/服务器结构。
B/S是Brower/Server的缩写,即浏览器/服务器结构。
C/S结构
B/S结构
开发和维护成本方面
对于不同客户端要开发不同的程序,而且软件的安装、调试和升级均需要在所有的客户机上进行
则不必在客户端进行安装及维护
客户端负载
应用程序的功能越复杂,客户端程序也就越庞大
把事务处理逻辑部分交给了服务器,,客户端只需要进行显示
安全性
高
低
2.举一些常见的C/S结构和B/S结构的例子。
C/S:QQ、网络游戏、以及各种客户端软件
B/S:百度搜索网站、校园网、优酷等网页
3.Web客户端技术有哪些?服务器技术有哪些?
客户端技术:HTML语言,CSS ,Flash, JavaScript
服务器技术:CGI,ASP,PHP,ASP.NET,JSP
1.HTML是由哪几部分组成的?
<html>标记,<head>标记,<title>标记,<body>标记
2.HTML有哪些常用标记?都有什么作用?
<br>换行标记,换行
<p>段落标记,分段
<h1>标题标记,设置标题格式
<center>居中标记,居中格式
表格标记<table>,创建表格
3. <input>标记有哪几种输入类型?
text
password
file
radio
checkbox
4.什么是CSS样式表?CSS样式表有哪些效果?
CSS是W3C协会为弥补HTML在显示属性设定上的不足而制定的一套扩展样式标准,它的全称是“Cascading Style Sheet”。CSS标准中重新定义了HTML中原来的文字显示样式,增加了一些新概念,如类、层等,可以对文字重叠、定位等。
5.如何为一个HTML页面添加CSS效果?
行内样式
包含内嵌样式表
链接式样式表
1.什么是JDK?JDK有哪些控制台命令?
Java的JDK又称Java SE(以前称J2SE),是JAVA虚拟机的核心文件。
Javac 将java文件编译成class文件
Java 运行class文件
Java –jar 运行jar文件
2.如何运行Eclipse中的项目?
单击“”按钮,或者鼠标右击项目,选择“Run as…”并选择运行方式。
3.如何Eclipse配置服务器?
(1)在Eclipse工作台的其他视图中,选中“服务器”视图,在该视图的空白区域单击鼠标右键,在弹出的快捷菜单中选择“New”/“Server”菜单项,将打开“新建服务器”对话框,在该对话框中,展开Apache节点,选中该节点下的“Tomcat v7.0 服务器”子节点,(当然也可以选择其他版本的服务器)其他采用默认。
(2)单击“Next”按钮,将打开指定Tomcat服务器安装路径的对话框,单击“浏览(Browse)”按钮,选择Tomcat的安装路径,其他采用默认。
(3)单击“完成”按钮,完成Tomcat服务器的配置。
1.什么是JSP?
JSP(Java Server Pages)是由Sun公司倡导、许多公司参与而建立的动态网页技术标准。它在HTML代码中嵌入Java代码片段(Scriptlet)和JSP标签,构成了JSP网页。在接收到用户请求时,服务器会处理Java代码片段,然后生成处理结果的HTML页面返回给客户端,客户端的浏览器将呈现最终页面效果。
2.JSP有哪些指令标签?
page指令, include指令, taglib指令
3.如何在JSP中运行Java程序?
嵌入Java代码,Java代码片段被包含在“<%”和“%>”标记之间。可以编写单行或多行的Java代码,语句以“;”结尾,其编写格式与Java类代码格式相同。
4.什么是request对象?什么是response对象?什么是session对象?是什么application对象?这些对象有哪些共同点和不同点?
request对象是javax.servlet.http.HttpServletRequest类型的对象。该对象代表了客户端的请求信息,主要用于接收通过HTTP协议传送到服务器端的数据(包括头信息、系统信息、请求方式以及请求参数等)。
response代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。
session对象是由服务器自动创建的与用户请求相关的对象。
application对象可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。
相同点:request和response都是处理客户端请求的,session与application都可以保存信息。
不同点:request是客户端请求,response是服务器对客户端的相应。session与application生存周期不同。
1.web.xml文件是干什么用的?
web.xml是整个web项目的核心配置文件。
2.Servlet有哪些接口?这些接口都有什么作用?
Servlet接口:Servlet的运行需要Servlet容器的支持,Servlet容器通过调用Servlet对象提供了标准的API接口,对请求进行处理。
ServletConfig接口:ServletConfig接口位于javax.servlet包中,它封装了Servlet的配置信息,在Servlet初始化期间被传递。
HttpServletRequest接口:返回客户端请求
HttpServletResponse接口:相应客户端请求
GenericServlet类:实现了Servlet接口,简化继承Servlet接口的操作
HttpServlet类:.HttpServlet类对GenericServlet类进行了扩展,为HTTP请求的处理提供了灵活的方法。
3.如何指定项目默认页面?
在web.xml中修改或添加以下内容:
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
4.如何使用过滤器?过滤器中有哪些方法?他们运行的顺序是什么?
在web.xml作如下配置:
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>com.lyq.util.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
过滤器方法:
public String getFilterName() 返回过滤器的名称
public String getInitParameter(String name) 返回初始化名称为name的参数值
public Enumeration getInitParameterNames() 返回所有初始化参数名的枚举集合
public ServletContext getServletContext() 返回Servlet的上下文对象
运行顺序:
init > doFilter > destroy
1.什么是Javascript?Javascript与Java是什么关系?
JavaScript是一种基于对象和事件驱动并具有安全性能的解释型脚本语言,在Web应用中得到了非常广泛的应用。它不需要进行编译,而是直接嵌入在HTTP页面中,把静态页面转变成支持用户交互并响应应用事件的动态页面。在Java Web程序中,经常应用JavaScript进行数据验证、控制浏览器以及生成时钟、日历和时间戳文档等。
虽然JavaScript与Java的名字中都有Java,但是它们之间除了语法上有一些相似之处外,两者毫不相干。JavaScript与Java的区别主要表现在以下几个方面:
1.基于对象和面向对象
JavaScript是一种基于对象和事件驱动的脚本语言,它本身提供了非常丰富的内部对象供设计人员使用;而Java是一种真正的面向对象的语言,即使是开发简单的程序,也必须设计对象。
2.解释和编译
JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不需经过编译,而是将文本格式的字符代码发送给客户端由浏览器解释执行;而Java的源代码在传递到客户端执行之前,必须经过编译才可以执行。
3.弱变量和强变量
JavaScript采用弱变量,即变量在使用前无须声明,解释器在运行时将检查其数据类型;而Java则使用强类型变量检查,即所有变量在编译之前必须声明。
2.Javascript脚本如何调用?Javascript有哪些常用的属性和方法?
在页面中直接嵌入JavaScript, 链接外部JavaScript
常用属性:
document
defaultStatus
frames
location
length
history
name
status
top
parent
opener
closed
self
screen
navigator
常用方法:
onabort()
onblur()
onchange()
onclick()
ondblclick()
onerror()
onfocus()
onkeydown()
onkeypress()
onkeyup()
onload()
3.如何使用Javascript给一个按钮添加事件?
首先在script标签中编写函数,然后在<input type=”butteon” onclick=””>的onclick属性中调用编写好的方法。
4.什么是Ajax?如何用Ajax实时更新前台页面的数据?
Ajax是Asynchronous JavaScript and XML的缩写,意思是异步的JavaScript与XML。Ajax并不是一门新的语言或技术,它是JavaScript、XML、CSS、DOM等多种已有技术的组合,可以实现客户端的异步请求操作,进而在不需要刷新页面的情况下与服务器进行通信,减少了用户的等待时间,减轻了服务器和带宽的负担,提供更好的服务响应。
Ajax可以通过XMLHttpRequest对象实现采用异步方式在后台发送请求。
(1)初始化XMLHttpRequest对象。为了提高程序的兼容性,需要创建一个跨浏览器的XMLHttpRequest对象,并且判断XMLHttpRequest对象的实例是否成功,如果不成功,则给予提示。
(2)为XMLHttpRequest对象指定一个回调函数,用于对返回结果进行处理。
(3)创建一个与服务器的连接。在创建时,需要指定发送请求的方式(即GET或POST),以及设置是否采用异步方式发送请求。
(4)向服务器发送请求。利用XMLHttpRequest对象的send()方法可以实现向服务器发送请求,该方法需要传递一个参数,如果发送的是GET请求,可以将该参数设置为null;如果发送的是POST请求,可以通过该参数指定要发送的请求参数。
5.什么是jQuery?$(document).ready()是干什么用的?
jQuery是一套简洁、快速、灵活的JavaScript脚本库,它是由John Resig于2006年创建的,它帮助我们简化了JavaScript代码。JavaScript脚本库类似于Java的类库,我们将一些工具方法或对象方法封装在类库中,方便用户使用。
$(document).ready()是jQuery的根方法,只有在跟方法中编写的jQuery代码才能正确执行。
1.简述JDBC连接数据库的基本步骤。
(1)加载数据库驱动
(2)编写数据库连接地址和账号密码
(3)通过驱动程序管理器连接数据库,并返回Connection对象
2.执行动态SQL语句的接口是什么?
Statement和PreparedStatement
3.JDBC中提供的两种实现数据查询的方法分别是什么?
使用Statement查询
使用PrepareStatement查询
4.Statement类中的两个方法:executeQuery ()和executeUpdate(),两者的区别是什么?
executeQuery ()是执行指定的静态SELECT语句,并返回一个永远不能为null的ResultSet实例。
executeUpdate()执行指定的静态INSERT、UPDATE或DELETE语句,并返回一个int型数值,为同步更新记录的条数。
1.如何让log4j在控制台输出日志内容?
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.rootLogger=WARN,console
2.如何让log4j在指定的文件目录生成日志文件?
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=c:/log.htm
log4j.appender.file.MaxFileSize=10KB
log4j.appender.file.MaxBackupIndex=3
1.MVC模式由哪几部分组成?
MVC(Model-View-Controller 模型-视图-控制器)是一个存在于服务器表达层的模型。在MVC经典架构中,强制性地把应用程序的输入、处理和输出分开,将程序分成3个核心模块——模型、视图、控制器。
2. 简述映射器,适配器,前端控制器,视图解析器。
映射器根据DispatcherServlet传递过来的url地址,找到对应的Handler处理器。
适配器按照要求的规则实现Controller控制器接口。
前端控制器DispatcherServlet负责在最前面分发用户的请求,处理一系列核心逻辑。
视图解析器ViewResolver负责在最后面呈现含有反馈数据的页面信息。
3.简述WEB-INF目录下的资源有什么特点,需要如何访问。
放在WEB-INF下的资源是无法通过url访问到的,原因是WEB-INF目录下是有JavaWeb保护机制的(该目录下的文件不可以直接被访问),所以原则上是可以通过直接访问静态资源的方式获得想要的文件,想要获得WEB-INF下的资源文件,需要在SpringMVC.xml配置文件中配置静态资源的解析路径,将要加载的静态资源的URI路径配置在标签中,然后配置该URI映射的真实资源路径,代码如下:
<!-- 配置静态资源加载 -->
<mvc:resources location="/WEB-INF/jsp" mapping="/jsp/**"/>
<mvc:resources location="/WEB-INF/js" mapping="/js/**"/>
<mvc:resources location="/WEB-INF/css" mapping="/css/**"/>
<mvc:resources location="/WEB-INF/img" mapping="/img/**"/>
当类加载配置文件SpringMVC.xml中配置了静态资源文件的解析路径后,前端控制器就会根据请求URL种的具体子路径来映射出静态资源的真实路径,然后为前端反馈真实的静态资源信息。
4.SpringMVC的拦截器有哪些方法?这些方法有什么特点?
在SpringMVC中定义一个拦截器有两种方法:
一种是实现HandlerInterceptor接口,或者继承实现了HandlerInterceptor接口的类。
另一种是实现Spring的WebRequestInterceptor接口,或者基层实现了WebRequestInterceptor的类。
1.如何配置MyBatis的数据库连接?
首先创建一个xml文件名为SqlMapConfig.xml,然后在XML的头部加上如下声明信息:
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
首先我们写一对<configuration>标签,然后在其中先写一对<setting>标签,用来指定日志输出格式logImpl为LOG4J。
然后就是配置数据源了,在<environments>标签对中,写一对<environment>标签,这个标签代表数据库配置环境,在<environment>标签对中,可以用<transactionManager>标签配置MyBatis的事务控制,而真正的数据库配置信息还是用<dataSource>标签对,在其中用<property>标签来配置每一个属性。
最终SqlMapConfig.xml配置文件完成内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test?characherEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
</configuration>
2.MyBatis使用接口编程的方式(Mapper接口)和不用接口编程的方式有何区别?
使用接口的方式,我们就不用使用session.selectOne方法了,而是使用getMapper()方法,将接口传递进去,然后用这个接口调用接口的方法即可;而不使用接口编程方式,就需要使用session.selectOne方法调用Mapper文件里面的SQL语句,最后输出到控制台上。
3.MyBatis的SQL映射文件中mapper标签中的namespace属性有何作用?
namespace是用于绑定Dao接口的,即面向接口编程。当namespace绑定接口后,可以不用写接口实现类,MyBatis会通过该绑定自动找到对应要执行的SQL语句。
4.如果需要给实体类起别名,我们应该在哪个配置文件中用什么标签配置?
在MyBatis配置文件中配置typeAliases标签。
5.MyBatis的association和collection各有什么作用?
表和表之间的关系是一对一的时候,使用association。
表和表之间的关系是一对多的时候,使用collection。
1.什么是IoC注入?如何使用Spring框架进行注入?
IoC将创建实例的任务交给IoC容器,这样开发应用代码时只需要直接使用类的实例,这就是IoC控制反转。通常用一个所谓的好莱坞原则(Don't call me. I will call you,请不要给我打电话,我会打给你)来比喻这种控制反转的关系。Martin Fowler曾专门写了一篇文章“Inversion of Control Containers and the Dependency Injection pattern”讨论控制反转这个概念,并提出一个更为准确的概念,即“依赖注入”。
Spring通过配置文件,配置Bean、 Setter注入、 构造器注入
2.Spring如何加载配置文件?配置文件有哪些标签?
通过这条语句加载配置文件
ApplicationContext context=new ClassPathXmlApplicationContext(String config Location);
<bean>javabean标签
<property>属性标签
<map>键值类集合标签
<set>集合类标签
3.什么是AOP?
面向切面编程
4.Spring框架有为项目开发提供了哪些优势?
降低代码的耦合性
展开阅读全文