1.什么是B/S技术?B/S技术与C/S技术的区别?
B/S 指的是 Browser/Server ; C/S 指的是Client/Server
区别:
1、
B/S最大优势为客户端免维护,适用于用户群庞大,或客户需求经长发生变化的情况。
C/S功能强大,可以减轻服务器端压力,如果用户的需求特别复杂,用C/S。
2、
Client/Server是建立在局域网的基础上的.
Browser/Server是建立在广域网的基础上的.
3、硬件环境不同:
C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.
B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行
4、对安全要求不同
C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.
B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群.
5、对程序架构不同
C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.
B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟.
6、软件重用不同
C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.
B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子
7、系统维护不同
C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统
B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
8、处理问题不同
C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统
B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.
9、用户接口不同
C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高
B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.
10、信息流不同
C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低
B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更象交易中心
2.什么是URL?URL由几部分组成?
URL是Uniform Resource Location的缩写,译为“统一资源定位符”
第一部分是协议(或称为服务方式);
第二部分是存有该资源的主机IP地址(有时也包括端口号);
第三部分是主机资源的具体地址。,如目录和文件名等。
3.JSP注释分为几种情况?有何区别?
在JSP中的注释一共分为两种注释:
· 显式注释:在HTML中存在注释“<!--注释内容 -->”
· 隐式注释:可以使用java中的“//”、“/*….*/”,以及JSP中自己的注释:“<%-- 注释内容 --%>”
所谓是显式或隐式实际上就是指在查看源文件的时候的显示的代码。
<%-- JSP中的注释,看不见 --%>
<%
// 注释,看不见
/*
注释,看不见
*/
%>
<!--显式注释-->
指令、注释、脚本、声明、表达式、静态内容
5.JSP是如何响应客户端的请求并向客户端输出信息?
6.什么是重定向?什么是转发?区别是什么?
重定向response.sendRedirect("success.jsp");
转发:request.getRequestDispatcher("success.jsp").forward(request,response);
1.转发在服务器端完成的;重定向是在客户端完成的
2.转发的速度快;重定向速度慢
3.转发的是同一次请求;重定向是两次不同请求
4.转发不会执行转发后的代码;重定向会执行重定向之后的代码
5.转发地址栏没有变化;重定向地址栏有变化
6.转发必须是在同一台服务器下完成;重定向可以在不同的服务器下完成 1、概念和定义
1.1 JSP内置对象:
JSP 内置对象是 Web 容器创建的一组对象,可以直接在JSP页面使用,无需使用“new”获取实例,它的名称是 JSP 的保留字。常用的JSP 内置对象有out、request、response、session、application。
1.2out:
out对象用于向客户端输出数据,它的常用方法是print(),用于在页面中打印出字符串信息。
需求:
在页面上打印hello ACCP。
关键代码:
<%
out.print(" hello ACCP" );
%>
request:
request对象主要用于处理客户端请求。
需求:
编程实现如下图示在页面输入ACCP学员的注册提交后,显示学员输入的数据。
关键代码:
创建reginput.jsp页面用于输入注册信息,并将checkbox选项命名为相同的名字。
<td><input type="checkbox" name="channel" value="报刊">报刊
<input type="checkbox" name="channel" value="网络">网络
<input type="checkbox" name="channel" value="朋友推荐">朋友推荐
<input type="checkbox" name="channel" value="电视">电视</td>
创建reginfo.jsp页面用于显示注册信息。
<%
// 在调用request.getParameter()之前指定每个请求的编码,可以解决中文乱码问题
request.setCharacterEncoding("GBK");
// 根据页面表单元素名称获取页面提交数据
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
// 获取一个页面表单组件对应多个值时的用户的请求数据
String[] channels = request.getParameterValues("channel");
%>
用户名:<%=name%>
密码:<%=pwd%>
你从哪里知道ACCP培训:
<%
if (channels != null) {
for (int i = 0; i < channels.length; i++) {
out.println(channels+" ");
}
}
%>
1.3 response:
response对象用于响应客户请求并向客户端输出信息。
需求:
在首页面(input.jsp)上输入用户名、密码,提交至input2.jsp进行处理,如果输入的用户名、密码都是sa,跳转至欢迎页面(welcome.jsp)。首页面如下图示:
关键代码:
input.jsp页面关键代码如下:
<form name="form1" method=post action="input2.jsp">
input2.jsp页面关键代码如下:
<%
request.setCharacterEncoding("GBK");
String name = request.getParameter("userName");
String pwd = request.getParameter("pwd");
if(name.equals("sa")&&pwd.equals("sa")){
response.sendRedirect("welcome.jsp");
}
%>
7.JSP 如何实现数据库访问?请写出响应步骤。
- 选择数据库:加载数据库驱动
- 连接数据库
- 创建数据库查询
- 获取查询结果
- 关闭查询和连接
public class Demo1 {
public static void main(String[] args) {
insert("Tom", "1", "Java96");
}
public static void insert(String name, String code, String clazz) {
Connection conn = null;
PreparedStatement ps = null;
String url = "jdbc:mysql://localhost:3306/demo2";
String user = "root";
String password = "123456";
try {
// 1. 选择数据库:加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 2. 连接数据库
conn = DriverManager.getConnection(url, user, password);
// 3. 创建数据库查询
ps = conn.prepareStatement("INSERT1 INTO demo1(name,code,clazz) VALUES(?,?,?)");
ps.setString(1, name);
ps.setString(2, code);
ps.setString(3, clazz);
// 4. 获取查询结果
int i = ps.executeUpdate();
System.out.println("一共执行了" + i + "条");
} catch (ClassNotFoundException e) {
System.out.println("数据库驱动没有找到");
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 5. 关闭查询和连接
try {
if (null != ps) {
ps.close();
}
if (null != conn) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
8.0.632的数据类型是?
double类型
9.abstract class和interface有什么区别?