1、通常用()建立InputStream对象,表示从标准输入中获取数据,用()建立OutputStream对象,表示输出到标准输出设备中。html
答:System.in 和 System.out 是java中的标准输入输出流,通常状况下表明从控制台输入和输出到控制台java
2、在Struts框架中若是要使用Validation做验证的话,须要使用如下哪一个Form?mysql
A、ActionForm B、ValidatorActionForm C、ValidatorForm D、DynaValidatorActionFormsql
答:D---能够看下 使用Validation框架验证数据数据库
3、jsp的内置对象有哪九个?服务器
答:JSP内置对象有:
1.request对象:客户端的请求信息被封装在request对象中,经过它才能了解到客户的需求,而后作出响应。它是HttpServletRequest类的实例。
2.response对象:response对象包含了响应客户请求的有关信息,但在JSP中不多直接用到它。它是HttpServletResponse类的实例。
3.session对象:session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开链接为止。它是HttpSession类的实例.
4.out对象:out对象是JspWriter类的实例,是向客户端输出内容经常使用的对象
5.page对象:page对象就是指向当前JSP页面自己,有点象类中的this指针,它是java.lang.Object类的实例
6.application对象:application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的先后链接或不一样用户之间的链接中,能够对此对象的同一属性进行操做;在任何地方对此对象属性的操做,都将影响到其余用户对此的访问。服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。
7.exception对象:exception对象是一个例外对象,当一个页面在运行过程当中发生了例外,就产生这个对象。若是一个JSP页面要应用此对象,就必须把isErrorPage设为true,不然没法编译。他其实是java.lang.Throwable的对象
8.pageContext对象:pageContext对象提供了对JSP页面内全部的对象及名字空间的访问,也就是说他能够访问到本页所在的SESSION,也能够取本页面所在的application的某一属性值,他至关于页面中全部功能的集大成者,它的本 类名也叫pageContext。
9.config对象:config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(经过属性名和属性值构成)以及服务器的有关信息(经过传递一个ServletContext对象)网络
4、jsp页面的page 各个属性及功能session
答:page经常使用指令表:
1.language=”ScriptLanguage” :指定JSP Container用什么语言来编译,目前只支持JAVA语言。默认为JAVA
2.extends=”className” :定义此JSP网页产生的Servlet是继承哪一个,通常不须要设置,在默认状况下,jsp页面默认的父类是HttpJspBase。
3.import=”importList” :定义此JSP网页要使用哪些Java API,好比 <%@page import="java.sql.*"% >
4.session=”true|false” :决定此页面是否使用session对象。默认为true
5.buffer=”none|size in kb” :决定输出流(Input stream)是否又缓冲区。默认为8kb
6.autoFlush=”true|false” :决定输出流的缓冲区慢了后是否须要自动清除,缓冲区慢了后会产生异常错误(Exception).默认为true
7.isThreadSafe=”true|false” :是否支持线程。默认为true
八、errorPage=”url” :若是此页发生异常,网页会从新指向一个url,注:存在 errorPage 属性时,isErrorPage 是必须的属性值且必定为 false
九、isErrorPage=”true|false” :表示此页面是否为错误处理页面。默认为false,此时不能使用exception对象--若为error.jsp 页面必定要有isErrorPage 属性且值为 true
十、contentType=”text/html;charset=gb2312” :表示MIME类型和JSP的编码方式。笔者使用例左
十一、pageEncoding=”ISO-8859-1” :编码方式。(笔者已经加入使用的编码)
十二、isELLgnored=”true|false” :表示是否在此JSP页面中EL表达式。true则忽略,反之false则支持。默认为false mybatis
5、form标签里面的 enctype属性--通常在上传文件时候才使用,普通默认不用写并发
首先知道enctype这个属性管理的是表单的MIME编码。共有三个值可选:
一、application/x-www-form-urlencoded
二、multipart/form-data
三、text/plain
其中application/x-www-form-urlencoded是默认值,做用是设置表单传输的编码。例如咱们在AJAX中见过xmlHttp.setRequestHeader("Content-Type","application/x-www-form- urlencoded");若是不写会报错的,可是在html的form表单里是能够不写enctype=application/x-www-form-urlencoded,由于默认的HTML表单就是这种传输编码类型的。
而multipart/form-data是用来制定传输数据的特殊类型的,主要就是咱们上传的非文本的内容,好比图片或是是mp3等等。
text/plain是纯文本传输的意思,在发邮件的时候要设置这种编码类型,不然会出现接收时编码混乱的问题。网络上常常拿text/plain和 text/html作比较,其实这两个很好区分,前者用来传输纯文本文件,后者则是传递html代码的编码类型,在发送头文件时才用得上。①和③都不能用于上传文件,只有multipart/form-data才能完整的传递文件数据
能够参考: HTML <form> 标签的 enctype 属性 from表单中enctype属性 表单form的enctype="multipart/form-data"体会
6、mybatis插入一条数据返回id(注:高并发的时候不支持,而且须要数据库里面表为自增类型)
<insert id="save" parameterType="com.entity.Teacher" useGeneratedKeys="true" >
<selectKey keyProperty="id" resultType="int" order="AFTER" >
SELECT LAST_INSERT_ID() AS VALUE
</selectKey>
insert into teacher(name,phone)
values(#{name},#{phone})
</insert> <!-- 上面的selectKey放在上面 insert 语句下面没有影响 -->
或者
<insert id="save" parameterType="com.entity.Teacher" useGeneratedKeys="true" >
insert into teacher(id,name,phone)
values(#{id},#{name},#{phone})
<selectKey keyProperty="id" resultType="int" order="AFTER" >
SELECT LAST_INSERT_ID() AS VALUE
</selectKey>
</insert> <!-- 注意:这时间千万不能插入 id的值,不然返回的id 为 0 -->
或者: 在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名!有这两个属性的时候不用写上面的selectKey---
<insert id="insert" parameterType="Spares"
useGeneratedKeys="true" keyProperty="id">
insert into spares(spares_id,spares_name,
spares_type_id,spares_spec)
values(#{id},#{name},#{typeId},#{spec})
</insert>
能够参考下 mysql中的last_insert_id()